`
zyc1006
  • 浏览: 131720 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

利用Eclipse开发Hibernate应用程序

    博客分类:
  • Java
 
阅读更多

http://autumnice.blog.163.com/blog/static/555200200619103615731/

 

出处:http://dev.yesky.com/SoftChannel/72342371961929728/20041116/1876410.shtml

  Eclipse是目前非常流行的开发平台,开放扩展的架构让很多程序员找到了自己个性化的工作环境,Hibernate也是目前牛叉得不得了的框架,至少在EJB 3大行其道之前,它是我们在考虑OR映射时非常好的选择。本文主要介绍如何利用Hibernate Syn插件在Eclipse 3.0.1中快速的开发Hibernate应用程序,提高我们的工作效率。关于Hibernate框架的细节,本文不做过多的讨论,请参考相关资料,推荐《Hibernate in action》一书。 

  首先需要安装这个插件,Eclipse 3.0.1为我们提供了更加方便的插件管理方式,选择菜单“帮助—软件更新—查找并安装”(本人的Eclipse使用了语言抱汉化,请英文界面用户自行对照),选择“搜索要安装的新功能部件”,操作界面如下:

利用Eclipse开发Hibernate应用程序(生成hbm和POJO) - 阿亮 - 阿亮的博客


  选择“新建远程站点”,填写名称“Hibernate plugin”,下面的URL中填入:http://www.binamics.com/hibernatesync(已关闭)

http://hibernatesynch.sourceforge.net/
如下图:

利用Eclipse开发Hibernate应用程序(生成hbm和POJO) - 阿亮 - 阿亮的博客

  然后在“安装”界面中选中我们刚添加的“Hibernate plugin”,一路Next,Eclipse就可以自己下载完成安装,然后Eclipse自动重启动一次就完成了。

  下面演示一个最简单的单表操作,可以让我们很快熟悉开发过程。我们选择Mysql数据库来做这个应用,首先建立一个数据表,名为user_info,包含id、name、password三个字段,建表语句如下:

# Host: localhost
# Database: test
# Table: 'user_info'

CREATE TABLE `user_info` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(100) NOT NULL default '',
`password` varchar(100) NOT NULL default '',
PRIMARY KEY (`id`)
);

   然后新建一个普通的Java项目:“新建—项目—Java项目”,注意加入Hibernate的所有lib文件,以及mysql的jdbc驱动文件。下 面我们需要在项目中加入一个Hibernate的配置文件,在src目录下选择“新建—其他—hibernate—hibernate configuration file”,如下图:

利用Eclipse开发Hibernate应用程序(生成hbm和POJO) - 阿亮 - 阿亮的博客

  在弹出的界面中,你需要指定要使用的数据库,以及连接数据库所需要的信息,我们对应的选择了数据库为mysql,并配置了数据库的URL和管理员帐号,如下:

利用Eclipse开发Hibernate应用程序(生成hbm和POJO) - 阿亮 - 阿亮的博客

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

  “完成”之后系统会自己生成一个名为“hibernate.cfg.xml”的文件,里面包含了基本的配置信息,如果需要高级配置,可以手动添加。
  下面我们要生成映射文件,首先新建一个包“org.bromon.zizz.pojo”,在这个包下选择“新建—其他—hibernate—hibernate mapping file”,在弹出的界面中点击“刷新”,讲会列出库中所有的数据表,选中我们要使用的“user_info”表,以及我们要生成的pojo文件所在的包:org.bromon.zizz.pojo。如下图:

利用Eclipse开发Hibernate应用程序(生成hbm和POJO) - 阿亮 - 阿亮的博客

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

利用Eclipse开发Hibernate应用程序(生成hbm和POJO) - 阿亮 - 阿亮的博客

  该操作将生成三个包八个类文件,里面封装了Hibernate的操作细节,让我们可以专心面对业务逻辑的开发,仔细阅读这些文件可以提高你对Hibernate的认识,增长应用技巧。

  然后我们需要在Hibernate的配置文件中添加对UserInfo的相关信息,在UserInfo.hbm上选择“Synchronizer—Add Mapping Reference”。现在我们可以开始编写自己的程序逻辑了,代码可以写在org.bromon.zizz.pojo.dao. UserInfoDAO中,这个类的代码不会被插件修改。我们首先创建一条新的记录,在该类中加入一个main方法:

public static void main(String args[])
{
 try
 {
  _RootDAO.initialize();
  UserInfoDAO uid=new UserInfoDAO();

  org.bromon.zizz.pojo.UserInfo ui=new org.bromon.zizz.pojo.UserInfo();
  ui.setName("bromon");
  ui.setPassword("123");

  uid.save(ui);

 }catch(Exception e)
 {
  e.printStackTrace();
 }
}

  可以看出,插件已经把session操作和事务操作都封装起来了,我们的代码工作得到了极大的简化。而且我们可以利用插件自带的Hibernate editor来编辑hbm文件,非常方便,我们需要把ID的生成方式改为“identity”:

利用Eclipse开发Hibernate应用程序(生成hbm和POJO) - 阿亮 - 阿亮的博客

   要让这个程序正常运行,还需要对配置文件hibernate.cfg.xml作一些修改。值得注意的是,请不要在该插件以外的环境中修改配置文件(比如 使用DreamWeaver之类的工具编辑文件),否则会造成系统与资源不同步的错误,这可能是插件的一个bug。使用Eclipse的“文本编辑器”打 开该文件,其中有如下的内容:

<property name="hibernate.transaction.factory_class">
net.sf.hibernate.transaction.JTATransactionFactory
</property>
<property name="jta.UserTransaction">
java:comp/UserTransaction
</property>

  由于在我们的例子中,并没有使用JTA来控制事务,所以需要将上面的内容注释掉,程序才能正常运行。

  OK,Run一下,可以看到数据已经被保存到数据库。

  如果在实际开发工作中,需要重新设计数据表结构,那么只需要在.hbm文件中做相应的修改,然后执行“Synchronize and Overwrite”的操作,插件会重新生成存根文件,我们只需要修改程序逻辑就可以了,非常方便。有了这样的功能插件,我们可以极大的从配置文件的编写、查错中解脱出来,从而提高我们的工作效率。

分享到:
评论

相关推荐

    利用Eclipse 开发Hibernate 应用程序

    介绍如何用Eclipse 开发Hibernate 应用程序,简单易懂,图文解说。 利用Eclipse 开发Hibernate 应用程序.rar

    利用Eclipse开发Hibernate应用程序(1)

    本文主要介绍如何利用HibernateSyn插件在Eclipse3.0.1中快速的开发Hibernate应用程序,提高我们的工作效率。关于Hibernate框架的细节,本文不做过多的讨论,请参考相关资料,推荐《Hibernateinaction》一书。 首先...

    利用Eclipse开发Hibernate应用程序(2)

    hibernate?hibernatemappingfile”,在弹出的界面中点击“刷新”,讲会列出库中所有的数据表,选中我们要使用的“user_info”表,以及我们要生成的pojo文件所在的包:org.bromon.zizz.pojo。如下图: 在上述界面的...

    Eclipse Hiberbate

    利用Eclipse开发Hibernate应用程序

    快速的开发Hibernate应用程序

    介绍如何利用Hibernate Synchronizer插件在Eclipse 3.0.1中快速的开发Hibernate应用程序,提高我们的工作效率。  Eclipse是目前非常流行的开发平台,开放扩展的架构让很多程序员找到了自己个性化的工作环境,...

    精通Eclipse.pdf

    利用Eclipse开发Java程序;Eclipse下SWT、Junit、Ant的使用方法以及Web应用开发;Eclipse下Struts、CVS的应用以及数据库构建和WebService应用开发;Eclipse下的Hibernate、Spring及其他插件的应用和开发;电子商务...

    精通Eclipse

    利用Eclipse开发Java程序;Eclipse下SWT、Junit、Ant的使用方法以及Web应用开发;Eclipse下Struts、CVS的应用以及数据库构建和WebService应用开发;Eclipse下的Hibernate、Spring及其他插件的应用和开发;电子商务...

    EclipseSWT/CS Hibernate

    本资源是利用Eclipse SWT 结合Hibernate ORM技术开发的Demo,下载之前请看清楚了在下载,免得消耗大家的分数。哈哈。里面包含可运行的jar包桌面应用程序。

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    4.4.2 创建和发布Servlet应用程序 4.5 小结 第五章 Eclipse使用指南 5.1 Eclipse简介 5.1.1 Eclipse的历史 5.1.2 Eclipse的运行机制 5.2 建立Eclipse的开发环境 5.2.1 下载Eclipse 5.2.2 配置Eclipse 5.3 整合...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    4.4.2 创建和发布Servlet应用程序 4.5 小结 第五章 Eclipse使用指南 5.1 Eclipse简介 5.1.1 Eclipse的历史 5.1.2 Eclipse的运行机制 5.2 建立Eclipse的开发环境 5.2.1 下载Eclipse 5.2.2 配置Eclipse 5.3 整合...

    经典JAVA.EE企业应用实战.基于WEBLOGIC_JBOSS的JSF_EJB3_JPA整合开发.pdf

    中文名: 经典Java EE企业应用实战--基于WebLogic/JBoss的JSF+EJB 3+JPA整合开发 原名: 经典Java EE企业应用实战--基于WebLogic/JBoss的JSF+EJB 3+JPA整合开发 作者: 李刚 资源格式: PDF 版本: 第一版 出版社: 电子...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    4.4.2 创建和发布Servlet应用程序 4.5 小结 第五章 Eclipse使用指南 5.1 Eclipse简介 5.1.1 Eclipse的历史 5.1.2 Eclipse的运行机制 5.2 建立Eclipse的开发环境 5.2.1 下载Eclipse 5.2.2 配置Eclipse 5.3 整合...

    Java开发利器Myeclipse

    MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能...

    myeclipse.exe

    MyEclipse企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的...

    Myeclipse+sqlserver配置安装录像

    MyEclipse企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的...

    javaweb移动开发程序设计的环境软件 Myeclipse

    MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的...

    myeclipse2017

    CI4_pjwj_itmop.com.rar,软件平台,MyEclipse企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极...

Global site tag (gtag.js) - Google Analytics