eclipse 上安装hibernate插件及配置hibernate

如果对hibernate有点了解的人,一定知道hibernate的作用是什么,其实就是ORM,就是将对象和关系映射起来。

我们用的数据库都是关系型的数据库,但是我们项目开发用的是java,那么自然会思考,关系和对象怎么结合?因此我们用hibernate框架,不要担心很复杂,我们抛开一切设计,只从最基本的用法出发,就是配置两个xml的文件嘛,一个是配置数据库的连接,一个是对象-表的映射。

提示:使用hibernate 有两种映射方式,一种使用xml配置,一种是通过在类中注释来实现,这里先讲xml配置。

为了方便,使用eclipse的朋友应该要去安装一个hibernate的插件,这是项目开发必须的。

流程:Help-》Install New Software 在Work with中 add 

网址是 http://download.jboss.org/jbosside/updates/stable

加载完成后里面有很多,打开找到Hibernate Tool 安装。安装完成后,就可以在项目中配置了。

整合一个框架,jar必不可少,因此先到官网下hibernate,网址:http://hibernate.org/orm/ 

将 lib 下的 required 里的jar 导入项目WEB-INF 的lib中。

下面开始配置:

右键项目,new-》other 找到hibernate文件夹,选择Hibernate Configuration File,next ,名字不变,next,填上配置信息,这是我的信息,参考 :

finish后,这相当于配置了数据库的连接,接下来配置对象-表的映射文件:

右键 包,new-》other,选择hibernate文件夹下的 Hibernate Xml Mapping file, next-》next-》next-》选择create file ActionImplements。。。。finish。创建完成后打开,进行配置。

这是我的映射文件配置:


<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class name="ActionImplements" table="login"><!-- table 对应数据库的表 -->
        <id name="user" type="java.lang.String"><!-- type 对应java中的类型 -->
            <column name="user" />				<!-- column对应表中的字段 -->
            <generator  />		<!-- class: 主键生成策略,native表示跟随数据库 -->
        </id>
        <property name="pass" type="java.lang.String">
            <column name="pass" />				<!-- column对应表中的字段 -->
        </property>
    </class>
</hibernate-mapping>


在数据库配置中添加映射文件信息,这是我的数据库配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
		"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
		"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.url">jdbc:mysql:///Test</property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.connection.password">chenlu</property>
        <property name="hibernate.default_schema">test</property>
        <mapping resource="ActionImplements.hbm.xml"/><!-- 映射文件信息 -->
    </session-factory>
</hibernate-configuration>
至此,项目整合hibernate后,配置完成,接下来具体使用hibernate框架。

推荐文章

带有ExpandableListActivity和SimpleCortorTreeAdapter的IllegalStateException

带有ExpandableListActivity和SimpleCortorTreeAdapter的IllegalStateException

推荐文章

在使用mySql的实体框架中,无法使用Decimal数据类型更新行

在使用mySql的实体框架中,无法使用Decimal数据类型更新行

推荐文章

生成随机序列并在R中绘图

生成随机序列并在R中绘图

推荐文章

有谁能推荐一种语言来模仿/翻拍俄勒冈州的原著吗?

有谁能推荐一种语言来模仿/翻拍俄勒冈州的原著吗?

推荐文章

在wordpress文章/页面中调用ajax

在wordpress文章/页面中调用ajax

推荐文章

在python中围绕特定像素旋转图像

在python中围绕特定像素旋转图像

推荐文章

性能计数器是否可以跟踪与字符串标识符一起使用的时间?

性能计数器是否可以跟踪与字符串标识符一起使用的时间?

推荐文章

注销散列,它们是如何处理的?

注销散列,它们是如何处理的?

推荐文章

为什么在Python中使用抽象基类?

为什么在Python中使用抽象基类?

推荐文章

为什么用牛顿法求最大值却不能找到函数的充分降阶?

为什么用牛顿法求最大值却不能找到函数的充分降阶?

推荐文章

在Wordpress中,如何向左上角的仪表板菜单框添加链接?

在Wordpress中,如何向左上角的仪表板菜单框添加链接?

推荐文章

SQL Server 2008中唯一的非必需列

SQL Server 2008中唯一的非必需列

推荐文章

我可以通过facebook连接访问多少信息?

我可以通过facebook连接访问多少信息?

推荐文章

Java/struts/jsp中是否有类似于ASP.NET web用户控件的内容

Java/struts/jsp中是否有类似于ASP.NET web用户控件的内容

推荐文章

删除带有文件字段的Django模型对象是否会删除用于该文件的存储?

删除带有文件字段的Django模型对象是否会删除用于该文件的存储?

推荐文章

优化获取SQLite中按第一个字母分组的行数?

优化获取SQLite中按第一个字母分组的行数?