spring整合hibernate 使用hibernatetemplate做查询
首先在spring的applicationContext.xml里配置hibernate的配置和hibernatetemplate。
<bean id="hibernateTemplete" class="org.springframework.orm.hibernate3.HibernateTemplate">
<propertyname="sessionFactory"ref="sessionFactory"></property>
</bean>
<beanid="operation"class="domain.Operation"><!--Operation是一个Dao类-->
<propertyname="hibernateTemplate"ref="hibernateTemplete"/>
</bean>添加记录
public void save(Test t){
this.getHibernateTemplate().save(t);
System.out.println("456456");
}
//普通的查询
publicList<String>selectName(intid){
List<String>list=this.getHibernateTemplate().find("selectt.namefromTesttwheret.id=?",id);
returnlist;
}
//登录验证可以用下面一种方法。
publicbooleanselectNameById(){
Listl=this.getHibernateTemplate().find("fromTesttwheret.id=?andt.name=?",newObject[]{2,"nanren"});
if(l!=null){
System.out.println("dsaf");
returntrue;
}
returnfalse;
}
//更新表的字段
publicvoidupdate(Stringname,intid){
Testtest=(Test)hibernateTemplate.get(Test.class,id);
test.setName(name);
this.getHibernateTemplate().update(test);
}
//删除表的字段方法一
publicvoiddeleteById(intid){
List<Object>list=this.getHibernateTemplate().find("fromTesttwhereid=?",id);
this.getHibernateTemplate().deleteAll(list);
}
//删除表的字段方法二
publicvoiddeleteByD(intid){
Testtest=(Test)hibernateTemplate.load(Test.class,id);
this.getHibernateTemplate().delete(test);
}POJO是Test有两个属性id,name.
以上方法在本地都测试通过。