站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Eclipse 专题在Eclipse中使用Hibernate插件

在Eclipse中使用Hibernate插件

摘要: 我开始使用Eclipse作为我的开发环境。这部分是由于它支持我开发时所使用的许多平台
  最近,我开始使用Eclipse作为我的开发环境。这部分是由于它支持我开发时所使用的许多平台,部分是由于Eclipse是开放的可扩展环境的杰出代表,大家都可以为它的发展贡献自己的力量。我正开始调查人们已经提出的一些扩展。例如,我使用了一个叫做XMLBuddy的小插件来处理XML文件,它很有用。所以,我开始好奇是否有人已经编写了使用Hibernate的插件,最近在编写Developer's Notebook一书时,我做了大量这方面的工作。结果我了解到,这方面确实有一些工作正在进行,本文将探讨其中之一——Hibernate Synchronizer。

  Hibernate Synchronizer

  迄今为止,在我找到的插件中,Hibernate Synchronizer最令我感兴趣,因为看起来它对以映射为中心的工作流提供了最好的支持,而我的Developer's Notebook一书中就采用了这种工作流。(Hibernate可以用于多种用途,所以请查看可用的其他插件,如果您的环境需要其他方法,这些插件将更有帮助。)事实上,Hibernate Synchronizer插件让您在修改映射文档时,无需考虑更新Java代码,它会在您进行编辑的时候以一种非常类似于Eclipse的方式自动更新Java代码。通过为每个被映射的对象创建一对类,它比Hibernate的内置代码生成工具更为先进。它“拥有”一个基类,当您修改映射时,它可以随意重写这个基类。它还提供一个扩展了这个基类的子类,可以在这个子类中加入业务逻辑和其他代码,而无需担心它会在您眼皮底下消失。

  因为要适用于以Hibernate映射文档为中心的方法,Hibernate Synchronizer还包括一个用于Eclipse的新编辑器组件,为此类文档提供智能辅助和代码自动完成功能。优秀的DTD驱动的XML编辑器(比如前面提到过的XMLBuddy)可以实现其中的一些功能,但是Hibernate Synchronizer利用对文档语义的理解做得更好。它还提供了一个映射中的属性和关系的图形化视图、创建新元素的“向导”界面,以及其他类似的优点。而且如前所述,在其默认配置中,编辑器会在用户编辑映射文档时自动重新生成数据访问类。

  Hibernate Synchronizer还有其他的功能。它在Eclipse的New菜单中加入了一个区域,为创建Hibernate配置和映射文件提供向导,并在包的资源管理器和其他适当的位置中添加了上下文菜单项,使用户可以轻松访问相关的Hibernate操作。

  好了,现在已经有了足够多的抽象描述,是时候开始实践了!毕竟,您很可能对此产生了兴趣,要不您就不会阅读本文。那么,如何安装与使用Hibernate Synchronizer呢?

  安装

  可以使用Eclipse的内置Update Manager安装Hibernate Synchronizer。该插件为Eclipse 2.1和即将发布的Eclipse 3的用户提供独立的更新站点。因为我把Eclipse用于任务关键型的工作,所以我使用的仍然是生产版本,即2.1。在我撰写本文时,Eclipse 3已经进入了“发布候选(release candidate)”阶段。今年夏末,当我从JavaOne会议回来的时候,我非常希望能够升级到生产版本3。(我提及这一点的主要原因是强调下面的指导是基于Eclipse 2而编写的;在Eclipse 3中,某些命令和界面无疑会有所不同,所以如果您准备使用它,确保在遵照这些步骤的同时还要加入自己的判断!我的印象是Hibernate Synchronizer自己的安装指导是针对Eclipse 3编写的,也许这对您会有所帮助。)

  启动Eclipse,选择Help -> Software Updates -> Update Manager,便可以打开Update Manager。Install/Update透视图打开之后,在Feature Updates视图中右击(或者控件单击(control-click),如果您使用的是单按钮鼠标),选择New -> Site Bookmark,如图1所示。


图1. 向Update Manager添加Hibernate Synchronizer插件站点

  在出现的对话框中,输入所需插件版本的URL。输入的URL取决于您的Eclipse版本:

  • Eclipse 2.1: http://www.binamics.com/hibernatesync/eclipse2.1
  • Eclipse 3: http://www.binamics.com/hibernatesync

  还需为新的书签指定一个名称,“Hibernate Synchronizer”就很好。图2显示的对话框包括了我的Eclipse 2.1.2环境中的所有必需信息。


图2. Hibernate Synchronizer插件更新站点的书签

  单击Finish之后,新的书签将出现在Feature Updates视图中,如图3所示。


图3. Hibernate Synchronizer站点现在可用了

  为了实际安装插件,单击书签左侧的三角形展开符号,然后单击其中的下一个三角形展开符号,重复这个过程,直到出现插件的图标为止。单击该图标,Preview视图就会更新,从而显示一个允许安装插件的界面,如图4所示。


图4. 准备安装插件

  单击Install Now,实际安装插件,让Eclipse引领您完成整个过程(图5-10)。


图5.安装Hibernate Synchronizer


图6. 插件许可证协议

  可参见下面的权衡部分,其中有关于许可证协议的一些讨论。在决定在自己的项目中使用Hibernate Synchronizer之前,您可能想仔细阅读一下它。我认为这是很好的做法,但是令人困惑的是,它基于GPL,实际上并非是开源的。


图7. 选择安装插件的位置,使用默认的就可以


图8.对没有签名的插件发出的标准警告


图9.正在安装


图10.安装完毕

  现在插件已经安装完毕,需要退出并重新运行Eclipse,以便使其生效。出现的对话框似乎暗示Eclipse将自动重启,但是根据我的经验,单击Yes只会退出环境,必须手动重启。这可能是Eclipse 2.1的Mac OS X实现的一个局限性;Eclipse 3将成为首个承诺对OS X提供一流支持的版本。不管怎么说,这是一个小问题。如果需要重启Eclipse,现在就重启吧,因为应该开始配置插件了!




↑返回目录
前一篇: Eclipse中插件开发之SQLExplorer
后一篇: Eclipse插件开发之定制向导