Hibernate的增删改查
来源:互联网 发布:网络医疗美容咨询难吗 编辑:程序博客网 时间:2024/04/25 23:09
Hibernate 语法:
Hibernate的所有的操作都是通过Session完成的.
基本步骤如下:
1:通过配置文件得到SessionFactory:
SessionFactory sessionFactory=new Configuration().configure().buildSessionFactory();
2:通过SessionFactory 得到一个Session
Session session=sessionFactory.openSession();
3:通过session进行插入,删除,修改以及查询.
插入例子:( 1)声明一个事务;(2)Session执行save()操作;(3)事务提交;(4)关闭Session,可选.
public void insert(Person p){
Transaction tran=session.beginTransaction();
session.save(p);
tran.commit();
// session.close();
}
修改例子:( 1)声明一个事务;(2)Session执行update()操作;(3)事务提交;(4)关闭Session,可选.
public void update(Person p){
Transaction tran=session.beginTransaction();
session.update(p);
tran.commit();
// session.close();
}
删除例子(主键删除,推荐使用):( 1) 声明删除的SQl语句;(2)创建session的Query对象;(3)设置Query对象的参数;(4)执行Query的executeUpdate()操作;(5)Session事务提交
public void delete(int id){
String hql="delete Person as p where p.id=?";
Query query=session.createQuery(hql);
query.setInteger(0,id);
query.executeUpdate();
session.beginTransaction().commit();
}
删除例子(对象删除) :(1)声明一个事务;(2)Session执行delete()操作;(3)事务提交;(4)关闭Session,可选.
public void delete(Person p){
Transaction tran = session.beginTransaction();
session.delete(p);
tran.commit();
session.close();
}
查询例子:(跟删除差不多) 查询语句不需要事务提交
(1) 声明删除的SQl语句;(2)创建session的Query对象;(3)设置Query对象的参数;
public Persion queryById(int id){
String hql="from Person as p where p.id=?";
Query query=session.createQuery();
query.setInteger(0,id);
List rsList=query.list();
iterator it=rsList.iterator();
Person person=null;
while(it.haseNext()){
person=(Person)it.next();
}
return person;
}
- Hibernate的增删改查
- Hibernate的增删改查
- Hibernate的增删查改
- Hibernate的增删改查
- Hibernate 的增删改查
- Hibernate的增删改查
- hibernate的增删改查
- Hibernate的增删改查
- Hibernate的增删改查
- hibernate的增删改查
- Hibernate的增删查改
- hibernate的增删改查
- hibernate增删查改
- hibernate增删改查
- Hibernate增删改查
- hibernate 增删改查
- hibernate 增删改查
- Hibernate 增删改查
- oracle 统计分析函数之lead和lag
- myeclipse SVN Checkout 时报错time of error解决方案
- 我写的一段JS实现TABLE统计功能的代码(未兼容昨天那段代码的JS功能)
- ubuntu 11.10(32位)下android2.2 源码编译
- 个人整理的Linux Shell语法速查表(用C语言语法来作对比)
- Hibernate的增删改查
- 关于onMeasure
- 工作队列分析 queue_work
- google编程风格学习小结
- linux编译问题汇总(不断更新)
- c/vc/c++ 将mysql二进制字段(longblob类型)读出来保存成文件
- windows网络编程
- 区域设置 ID (LCID) 表
- jqGrid与Struts2的结合应用(一) ------ 显示基本Grid表格 .