MyEclipse数据库教程:使用Hibernate开发Persistence(二)

本教程介绍了Hibernate开发的基本技术。通过本文,您将创建一个可使用Hibernate将文本消息持久保存到单个数据库表的简单应用程序。

在  

5、使用HQL Editor

通过以下步骤使用ECHO_MESSAGE表(该表是使用本教程开始时提供的SQL命令添加的)。

  • 映射到ECHO_MESSAGE表。

  • 右键单击HibernateDemo项目,然后选择MyEclipse>打开HQL Editor。

注意:每次打开扩展名为.hql的文件时,HQL Editor都会打开。

MyEclipse数据库教程:使用Hibernate开发Persistence(二)
  • 编辑器打开后,输入EchoMessage。

  • 单击运行图标或按CTRL + F9执行查询。

hibernate-hql-1-annot.png
  • 使用查询参数视图执行变量查询。

1.png

注意:在为项目初始化HQL Editor后更改配置、映射或数据对象,请使用编辑器工具栏上的“Refresh”按钮以确保编辑器选择了最新的更改。

如果您正在编辑一个NamedQuery注释,可以在查询属性重调用quick fix(通常为CTRL + 1)来复制到HQL Editor。这将打开HQL编辑器,并使用查询字符串对其进行初始化。

MyEclipse数据库教程:使用Hibernate开发Persistence(二)

您可以在HQL Editor中测试和编辑查询。完成后,关闭编辑器可让您将修改后的查询复制回Java编辑器中的query属性。

打开项目的HQL Editor后,将为NamedQueries提供内容辅助和验证(CTRL +空格键)。

hibernate-hql-ac.jpg

6、测试HibernateDemo应用程序

测试Hibernate持久性的一种方法是使用main方法创建Java类。测试类使用Java对象和由Hibernate向导创建的HibernateSessionFactory。查看在HibernateSession类中定义的两个重要方法,如下所示,它们在测试代码中使用。

MyEclipse数据库教程:使用Hibernate开发Persistence(二)

显示的是SessionManager类中的两个重要的静态方法。

  • getSession():此方法返回一个Session变量,可用于访问Hibernate Session类。每当您要使用Hibernate会话时,都可以调用此方法来获取缓存的Hibernate Session。

  • closeSession():如果会话已经启动,则此方法可将其关闭。

以下是测试代码中的步骤列表以及源代码示例:

  • 选择File > New > Class。

  • 输入包名称。

  • 在Name字段中输入HibernateReadTest。

  • 如图所示完成页面,然后单击“完成”。

MyEclipse数据库教程:使用Hibernate开发Persistence(二)
  • 打开HibernateReadTest.java文件,将源代码替换为下面的代码,然后按CTRL + S保存。

package com.myeclipse.hibernate;  import java.math.BigDecimal;import org.hibernate.HibernateException;  public class HibernateReadTest {   public static void main(String[] args) {     // Step 1 - Create the DAO     EchoMessageDAO dao = new EchoMessageDAO();    try {     // Step 2 - Use findById to retrieve the message with ID = 1      EchoMessage echoMessage = dao.findById(new BigDecimal(1));      System.out.println("Entity retrieval successful, message is: "        + echoMessage.getMsg());     } catch (HibernateException e){      System.err.println("Entity retrieval failed.");       e.printStackTrace();     } finally {       try {          dao.getSession().close();       } catch (Exception e) {         // do nothing       }     }   }}
  • 在资源管理器中右键单击HibernateReadTest.java文件,然后选择 Run > Run As > Java Application。将打开“Console”视图,如果测试成功,您将看到如下图所示的输出。

注意:如果看到log4j警告,可以忽略。

MyEclipse数据库教程:使用Hibernate开发Persistence(二)

7、导入示例HibernateDemo项目

  • 下载HibernateDemo.zip

  • 从菜单中选择Import > Existing Projects into Workspace,选择“Select archive file”选项,然后导航至zip文件。单击完成将项目导入到工作区中。

  • 由于此项目是使用旧版本的MyEclipse创建的,因此将打开“Project Migration”向导。请按照向导中的步骤迁移项目。

  • 进行以下操作重新配置项目来匹配您的环境。

a、编辑hibernate.cfg.xml并更改连接设置以反映您的数据库设置。提示:可能需要更改EchoMessage.hbm.xml才能改变在class元素中指定的模式。

b、建立与数据库的连接,并执行DDL/DDL.sql文件中的代码创建并填充示例表。在执行之前,可能需要使用模式前缀来限定表,并对数据库特定的DDL进行其他更改。

c、将数据库的JDBC驱动程序JAR复制到项目中。右键单击项目,然后选择build path > Add to build path,将其添加到构建路径中。

本教程还包括以下文件:

  • log4j.properties – 用于控制log4j库执行的日志记录级别。

  • ehcache.xml – 用于配置ehcache库。

  • HibernateWriteTest.java – 一个示例应用程序,演示了如何使用DAO来写数据库。


想进一步了解MyEclipsstrong>【MyEclipse官方中文网】知你所需,解你所惑!

想与更多人聊MyEclips入MyEclipse中国(官方2):742336981畅所欲言吧!

想及时获取MyEclips资讯描下方二维码,MyEclips信息跟你走!

MyEclipse数据库教程:使用Hibernate开发Persistence(二)

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年10月2日
下一篇 2019年10月2日

相关推荐

发表回复

登录后才能评论