利用Eclipse开发Hibernate应用程序时间:2006-01-24
作者:
俞黎敏 浏览次数:<script language="JavaScript" src="http://203.81.25.103/cgi-bin/beabbscount.cgi?d_id=187" type="text/JavaScript"></script>12446
本文关键字:
Eclipse,
Hibernate,
插件,
ORM 介绍如何利用Hibernate Synchronizer插件在Eclipse 3.0.1中快速的开发Hibernate应用程序,提高我们的工作效率。
Eclipse是目前非常流行的开发平台,开放扩展的架构让很多程序员找到了自己个性化的工作环境,Hibernate也是目前很流行的O/R Mapping框架,至少在EJB 3.0大行其道之前,它是我们在考虑O/R Mapping时非常好的选择。
关于Hibernate框架的细节,请参考《Hibernate in Action》一书。
首先需要安装这个插件,Eclipse 3.0.1为我们提供了更加方便的插件管理方式,选择菜单“帮助—软件更新—查找并安装”,选择“搜索要安装的新功能部件”,操作界面如下:


选择 New Remote Site ,填写名称 Hibernate PlugIn ,下面的URL中填入:http://www.binamics.com/hibernatesync
如下图:

然后在“安装”界面中选中我们刚添加的 Hibernate PlugIn ,打开它,选中下一级的Synchronizer,然后Next,以下的安装根据提示进行Next即可了。
Eclipse就可以自己下载完成安装,然后Eclipse自动重启动一次就完成了。

Spring PlugIn的地址为:
http://springframework.sourceforge.net/spring-ide/eclipse/updatesite/
安装配置类似于Hibernate PlugIn的安装。
Spring的地址为:
http://www.springframework.org/
下面演示一个最简单的单表操作,让我们熟悉开发过程。我们选择MySQL数据库来做这个应用,首先在MySQL里建立一个新的数据库为HibernateTest,再建立一个数据表,名为Person,包含ID, Name, Sex, Address四个字段,建表语句如下:
# Host: localhost# Database: hibernatetest# Table: 'person'# CREATE TABLE `person` ( `ID` int(11) NOT NULL auto_increment, `Name` varchar(20) NOT NULL default '', `Sex` char(1) default NULL, `Address` varchar(200) default NULL, PRIMARY KEY (`ID`)) TYPE=MyISAM;

然后新建一个普通的Java项目:“File -> Project -> New Project ->Java Project

输入项目名称:HibernateMySQL

注意加入Hibernate的所有lib文件,包括有Hibernate下面的hibernate2.jar和lib目录下面的所有.jar文件;
还有要加入MySQL的jdbc驱动文件,比如mysql-connector-java-3.0.14-production-bin.jar
驱动程序自己选择加载,版本不同,文件名也不同:)

下面我们需要在项目中加入一个Hibernate的配置文件,在src目录下选择 New -> Other -> Hibernate -> Hibernate Configuration File,如下图:


在弹出的界面中,你需要指定要使用的数据库,以及连接数据库所需要的信息,我们对应的选择了数据库为MySQL,并配置了数据库的URL和管理员帐号与密码,如下:
Database Type: QLDriver Class: org.git.mm.mysql.DriverDatabase URL: jdbc:mysql://localhost:3306/HibernateTestUsername: rootPassword:

点击Browse按钮,在弹出的框中输入Driver,在下面就会出现相应的驱动所在的包
我们选中org.git.mm.mysql.Driver所在的包的文件,确定即可。

在上图中,我们还可以指定从JNDI数据源中获得连接,可以点击 Datasource 标签进行配置。

点击 Finish 按钮之后系统会自己生成一个名为 hibernate.cfg.xml 的文件,里面包含了基本的配置信息,如果需要高级配置,可以手动配置,也可以通过其它插件来进行编辑,比如MyEclipse的XML Editor

下面要生成映射文件,首先新建一个包 New -> Package,输入net.echochina.hibernatetest


在这个包下选择 New -> Other -> Hibernate -> Hibernate Mapping File ,在弹出的界面中点击 Refresh 按钮,将会列出库中所有的数据表,选中我们要使用的 Person 表,点击 Browse 按钮,选择我们所要生成的POJO文件所在的包:net.echochina.hibernatetest
如下图:

在上述界面的 Properties 标签中可以配置hbm的其他选项,包括文件扩展名,聚合列名,ID生成规则等。完成后,系统会自动生成一个名为 Person.hbm 的文件,我们可以通过这个文件生成相关的存根类。

在Person.hbm文件上单击右键,选择 Hibernate Synchronizer -> Synchronize Files

该操作将生成三个包八个类文件,里面封装了Hibernate的操作细节,让我们可以专心面对业务逻辑的开发,仔细阅读这些文件可以提高你对Hibernate的认识,增长应用技巧。
然后我们需要在Hibernate的配置文件中添加对Person 的相关信息,在Person.hbm上单击右键,选择Synchronizer -> Add Mapping Reference

现在我们可以开始编写自己的程序逻辑了,代码可以写在
net.echochina.hibernatetest.dao.PersonDAO类中,这个类的代码不会被插件进行修改的。

首先在数据库里增加一条新的记录
在PersonDAO类中增加一个引入import net.echochina.hibernatetest.Person;
然后加入一个main方法,内容如下:
public static void main(String args[]){ try { _RootDAO.initialize(); PersonDAO persondao = new PersonDAO(); Person person = new Person(); person.setName("YuLimin"); person.setSex("M"); person.setAddress("http://Java.EchoChina.net"); persondao.save(person); } catch(Exception e) { e.printStackTrace(); }}
//测试MySQL的中文问题:更改内容如下,把setName的参数改为中文的内容:
person.setName("俞黎敏");
这里应当到hibernate.cfg.xml文件的<session-factory/>块中增加上如下两行设置
<property name="connection.useUnicode">true</property>
<property name="connection.characterEncoding">GBK</property>
这样插入数据与读取数据时才不会有中文的问题,如果仍有中文问题请Google吧:)
可以看出,插件已经把session操作和事务操作都封装起来了,我们的代码工作得到了极大的简化。而且我们可以利用插件自带的Hibernate Editor来编辑hbm文件,非常方便。
我们还需要把ID的生成方式改为 identity,右键Person.hbm,Open With -> Hibernate Editor

把ID的生成方式改为 identity

要让这个程序正常运行,还需要对配置文件hibernate.cfg.xml作一些修改。
使用Eclipse的 文本编辑器 打开该文件,其中有如下的内容:
<!-- <property name="hibernate.transaction.factory_class">net.sf.hibernate.transaction.JTATransactionFactory</property><property name="jta.UserTransaction">java:comp/UserTransaction</property> -->
由于在我们的例子中,并没有使用JTA来控制事务,所以需要将上面的内容注释掉,程序才能正常运行。

现在可以开始运行了,点击Run

在出现的配置中选择Java Application,Name中输入PersonDAO

单击Search 按钮,在弹出地框中选择net.echochina.hibernatetest包中的PersonDAO类

OK之后,点击Run开始运行,如果以上各步操作正确的话,可以看到数据已经被保存到数据库。

如果在实际开发工作中,需要重新设计数据表结构,那么只需要在.hbm文件中做相应的修改,然后执行 Synchronize and Overwrite 的操作,插件会重新生成存根文件,我们只需要修改程序逻辑就可以了,非常方便。有了这样的功能插件,我们可以极大的从配置文件的编写、查错中解脱出来,从而提高我们的工作效率。
Hibernate 常用工具
Hibernate Synchronizer 很好的辅助开发工具,是一个Eclipse 的插件,可以生成80%的代码,首选。
MyEclipse 安装的 3.8.3 感觉非常的强大,主要是因为他是付费的,做得比较全面,喜欢他们的struts 组件,开发 Struts 必不可少。
Hibernator Hibernate查询的辅助工具,可以使用 HSQL进行查询,测试HSQL的好工具,是个Eclipse插件。
Hibern8IDE(现更名为:HibernateConsole) 一个单独运行的Hibernate工具,可以运行 Hibernate Query Language (HQL)语句。
MiddleGen 生成持久对象的工具,可以生成
Persistence layer with EJB (CMP 2.0)
Persistence layer with JDO
Persistence layer with Hibernate
Persistence layer with Torque
Database GUI with JSP/Struts
http://spindle.sourceforge.net 开发Tapestry的必备
http://springui.sourceforge.net 写Spring Application Context File的辅助好工具
作者其它文章
分享到:
相关推荐
首先,要利用Eclipse开发Hibernate应用程序,开发者需要对Eclipse进行配置,包括安装HibernateSyn插件。在Eclipse 3.0.1版本中,安装插件的操作可以通过"帮助—软件更新—查找并安装"来完成。插件安装后,开发者可以...
总结来说,这篇文档详细介绍了在Eclipse中利用Hibernate Synchronizer插件开发ORM应用程序的步骤,包括安装插件、配置数据库连接、创建Hibernate配置文件等关键环节。这对于希望在Eclipse环境中使用Hibernate的...
Eclipse Hibernate Synchronizer插件是一款强大的开发工具,它为Eclipse IDE提供了集成的Hibernate支持,使得数据库操作和对象关系映射(ORM)更加便捷。这个插件的主要目标是简化数据库与Java实体类之间的同步过程...
本文将详细介绍如何在Eclipse 3.0.1中利用Hibernate Synchronizer插件来快速开发Hibernate应用程序。 首先,安装Hibernate Synchronizer插件是至关重要的一步。在Eclipse中,可以通过"帮助—软件更新—查找并安装...
Hibernate Synchronizer 是一款针对 Eclipse 开发环境的插件,旨在简化 Hibernate 映射文件的编辑与管理过程。通过提供专业的编辑器和一系列实用功能,如代码自动生成、智能完成功能、图形化大纲视图等,该插件显著...
### 安装Hibernate Synchronizer ...总之,Hibernate Synchronizer是一款强大的Eclipse插件,可以帮助开发者更高效地进行Hibernate相关的开发工作。通过遵循上述安装指南,您可以轻松地将其集成到您的开发环境中。
一旦生成了.hbm.xml 文件,您就可以使用 HibernateSynchronizer 插件来生成实体类和 DAO 类。在 Eclipse 中,您可以右键点击.hbm.xml 文件,然后选择 Hibernate Synchronizer->Synchronize Files。 添加映射资源 ...
HibernateSynchronizer 是一款非常简单实用的eclipse插件,但是作者多年前就停止了维护,所以再eclipse 4.* 版本上无法再实用这款插件,这对很多使用这款插件的开发者来说非常不方便。尤其是eclipse高版本对高分屏的...
- **开发背景**:作者James Elliott在寻找Eclipse中的Hibernate相关插件时,发现了Hibernate Synchronizer,这款插件能够显著提升开发效率。 - **核心优势**:该插件支持以映射为中心的工作流,当修改映射文件时,...
在Java应用程序开发中,尤其是使用Hibernate作为持久层框架时,DAO层是至关重要的,它封装了数据库操作,使业务逻辑与数据访问分离,提高代码的可维护性和可测试性。 Hibernate是一款流行的Java ORM(对象关系映射...
1. 下载:获取名为"hibernatesynchronizer_3.1.9"的压缩包文件。 2. 解压:将压缩包解压,获取到"com.hudson.hibernatesynchronizer_3.1.9"文件夹。 3. 安装:打开Eclipse,进入“Help” -> "Install New Software...
【hibernateSynchronizer】是一个专为Eclipse开发的插件,它的主要功能是简化Hibernate项目的开发工作,特别是处理数据库对象与Java类之间的映射关系。通过这个插件,开发者能够快速、方便地自动生成`.hbm.xml`文件...
通过在Eclipse中安装和使用HibernateSynchronizer插件,开发人员能够显著提升开发效率,尤其是在处理复杂的对象关系映射场景时。此外,结合MySQL数据库和可选的Spring框架,开发者可以构建出既强大又灵活的企业级...
### HibernateSynchronizer使用指南 #### 一、简介 HibernateSynchronizer是一款...通过上述步骤,开发者可以利用HibernateSynchronizer轻松地搭建起基于Hibernate框架的应用程序基础架构,从而大大提高开发效率。
综上所述,Hibernate Synchronizer是提升Hibernate开发效率的得力助手,通过自动化处理数据库映射和代码生成,它能够帮助开发者更专注于应用程序的核心业务逻辑,从而提高开发效率和项目质量。在实际使用中,结合...
总之,这个资源集合为Eclipse用户,尤其是从事Java和Hibernate开发的人员,提供了便利的插件下载途径,通过Hiberclipse和hibernateSynchronizer,可以增强对数据库操作的支持,提高开发效率。同时,提供的JavaScript...
通过集成到Eclipse或IntelliJ IDEA等IDE中,Hibernate Synchronizer能够监控数据库的改变,并自动生成或更新与之对应的Java POJO(Plain Old Java Object)类,极大地提高了开发效率。 在Hibernate Synchronizer ...
HibernateSynchronizer 是一个针对 Hibernate 框架的插件,它简化了开发过程中的配置和对象-关系映射(ORM)文件的创建。通过自动生成 Hibernate 的配置文件(hibernate.cfg.xml)、映射文件(.hbm.xml)以及 Plain ...
除了Hibernate Synchronizer,还有其他针对Hibernate的Eclipse插件,它们可能更适合不同的开发环境和工作流。例如,如果你的项目更倾向于动态SQL或者有特定的数据库交互需求,可能需要探索其他的插件,如MyEclipse的...