hibernate增删改
Posted fjk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate增删改相关的知识,希望对你有一定的参考价值。
public class HibernateUtils {
private static SessionFactory sessionFactory=null; static{ //获取config 加载配置文件 Configuration configure = new Configuration().configure(); sessionFactory = configure.buildSessionFactory(); } //获取session public static Session getSession(){ Session session = sessionFactory.openSession(); return session; } }
保存方法
@Test //保存方法 public void test(){ // 创建一个javabean //给javabean中的成员变量赋值 //保证每个用户去出来的session都不相同 Session session = HibernateUtils.getSession(); // 相当于得到一个Connection。 // 开启事务 Transaction transaction = session.beginTransaction(); // 操作 session.save(java对象); // 事务提交 transaction.commit(); //不需要关闭Configuration 因为Configuration不是轻量级的。这样一个项目就只产生一个Configuration //configuration相当于连接池 session.close(); }
删除方法
@Test //删除方法 public void test1(){ // 创建一个Customer //User c = new User("12","zhangsan111","123456789","zhangfei","[email protected]","15029021367",new Date(),"M",1,"0"); //保证每个用户去出来的session都不相同 User user = new User(); user.setUid("1234"); Session session = HibernateUtils.getSession(); // 相当于得到一个Connection。 // 开启事务 Transaction transaction = session.beginTransaction(); // 操作 //删除时必须根据主键进行删除 session.delete(user); // 事务提交 transaction.commit(); //不需要关闭Configuration 因为Configuration不是轻量级的。这样一个项目就只产生一个Configuration //configuration相当于连接池 session.close(); }
修改方法
@Test //修改方法 public void test2(){ // 创建一个Customer //User c = new User("12","zhangsan111","123456789","zhangfei","[email protected]","15029021367",new Date(),"M",1,"0"); //保证每个用户去出来的session都不相同 User user = new User(); user.setUid("123"); user.setName("修改的"); Session session = HibernateUtils.getSession(); // 相当于得到一个Connection。 // 开启事务 Transaction transaction = session.beginTransaction(); // 操作 //可以进行修改 但必须把修改的参数写清楚 没写的表示null session.update(user); // 事务提交 transaction.commit(); //不需要关闭Configuration 因为Configuration不是轻量级的。这样一个项目就只产生一个Configuration //configuration相当于连接池 session.close(); }
以上是关于hibernate增删改的主要内容,如果未能解决你的问题,请参考以下文章