普通Java工程中调用Hibernate的8个执行步骤
(Xml做配置文件)
前言:文章的示例代码是在普通Java工程中简单调用Hibernate执行持久层的实现。用于理解Hibernate对JDBC的轻量级封装。总共八个步骤,可对应JDBC传统六个步骤来一起理解。这篇文章是对上一篇文章properties配置的一种挥映,更适合实际使用。可作为参考代码。
使用Myeclipse工具集成Hibernate。
常有四个步骤:创建数据源、集成Hibernate、反向生成对象-关系映射文件和PO、最后测试。
步骤一:创建数据源。
(具体步骤不做说明,网上很多。)
注意:驱动包的加载,在数据源中随便找一个与数据库相对应的驱动包即可,在项目中调用相应的数据源,会把相应的驱动包加载进入项目,所以就不用单独再加驱动包。
步骤二:集成Hibernate。
(具体步骤不做说明,网上很多。)
生成的配置文件hibernate.cfg.xml(下面是源码,可直接参考)
- <?xmlversion='1.0'encoding='UTF-8'?>
- <!DOCTYPEhibernate-configurationPUBLIC
- "-//Hibernate/HibernateConfiguration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
- <!--Generated by MyEclipse Hibernate Tools. -->
- <hibernate-configuration>
- <session-factory>
- <!-- MyEclipse配置 Hibernate的配置文件 start-->
- <propertyname="dialect">
- org.hibernate.dialect.Oracle10gDialect
- </property>
- <propertyname="connection.url">
- jdbc:oracle:thin:@127.0.0.1:1521:orclfzb
- </property>
- <propertyname="connection.username">scott</property>
- <propertyname="connection.password">Tiger2013</property>
- <propertyname="connection.driver_class">
- oracle.jdbc.driver.OracleDriver
- </property>
- <propertyname="hibernate.show_sql">true</property>
- <!-- MyEclipse配置 Hibernate的配置文件 start-->
- </session-factory>
- </hibernate-configuration>
注意:上面叙述的驱动包的加载顺序。
步骤三:反向生成对象-关系映像文件和PO
(具体步骤不做说明,网上很多。)
(1)hibernate.cfg.xml中配置相对性数据库表配置文件。
例如
- <!-- 采用MyEclipse Database Explore反向生成对象-关系映像文件和pojo的配置文件 start -->
- <propertyname="myeclipse.connection.profile">
- fzboracle
- </property>
- <mappingresource="com/hibernateToolAdd/domain/Tlogin1.hbm.xml"/>
- <!-- 采用MyEclipse Database Explore反向生成对象-关系映像文件和pojo的配置文件 start -->
(2)修改Tlogin1.hbm.xml中部分字段信息。
(3)修改Tlogin1.java中部分属性信息。
步骤四:测试(即普通java调用Hibernate的8个步骤)
部分说明,在上一篇文章已经说明,这里就演示步骤。
代码如下
- import org.hibernate.Session;
- import org.hibernate.SessionFactory;
- import org.hibernate.Transaction;
- import org.hibernate.cfg.Configuration;
- import com.hibernateToolAdd.domain.Tlogin1;
- public classTlogin1Service {
- static SessionFactorysessionFactory;
- static{
- // 步骤一:创建Configuration--准备读取hibernate.cfg.xml内容到内存
- Configurationconfiguration = newConfiguration();
- // 步骤二:加载域对象--
- // 读取hibernate.cfg.xml内容到内存
- // 读取Xxx.hbm.xml内容到内存
- configuration.configure("/hibernate.cfg.xml");
- // 步骤三:创建SessionFactory实例
- sessionFactory= configuration.buildSessionFactory();
- }
- public static void main(String[] args) {
- // 步骤四:创建Session
- Sessionsession = sessionFactory.openSession();
- // 步骤五:开启事务
- Transactiontransaction= session.beginTransaction();
- // 步骤六:执行事务
- Tlogin1tlogin1 = newTlogin1();
- tlogin1.setLoginname("heif");
- tlogin1.setUsername("黑风");
- tlogin1.setPassword("111");
- tlogin1.setPicurl(null);
- session.save(tlogin1);
- // 步骤七:关闭事务
- transaction.commit();
- // 步骤八:关闭Session
- session.close();
- }
- }
如有好的建议,可留言或发至笔者邮箱:fzb_xxzy@163.com