hibernate基本配置优化
Posted 我的名称很霸气
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate基本配置优化相关的知识,希望对你有一定的参考价值。
前面已经说过hibernate的基本配置了,现在对之前的基本配置进行代码优化;
写一个读取配置工具
1 package tool; 2 3 import org.hibernate.Session; 4 import org.hibernate.SessionFactory; 5 import org.hibernate.cfg.Configuration; 6 //configuration的工具 7 public final class HibernateUtil { 8 private static SessionFactory sessionFactory; 9 private HibernateUtil(){ 10 11 } 12 public static SessionFactory getSessionFactory() { 13 return sessionFactory; 14 } 15 static{ 16 Configuration cfg = new Configuration().configure(); 17 sessionFactory=cfg.buildSessionFactory(); 18 } 19 public static Session getSession() 20 { 21 return sessionFactory.openSession(); 22 } 23 24 }
在测试类中写一个添加数据和获取数据方法
1 // 获取数据 2 static Admin getAdmin(int id) { 3 Session session = null; 4 try { 5 session = HibernateUtil.getSession(); 6 Admin admin = session.get(Admin.class, id); 7 return admin; 8 } finally { 9 if (session != null) 10 session.close(); 11 } 12 } 13 14 // 添加数据 15 static void addAdmin(Admin admin) { 16 Session session = null; 17 Transaction tx = null; 18 try { 19 session = HibernateUtil.getSession(); 20 tx = session.beginTransaction(); 21 session.save(admin); 22 tx.commit(); 23 } finally { 24 if (session != null) 25 session.close(); 26 } 27 }
剩下的直接调用就行了
1 public static void main(String[] args) { 2 // 创建进行持久化对象 3 // Admin admin = new Admin(); 4 // admin.setUserId(6); 5 // admin.setUserName("李四"); 6 // admin.setUserPwd("456"); 7 // addAdmin(admin); 8 Admin admin1 = getAdmin(1); 9 System.out.println("name["+admin1.getUserName()+"],password["+admin1.getUserPwd()+"]"); 10 }
以上是关于hibernate基本配置优化的主要内容,如果未能解决你的问题,请参考以下文章
Hibernate 配置文件属性之 级联操作cascade 性能优化inverse
Hibernate ORM框架——续第一章:Hibernate的增删改查(第一个hibernate代码的优化)