您的位置:首页 > 编程语言 > Java开发

普通Java工程中调用Hibernate的8个执行步骤(properties做配置文件)

2013-12-29 00:26 393 查看
普通Java工程中调用Hibernate的8个执行步骤

(properties做配置文件)

前言:文章的示例代码是在普通Java工程中简单调用Hibernate执行持久层的实现。用于理解Hibernate对JDBC的轻量级封装。总共八个步骤,可对应JDBC传统六个步骤来一起理解。当然,仅用于理解和参考,不可直接用于项目中。没有对关闭事务和关闭Session进行异常处理。

Session的创建没有放在static块中的说明。

先说明SessionFactory接口:一个SessionFactory对应一个数据存储源。SessionFactory是线程安全的,这意味着它的一个示例可以被应用的多个线程享用。SessionFactory是重量级的,这意味着不能被随意创建或销毁它的实例。如果应用同时访问多个数据库,则需要为每个数据库创建一个单独的SessionFactory实例。

在说明Session接口:不是线程安全的,因此在设计软件架构时,应该避免多个线程共享一个Session实例。Session实例是轻量级的,所谓轻量级是指它的创建和销毁不需要消耗太多资源。这意味着在程序中可以经常创建或销毁Session实例。例如为每个客户请求分配单独的Session实例,或者为每个工作单元分配单独的Session实例。











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

import edu.hibernatetest.domain.po.User;

publicclassUserHibernateDemo {

static SessionFactorysessionFactory;

static{
//
步骤一:创建Configuration--读取Hibernate.properties内容到内存
Configurationconfiguration = newConfiguration();
//
步骤二:加载域对象--读取Xxx.hbm.xml内容到内存
configuration.addClass(User.class);

//
步骤三:创建SessionFactory实例
sessionFactory= configuration.buildSessionFactory();
}

publicstaticvoid main(String[] args) {
//
步骤四:创建Session
Sessionsession = sessionFactory.openSession();

//
步骤五:开启事务
Transactiontransaction= session.beginTransaction();;

//
步骤六:执行事务
User user =new User();
user.setLoginname("fengj");
user.setUsername("凤九");
user.setPassword("123");
user.setPicurl(null);
session.save(user);

//
步骤七:关闭事务
transaction.commit();
//
步骤八:关闭Session
session.close();

}

}

如有好的建议,可发至笔者邮箱:fzb_xxzy@163.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: