📄 myeclipse_hibernate_quickstart_zh_cn.html
字号:
</tr>
<tr>
<td class="codeBody" align="left"><!--StartFragment --><!--StartFragment --><code>CREATE TABLE echo_message<br>
(
<br> id integer PRIMARY KEY not null,
<br> msg VARCHAR(255)
<br>);<br><br>insert into echo_message values(1, 'hello world');<br>insert into echo_message values(2, 'goodbye world');<br></code></td>
</tr>
</tbody>
</table>
<p>一般的在你进行 Hibernate 开发之前你需要一个能够访问的 Database Explorer 连接配置. 在这个教程中,
我们使用 Oracle 数据库连接配置, 这个配置在 <a href="http://127.0.0.1:61071/help/topic/com.genuitec.eclipse.sqlexplorer.doc/doc/quickstarts/dbexplorer/index.html">
Database Explorer 快速入门</a> 教程中创建.<br>
<br>
<strong><u>注意:</u></strong> 尽管这个快速入门使用了
Oracle, 但是这些步骤和上面的表格基本上是通用的, 可以在任何数据库下工作.
<br><strong><a href="#top">返回页首</a></strong></p>
<hr>
<h3>5.1 <a name="5-1"></a>创建 <em>HibernateDemo</em> Java Project</h3>
<p class="normal"><br>
我们先来创建一个普通的名为 <em>HibernateDemo</em> 的 Java 项目, 这个项目读取写入数据到 <em>echo_message</em>
数据库表.</p>
<ol>
<li>从 MyEclipse 菜单栏选择 <strong>File > New >
Project > Java Project</strong>. 接着会打开 New Java
Project 向导. </li>
<li>输入 <em>HibernateDemo</em> 到 <strong>Project name</strong> </li>
<li>在 Project Layout 下选中 <strong>Create separate source and output folders</strong> 单选钮. </li>
<li>选择 <strong>Finish</strong> 来完成这个页面, 如图 1 所示</li>
<br>
<img alt="" src="MyEclipse_Hibernate_Quickstart_zh_CN_files/hibernate-newjavaproject.gif" border="0"><br>
<font class="figureCaption">图 1. 新建 <em>HibernateDemo</em>
项目</font><br>
</ol>
<p class="normal"><strong><a href="#top">返回页首</a></strong></p>
<hr>
<h3>5.2 <a name="5-2"></a>添加 Hibernate Capabilities 到
<em>HibernateDemo</em> 项目 </h3>
<p class="normal"> </p>
<p class="normal">现在 <em>HibernateDemo</em> 项目已经创建, 我们将添加 MyEclipse Hibernate 功能到这个项目. 这个基于向导的处理过程执行了下面的操作:</p>
<ul>
<li>添加 Hibernate 类库 (JARs) 到项目的类路径. </li>
<li>在项目中创建并配置 hibernate.cfg.xml </li>
<li>在项目中创建自定义的 Session Factory 类来简化 Hibernate 会话处理</li>
</ul>
<p class="normal">我们通过打开 MyEclipse Add Hibernate
Capabilities 向导来开始:</p>
<ol>
<li>在 <strong>Package Explorer</strong> 中选择 <em>HibernateDemo</em>
项目 </li>
<li>接下来, 从 MyEclipse 菜单栏选择 <strong>MyEclipse
> Add Hibernate Capabilities ...</strong> 来启动向导 (参考图 2).<br>
<br>
<img alt="" src="MyEclipse_Hibernate_Quickstart_zh_CN_files/hibernate-addcap-menu.gif" border="0"><br>
<font class="figureCaption">图 2. 启动
"Hibernate Support" 向导</font><br>
<br>
<br>
<img alt="" src="MyEclipse_Hibernate_Quickstart_zh_CN_files/hibernate-addhibcap-1.gif" border="0"><br>
<font class="figureCaption">图 3. 添加 Hibernate 支持到
Java 项目</font><br>
<br>
</li>
<li>保持 <strong>Hibernate 3.1</strong> specification 选中不变. </li>
<li>选择你需要的类库集合, 在这个示例中 Core 类库足够了. </li>
<li>保持 <strong>Add checked Libraries to project build-path</strong> 选中.
</li>
<li>选择 <strong>Next.</strong>
</li>
</ol>
<blockquote>
<p> <font class="tableTitle">表-1. Hibernate Support
向导 - 第1页选项</font></p>
<table summary="" border="1" cellpadding="1" cellspacing="1" width="600">
<tbody>
<tr>
<td><strong>选项</strong></td>
<td><strong>描述</strong></td>
</tr>
<tr>
<td>
<p align="left"><strong>Hibernate Specification</strong></p>
</td>
<td>
<p align="left">要添加到项目中的 Hibernate 版本支持功能.
为了最大限度的使用 MyEclipse Hibernate 工具, 推荐 Hibernate 3.1.</p>
</td>
</tr>
<tr>
<td>
<p align="left"><strong>MyEclipse/User Libraries</strong></p>
</td>
<td>
<p align="left">可以添加到你的项目的构造路径的类库集合.</p>
</td>
</tr>
<tr>
<td>
<p align="left"><strong>Add checked Libraries to project build-path</strong></p>
</td>
<td>
<p align="left">选中的类库将会添加到你的项目的构造路径中,
但是相应的 JAR 文件将 <strong>不会</strong> 复制到你的项目中.
这些 JAR 文件 <strong>将会</strong> 在发布程序时复制, 这是推荐的设置方式.</p>
</td>
</tr>
<tr>
<td>
<p align="left"><strong>Copy checked Library Jars to project folder and add to build-path</strong></p>
</td>
<td>
<p align="left">选中的类库 JAR 文件将会被复制到你的项目并添加到构造路径中去.</p>
</td>
</tr>
<tr>
<td>
<p align="left"><strong>Library Folder</strong></p>
</td>
<td>
<p align="left"><i>仅在上面的选项选中时可用.</i>
<br>
一个相对于项目的路径, 可以新建或者使用现有目录, Hibernate 类库将会被向导复制到这里.</p>
</td>
</tr>
</tbody>
</table>
</blockquote>
<br>
<ol start="7">
第 2 页 允许你自定义配置文件的名字和路径.
<p><img alt="" src="MyEclipse_Hibernate_Quickstart_zh_CN_files/hibernate-addhibcap-2.gif" border="0"><br>
<font class="figureCaption">图 4. Hibernate 配置文件设置</font></p>
<li>保持 <strong>New</strong> 选中.</li>
<li>完成图 4 中显示的页面然后选择 <strong>Next.</strong>
<p><img alt="" src="MyEclipse_Hibernate_Quickstart_zh_CN_files/hibernate-addhibcap-3.gif" border="0"><br>
<font class="figureCaption">图 5. Hibernate 数据库配置</font></p>
</li>
<li>保持 <strong>Specify datasource connection details?</strong> 选中.
</li>
<li>选中 Oracle 配置, 这个配置在 <a href="http://127.0.0.1:61071/help/topic/com.genuitec.eclipse.sqlexplorer.doc/doc/quickstarts/dbexplorer/index.html">
Database Explorer 快速入门</a> 设置过, 通过 <strong>DB Profile</strong> 下拉框选择.
这将自动填充当前页面中的所有输入框.
<br>
<strong><u>注意:</u></strong> 在这里数据库配置并非必须的;
你可以手工输入所有需要的信息, 不需要选择一个配置.
<br>
在这种情况下, 你必须确保在向导完成后手工复制 JDBC 驱动 JAR 文件到你的项目中.</li>
<li>选择 <strong>Next.</strong>
<p><em>上面进行的数据源配置操作可以现在跳过, 可以在随后的 <a href="#5-3">Hibernate Configuration 编辑器</a> 中进修改.</em></p>
项目的最后一步是配置一个
SessionFactory 类, 这个类将会访问 Hibernate 功能所生成的基础代码. 本向导的截屏如图 6 所示.
<br>
<p><img alt="" src="MyEclipse_Hibernate_Quickstart_zh_CN_files/hibernate-addhibcap-4.gif" border="0"><br>
<font class="figureCaption">图 6. 创建 SessionFactory
详细信息 </font><br>
<br>
</p>
<p><font class="tableTitle">表 3 - Hibernate Support 向导 - 第 3 页选项</font></p>
<table summary="" border="1" cellpadding="1" cellspacing="1" width="600">
<tbody>
<tr>
<td><strong>选项</strong></td>
<td><strong>描述</strong></td>
</tr>
<tr>
<td>
<p align="left"><strong>Create SessionFactory Class?</strong></p> </td>
<td>
<p align="left">如果启用, 向导将会创建一个 Hibernate 会话工厂的新类. </p> </td>
</tr>
<tr>
<td>
<p align="left"><strong>Java source folder</strong></p> </td>
<td>
<p align="left">决定新类将被创建到的源代码目录.</p> </td>
</tr>
<tr>
<td>
<p align="left"><strong>Java package</strong></p> </td>
<td>
<p align="left">指定 Session 工厂将被创建到的包名.</p> </td>
</tr>
<tr>
<td>
<p align="left"><strong>Class name</strong></p> </td>
<td>
<p align="left">指定 Session 工厂类的名字.</p> </td>
</tr>
<tr>
<td>
<p align="left"><strong>Java Compliance Level</strong></p> </td>
<td style="">
<p align="left"> 生成的 Session 工厂类的 Java 编译器等级.</p> </td>
</tr>
</tbody>
</table>
</li>
<li>选中 <strong>Create SessionFactory class</strong>. </li>
<li>选中包输入框右侧的 <strong>New</strong> 按钮然后创建包 <em>com.genuitec.hibernate </em>. </li>
<li>给 <strong>Session
Factory 类 </strong>输入一个名字, 我们使用默认推荐的 <em>HibernateSessionFactory</em>. </li>
<li>完成如图 6 所示的页面, 然后选择 <strong>Finish</strong>.<br>
<br>
<strong><u>注意:</u></strong> Session Factory 也可以在稍后创建, 通过 Session Factory 向导来完成 <strong>(File > New > Other MyEclipse > Hibernate > Hibernate Session Factory)</strong>.
<br>
如果你在第一页选中了复制类库到你的项目中, 在向导完成之后的至多 30 秒内可能失去反应,
因为它将复制类库并更新多种项目资源.
请耐心等待并在进行其它操作之前等待过程的结束.</li>
</ol>
<blockquote style="margin-right: 0px;" dir="ltr">
<p>这个向导结束后将进行下列操作:</p>
<ul>
<li>如果在第一页选择了复制类库到你的项目, 将安装 Hibernate 类库 (JARs) 到项目中 </li>
<li>更新项目的构造路径来包含已安装的 Hibernate
类库 </li>
<li>给项目创建并配置 hibernate.cfg.xml 文件 </li>
<li>为你的项目创建一个自定义的 SessionFactory 类 (例如 HibernateSessionFactory) 来简化 Hibernate 会话会话处理</li>
</ul>
<p class="normal">图 7 高亮显示了新创建的 <em>HibernateSessionFactory.java</em> 文件里面的重要功能. 这个类管理了一个单独的 Hibernate <font face="Courier New">Session</font>
对象, 通过 <font face="Courier New">getSession()</font>
方法进行延迟加载并且在调用 <font face="Courier New">closeSession() </font>方法之后刷新并释放数据. 在运行的时候, Hibernate 会话创建过程必须要能够访问类路径里面的 <em>hibernate.cfg.xml</em> 文件. 变量
CONFIG_FILE_LOCATION 定义了文件 <em>hibernate.cfg.xml</em> 相对于包的路径. 默认值通过 Hibernate 支持向导来提供. 如果你改动了 <em>hibernate.cfg.xml</em> 文件的位置, 你必须手工修改 CONFIG_FILE_LOCATION 的值来引用到新的文件的位置或者可以通过在使用之前调用 <font face="Courier New">setConfigFile()</font> 方法来设置为新的路径.</p>
<p class="normal"><img alt="" src="MyEclipse_Hibernate_Quickstart_zh_CN_files/hibernate-workbench2-annot.gif" border="0"><br>
<font class="figureCaption">图 7. HibernateSessionFactory 类 </font></p>
</blockquote>
<p><strong><a href="#top">返回页首</a></strong></p>
<hr>
<h3>5.3 <a name="5-3"></a>自定义 Hibernate 配置文件</h3>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -