`
yxwang0615
  • 浏览: 560899 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

HibernateUtils

阅读更多

由于SessionFactory是线程安全的,在hibernate中对应数据库,而且SessionFactory的创建过程是重量级的,创建比较耗时,通常只创建一次。所以用HibernateUtils类封装了SessionFactory:

package com.wyx.hibernate;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class HibernateUtils {
	private static SessionFactory factory =null;
	
	static{
		try {
			//new Configuration()默认获取的是Hibernate.property
			factory = new Configuration().configure().buildSessionFactory();
		} catch (HibernateException e) {
			e.printStackTrace();
		}
	}
	public static Session getSession(){
		
		Session session = factory.openSession();
		return session;
	}
	public static void closeSession(Session session){
		if(session != null){
			if(session.isOpen()){
				session.close();
			}
		}	
	}
	public static SessionFactory getSessionFactory(){
		return factory;
	}
}

    

分享到:
评论

相关推荐

    HibernateUtils.java 绝对经典

    HibernateUtils.java文件超级经典哦...不信就下来试试看哦...呵呵...

    brahma-hibernateutils:Dropwizard中的实体注册使死亡变得简单

    package com.example.hibernateutils import javax.persistence.Entity ; @Entity public class Vishnu { } package com.example.hibernateutils import javax.persistence.Entity ; @Entity public class ...

    Hibernate Annotation 学习笔记

    这里的`HibernateUtils`使用`AnnotationConfiguration`初始化SessionFactory,这是与使用XML配置文件的不同之处。`AnnotationConfiguration`允许我们在不编写.hbm.xml文件的情况下,直接在实体类上使用注解进行对象...

    hql详细讲解,实例演示

    `HibernateUtils`类提供了一个静态工厂方法来获取`SessionFactory`,这是Hibernate的主要入口点,用于创建`Session`实例,进而执行CRUD操作。 HQL在查询时提供了更面向对象的语法,例如,我们可以用以下方式查询: ...

    hibernate模拟hibernatetemplate

    可以创建一个名为`HibernateUtils`的工具类,其中包含如`getSessionFactory()`、`executeTransaction()`等方法。 3. **实现CRUD操作**:模拟HibernateTemplate的基本功能,如增删改查,可以创建一系列静态方法,...

    Hibernate注解编程实例

    而`HibernateUtils`类则负责初始化`SessionFactory`实例,这是Hibernate中非常重要的组成部分,它负责创建`Session`实例,而`Session`实例则用于执行所有对数据库的操作。 ```java public class HibernateUtils { ...

    Hibernate中的query 分页.doc

    session = HibernateUtils.getSession(); session.beginTransaction(); Query query = session.createQuery("from User"); query.setFirstResult(0); // 从第一条记录开始 query.setMaxResults(4); // 取出四条...

    传智168期JavaEE hibernate 姜涛 day36~day37(by阿滔)

    Session session = HibernateUtils.openSession(); Transaction tx = session.beginTransaction(); Customer customer = new Customer(); customer.setCname("小沈"); for (int i = 1; i ; i++) { Order order...

    hibernate 查询?Hibernate的HQL查询

    在实际项目中,我们通常会创建工具类如HibernateUtils,以方便管理和获取SessionFactory和Session。例如: ```java public class HibernateUtils { private static SessionFactory factory; static { try { ...

    Generating Artifacts问题解决.doc

    at com.genuitec.eclipse.hibernate.util.HibernateUtils.getConfigFile(HibernateUtils.java:510) at com.genuitec.eclipse.hibernate.util.HTUtils.getConsoleConfigurationPreferences(HTUtils.java:184) at ...

    Hibernate 缓存 实例

    Session session = HibernateUtils.getSession(); session.beginTransaction(); Student student = (Student) session.load(Student.class, 1); System.out.println("student.name=" + student.getName()); // ...

    hibernate入门实例封装了HibernateUtil

    【标题】:Hibernate入门实例——基于HibernateUtil的数据库操作封装 在Java开发中,Hibernate作为一个强大的对象关系映射(ORM)框架,极大地简化了数据库操作。本实例将深入浅出地介绍如何使用Hibernate进行基本...

    struts-hibernate案例1

    3. 编写`HibernateUtils`工具类,提供SessionFactory的获取和释放,以便于数据库操作。 4. 实现DAO层,创建`DeptDao`接口及其实现类,定义与数据库交互的方法。 5. 设计Service层,创建`DeptService`接口及其实现类...

    J2EE企业级项目开发-3期(KC007) 5.2 精解Hibernate之核心文件文档.doc

    工具类`HibernateUtils`就展示了这样的设计,它包含了静态的`Configuration`和`SessionFactory`变量,以及一个静态初始化块来加载配置文件并创建SessionFactory。开发人员可以通过`getSessionFactory()`方法获取...

    hibernate框架学习笔记整理

    - 创建`hibernateUtils`工具类简化常用操作。 #### 三、核心概念和技术点 **1. Hibernate实体编写的规则**: - 持久化类提供无参数构造器。 - 成员变量私有,提供公共的get/set方法访问。 - 持久化类中的属性应...

    三个框架ssh整合的例子

    - 创建SessionFactory,通过HibernateUtils等工具类方便地获取Session。 - 实体类的创建及对应的hibernate-mapping.xml文件定义,描述对象关系映射。 4. **整合步骤**: - 在Struts的Action类中注入由Spring管理...

    SSH_Configurations

    `HibernateUtils.java`则是一个实用工具类,它提供了一些便捷方法,如获取Session实例、开启和关闭事务等。这个类使得在SSH框架中使用Hibernate更加方便,避免了直接操作SessionFactory的复杂性。 `jndi.properties...

Global site tag (gtag.js) - Google Analytics