如何搭建Hibernate框架的搭建和简单的使用

hibernate 是一个非常优秀的持久化框架,负责简化将对象数据保存到数据库中,从数据库中读取数据并封装到对象的工作。通过简单配置和编码即可代替JDBC繁琐的程序代码。Hibernate处理数据库操作的方式代表了当前的趋势。

接下来我们一步步的搭建一个属于自己的Hibernate框架。基于Myeclipse以及oracle数据库。本文适合新手,比较详细。有任何问题可以添加QQ:1522648649讨论。

一:新建工程

我在Myeclipse中新建一个Web project.命名为CSDN

二:导入数据库架包。(oracle数据库)

在oracle数据库安装目录下的\instantclient_11_2文件夹下。我的在D:\app\MSK\instantclient_11_2
将其复制到CSDN下的WEB-INF/lib文件夹下。

准备工作到此结束。

二:关联数据库与IDE。

点击Myeclipse右上方的。如下图。选择Myeclipse DateBase Explorer

出现如下窗口:右击左侧空白处,选择新建,跳出如下窗口,并按图填写内容。

Connection URL:  jdbc:oracle:thin:@127.0.0.1:1521:orcl

点击Next->进入选择如图;我以scott用户为例,故勾选scott.结果为右侧图。点击Finish,
你会发现左侧多出一个csdn选项,右击,选择Open Datebase Connection.填写密码,点击OK。如下图。

看到下图,说呢建立连接完成。



三:配置hibernate文件

步骤一:添加hibernate支持(包含配置文件 .jar包

使用hibernate要先下载相关源码并配置它,可以从官方网站下载hibernate框架的jar包,这里以3.3.2版本的hibernate为例,首先下载hibernate-distribution-3.3.2.GA-dist.zip文件

使用Myeclipse不需要自己下载此插件.选择下图选项



按下图配置相关参数;


点击Finish.完成操作。

步骤二:编写持久化类和映射文件

持久化类可以使用普通的Java对象,习惯上叫做POJO(plain Old Java Objects,中文叫做简单的普通Java对象),POJO 很像 JavaBean,里面除了javabean规范的方法和属性外,没有其他内容,只用于装载数据。此处对数据库中的Emp表进行操作。文件内容点击    查看。

当创建完POJO后,接下来需要添加一个对象和关系数据库表的映射文件。注意该映射文件通常以  *.hbm.xml格式结尾,hibernate会拦截这种格式的配置文件。

Emp.hbm.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<!-- 映射文件:建立pojo与数据库的映射关系 -->
<hibernate-mapping>
<!-- class: 建立pojo与数据库的映射,name:表示pojo的全限定名 table:数据库表名-->
	<class name="come.bean.Emp" table="emp">
	<!-- id:用于建立pojo中的属性和表中主键的映射 -->
		<id name="empno" type="java.lang.Integer">
			<column name="empno"></column>
			<!-- 为主键的值指定生成策略 ,此处使用序列完成对属性的赋值-->
			<!-- <generator class="sequence"> -->
			<!--	<param name="sequence">SEQ_EMP</param> -->
			<!--</generator> -->
			<generator class="assigned"></generator>
			
		</id>	
		
		<!-- property:用于建立pojo中的属性和表中非主键的映射 -->
		<property name="ename" type="java.lang.String">
			<column name="ename">
			<!-- 备注 -->
				<comment></comment>
			</column>
		</property>
		
		<property name="job" type="java.lang.String">
			<column name="job">
			<!-- 备注 -->
				<comment></comment>
			</column>
		</property>
		
		<property name="mgr" type="java.lang.Integer">
			<column name="mgr">
			<!-- 备注 -->
				<comment></comment>
			</column>
		</property>
		
		<property name="hiredate" type="java.sql.Date">
			<column name="hiredate">
			<!-- 备注 -->
				<comment></comment>
			</column>
		</property>
		
		<property name="sal" type="java.lang.Integer">
			<column name="sal">
			<!-- 备注 -->
				<comment></comment>
			</column>
		</property>
		
		<property name="comm" type="java.lang.Integer">
			<column name="comm">
			<!-- 备注 -->
				<comment></comment>
			</column>
		</property>
	</class>
	
</hibernate-mapping>


步骤三:将映射文件添加到hibernate的主配置文件中,以便hibernate框架在运行期间可以查找该映射文件及关联的实体类

hibernate.cfg.xml
在<session-factory>添加下面两行代码:
        <!-- 使用getCurrentSession ,作用:将打开的session绑定到当前线程,一旦事务提交,自动关闭session-->
        <property name="current_session_context_class">thread</property>
    	<!-- 添加映射文件 -->
    	<mapping resource="com/mapping/Emp.hbm.xml"/>

步骤四:hibernate数据的持久化

持久化操作是hibernate的核心,通过利用hibernate框架实现基本的数据库的增删改查的操纵。

      

hibernate中几个常用的概念:

1Session对象(org.hibernate.Session):是hibernate中数据库持久化操作的核心,它负责hibernate的所有持久化操作,

通过它开发人员可以实现数据库基本的增删改查等操作;其作用就是维护着用户的本次操作中需要产生的当前数据库连接、相关事务

操作等,代表着用户的一次操作;注意:这里的session对象不是以前学习的jsp中的内置对象,这个Session是hibernate3.jar包中的

Session对象。

2SessionFactory ( org .hibernate.SessionFactory)一个线程

安全的Session工厂类,能够为不同的线程生成不同的Session,SessionFactory维护着Session的相关资源,包括数据库连

接池、缓存数据等。

3Transactionorg.hibernate.Transaction:   Transaction 代表一次事务,事务内包含了若干数据修改,事务提交后才生效

。如果事务失败或者回滚,所有的修改都会失效。

hibernate框架已经配置完成。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

相关例程点击下载:点击打开链接

*使用Hibernate操作数据库需要七个步骤:点击打开链接


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值