📄 usermanagerimpl.java
字号:
package com.bjsxt.messages.managers;
import java.util.Date;
import java.util.List;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.bjsxt.messages.MessageException;
import com.bjsxt.messages.model.User;
public class UserManagerImpl extends HibernateDaoSupport implements UserManager {
public void createUser(User user) {
user.setCreateTime(new Date());
getHibernateTemplate().save(user);
}
public void deleteUsers(int[] ids) {
if(ids == null || ids.length == 0){
return;
}
for(int i=0; i<ids.length; i++){
getHibernateTemplate().delete(
getHibernateTemplate().load(User.class, ids[i])
);
}
}
public List<User> findAll(int currentUserId) {
//HibernateTemplate的find方法,封装了session.createQuery()的操作,我们可以直接调用find方法,
//如果传递的HQL语句带动态参数的话,可以直接在第二个参数中传递这些值进去就可以了!
return getHibernateTemplate().find(
"from User u where u.id <> ? ", //第一个参数是HQL语句
currentUserId //第二个参数是HQL语句中需要传入的参数值
);
}
public User findUserById(int userId) {
return (User)getHibernateTemplate().load(User.class, userId);
}
public User searchUser(String name) {
//对于那些不能通过HibernateTemplate来操作的数据,我们可以通过调用getSession()来使用Hibernate底层
//API来进行操作
return (User)getSession()
.createQuery("from User where name = ?")
.setParameter(0, name)
.uniqueResult();
}
public User validate(String username, String password)
throws MessageException {
List users = getHibernateTemplate().find("from User where account = ?",username);
if(users == null || users.size() == 0){
throw new MessageException("login.error.user_not_found","没有找到相应得用户");
}
User user = (User)users.get(0);
if(!user.getPassword().equals(password)){
throw new MessageException("login.error.invalid_password","输入密码错误");
}
return user;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -