UML软件工程组织

利用Eclipse开发Hibernate应用程序 (2)
Java研究组织 bromon

 

下面我们要生成映射文件,首先新建一个包“org.bromon.zizz.pojo”,在这个包下选择“新建?其他?hibernate?hibernate mapping file”,在弹出的界面中点击“刷新”,讲会列出库中所有的数据表,选中我们要使用的“user_info”表,以及我们要生成的pojo文件所在的包:org.bromon.zizz.pojo。如下图:


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


  该操作将生成三个包八个类文件,里面封装了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”:


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

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

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

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

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

版权所有:UML软件工程组织