userdao.java

来自「网站购物车经典是例子」· Java 代码 · 共 53 行

JAVA
53
字号
package onlyfun.caterpillar.model;

import java.util.List;
import org.springframework.orm.hibernate3.HibernateTemplate;


//在Spring在线书签中,使用Spring对Hibernate的封装来运用Hibernate,这里使用HibernateTemplate对象来进行各种数据存取,查询,
//更新操作,HibernateTemplate对象将使用Spring的依赖注入功能来注入实例,稍后可以在配置文件model-config.xml中进行相关的设置...
//此为IUserDAO接口的实现类
public class UserDAO implements IUserDAO {
	
	
	//Spring运用了Template-Callback模式,将固定的流程编写于Template类之中(例如:HibernateTemplate类),
	//HibernateTemplate简化了程序的编写
	private HibernateTemplate hibernateTemplate;

	public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
		this.hibernateTemplate = hibernateTemplate;
	}

	public void insert(User user) {
		hibernateTemplate.saveOrUpdate(user);

	}
	
	 public User findByName(String username) {
		 
	    	if(username==null||"".equals(username)) {
	    		return null;
	    	}
	    	
	    	// 在以下的find()方法中,看到的是Hibernate Query Language,简称HQL,是Hibernate鼓励使用的查询语言
			// user为User类的别名,user.username中的username为User中的属性
	    	List users = hibernateTemplate.find("from User user where user.username='" + username + "'");
	        
	     // 返回的类型必须为User类型
	    	return (User)users.get(0);
	    }
	 

	public User findByEmail(String email) {
		
        List users = hibernateTemplate.find("from User user where user.email='" + email + "'");
        
        return (User)users.get(0);
    }

	public void update(User user) {
		hibernateTemplate.update(user);
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?