📄 personoperater.java
字号:
package org.lxh.hibernate.demo01;
import java.util.List;
import java.util.Iterator;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
/***
*
* 操作Hibernate 的类,增加,修改,删除,按ID查询,模糊查询,查询全部
* @author zwj
*
*/
public class PersonOperater {
//在Hibernate中,所有的操作都是通过Session完成
//此Session不同于Jsp中的Session
private Session session=null;
//在构造方法中实例化Session对象
public PersonOperater()
{
//找到Hibernate配置
Configuration config =new Configuration().configure();
//从配置中取出SessionFactory
SessionFactory factory=config.buildSessionFactory();
//从SessionFactory取出一个Session
this.session=factory.openSession();
}
//所有操作通过Session
//向数据库中插入数据
public void insert(Person p){
Transaction tran=this.session.beginTransaction();
this.session.save(p);
//提交事务
tran.commit();
}
//修改
public void update(Person p){
Transaction tran=this.session.beginTransaction();
this.session.update(p);
//提交事务
tran.commit();
}
//按ID查询,使用HQL语句
public Person queryById(String id)
{
Person p=null;
String hql="FROM Person as p where p.id=?";
Query q=this.session.createQuery(hql);
q.setString(0,id);
List l=q.list();
Iterator iter=l.iterator();
if(iter.hasNext()){
p=(Person)iter.next();
}
return p;
}
public void delete(Person p){
Transaction tran=this.session.beginTransaction();
this.session.delete(p);
//提交事务
tran.commit();
}
public List queryByLike(String cond)
{
List l = null ;
String hql = "FROM Person as p WHERE p.name like ?" ;
Query q = this.session.createQuery(hql) ;
q.setString(0,"%"+cond+"%") ;
l = q.list() ;
return l ;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -