Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1106503
  • 博文数量: 165
  • 博客积分: 3900
  • 博客等级: 中校
  • 技术积分: 1887
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-06 15:15
文章分类

全部博文(165)

文章存档

2020年(3)

2019年(8)

2017年(2)

2016年(8)

2015年(14)

2013年(15)

2012年(32)

2011年(11)

2010年(14)

2009年(7)

2008年(20)

2007年(31)

分类: Java

2008-01-15 02:55:12


Hibernate应用开发完全手册

2007-9-12 16:33:00
图书导读

当前章节:

·
·
·
·
·
·

2.8  在Eclipse上创建Hibernate实例

本节将通过实现用户查询模块介绍在Eclipse中创建Hibernate实例的具体方法。

*   文件位置:mr\02\fl\01\EclipseApplication

*  视频录像:mr\02\lx\Eclipse上创建Hibernate实例.exe

2.8.1  在J2EE Development视图模式下新建项目

本例应用的Eclipes版本为Eclipes 3.2,在Eclipse开发工具下新建项目的具体步骤如下。

(1)打开Eclipes 3.2开发界面,如图2.32所示。

图2.32  Eclipes 3.2开发界面

(2)在菜单栏中,依次单击“文件”→“新建”→ “项目”菜单项,打开“新建项目”对话框,在该对话框中,依次展开“MyEclipse”→“J2EE Projects”节点,并选择“J2EE Projects”节点下的“Web Project”节点,如图2.33所示。

图2.33  “新建项目”对话框

(3)单击【下一步】按钮,将打开新建Web工程对话框,在该对话框的“Project Name”文本框输入工程名称,这里输入工程名称为“EclipseApplication”,其他文本框保持默认设置即可,如图2.34所示。

图2.34  新建Web工程对话框

(4)单击【完成】按钮,完成新建项目的工作。

2.8.2  将数据库驱动包导入Eclipse中

本实例主要应用SQL Server 2000作为数据库驱动包,将其导入Eclipse的具体步骤如下。

(1)在菜单栏中,依次选择“窗口”→“首选项”菜单项,将打开“首选项”对话框。在该对话框中,依次展开“MyEclipse”→“Database Explorer”→“Drivers”节点,如图2.35所示。

图2.35  “首选项”界面

(2)单击【New】按钮,将打开新建数据库驱动对 话框,在该对话框的Driver template下拉列表框中选择“Microsoft SQL Server”列表项;在“Connection URL”文本框中输入“jdbc:microsoft:sqlserver://localhost:1433”;在“Driver JARs”选项卡中,单击【Add JARs】按钮,选择SQL Server 2000的3个驱动包(msbase.jar、mssqlserver.jar和msutil.jar);其他文本框中的内容系统会自动生成,如图 2.36所示。

图2.36  新建数据库驱动对话框

(3)依次单击图2.36和图2.35对话框中的【确定】按钮,完成导入数据库驱动的工作。

2.8.3  在Hibernate视图模式下建立数据库连接

在Hibernate视图模式下建立数据库连接的具体步骤如下。

(1)在Eclipse 3.2的主窗口中,单击右侧的按钮,将弹出选择视图快捷菜单,如图2.37所示。

图2.37  选择Hibernate视图模式

(2)选择“My Eclipse Hibernate”菜单项,进入Hibernate视图工作模式,在DB Browser工作区域中,单击鼠标右键弹出New快捷菜单,如图2.38所示。

图2.38  Hibernate视图工作模式

(3)单击New菜单项,将打开选择数据库驱动对话框。在该对话框中,profile name文本框中输入“JDBC”,在Driver下拉列表框中选择“Microsoft SQL Server”列表项,其他文本框保持默认设置,如图2.39所示。

图2.39  选择数据库驱动对话框

(4)单击【下一步】按钮,将打开选择数据库对话框。在该对话框中,选中“Display the selected schemas”单选按钮,如图2.40所示。

图2.40  选择数据库对话框

(5)单击【Add】按钮,将打开数据库提示信息对话框,直接单击【确定】按钮,将打开输入登录数据库密码的对话框,在Enter your password文本框中不用输入任何内容,如图2.41所示。

图2.41  输入登录数据库用户密码的对话框

(6)单击【确定】按钮,将打开选择数据库对话框,这里选择数据库db_database02(读者可以在光盘中找到该数据库),如图2.42所示。

图2.42  选择操作数据库对话框

(7)单击【确定】按钮,回到选择数据库对话框,如图2.43所示。

(8)单击【完成】按钮,完成在Hibernate视图模式下建立数据库连接的工作。

图2.43  已经添加数据库的选择数据库对话框

2.8.4  在J2EE Development视图模式下建立存放类的包文件夹

在J2EE Development视图模式下,建立存放类的包文件夹的具体步骤如下。

(1)在Eclipse 3.2的主窗口中,单击右侧的按钮,回到J2EE Development视图模式。在包资源管理器中,展开EclipseApplication文件包,右键单击src,在弹出的快捷菜单中选择“新建”→“包”菜单项,如图2.44所示,将打开“新建Java包”对话框。

图2.44  新建“包”选项

(2)在“名称”文本框中输入“com.fornBean”,如图2.45所示。

图2.45  新建包对话框

(3)单击【完成】按钮,完成新建包的工作。

2.8.5  将Hibernate3.2类库构建到Eclipse中

将Hibernate3.2类库构建到Eclipse中的具体步骤如下。

(1)在Eclipse的菜单栏中,依次单击“窗口”→“首选项”菜单项,将打开“首选项”对话框。在该对话框中,依次展开“Java”→“构建路径”→“用户库”节点,如图2.46所示。

图2.46  选择用户库

(2)单击【新建】按钮,将打开“新建用户库”对话框。在该对话框中,在“用户库名称”文本框中输入“Hibernate3.2”,如图2.47所示。

(3)单击【确定】按钮,完成新建用户库名称的工作。

(4)这时图2.46中的“已定义的用户库”栏中将 出现“Hibernate3.2”选项,如图2.48所示。选择“Hibernate3.2”,单击右侧的【添加JAR】按钮,将打开用于选择 Hibernate3.2文件包的对话框,在该对话框中选择“Hibernate3.2”文件包,单击【确定】按钮,返回选择用户库对话框,如图2.48 所示。

           

 图2.47  “新建用户库”对话框                     图2.48  添加新用户库后的对话框

(5)单击【确定】按钮,完成新建用户库的工作。

说明:构建JDBC类库路径的方法与构建Hibernate3.2类库路径的方法是相同的,这里就不再赘述了。

2.8.6  将Hibernate3.2类库引入到工程中

将Hibernate3.2类库引入到工程中的具体步骤如下。

(1)在Eclipse的菜单栏中,依次选择 “MyEclipse”→“Add Hibernate Capabilities”菜单项,将打开如图2.49所示对话框。在该对话框中勾选“User Libraries”复选框,在下面的列表框中勾选“JDBC - ”和“Hibernate3.2 - ”复选框。

图2.49  新建Hibernate向导第一步对话框

(2)单击【下一步】按钮,打开如图2.50所示对话框。在该对话框中将“Configuration Folder”文本框中的内容修改为src。

图2.50  新建Hibernate向导第二步对话框

(3)单击【下一步】按钮,打开如图2.51所示对话框。在该对话框的“DB Profile”下拉列表框中选择“JDBC”项,其他文本框的内容将自动生成。

(4)单击【下一步】按钮,打开如图2.52所示对话框。在该对话框中,取消“Create SessionFactory class”选项的勾选。

(5)单击【完成】按钮,完成将Hibernate包导入工程的操作。这时系统将自动生成hibernate.cfg.xml文件。

图2.51  新建Hibernate向导第三步对话框

图2.52  新建Hibernate向导第4步对话框

2.8.7  在Hibernate视图模式下生成持久化类和映射文件

文本框:  
图2.53  选择“Hibernate Reverse
Engneering”菜单项在Hibernate视图模式下建立表的映射关系的具体步骤如下。

(1)在Eclipse的菜单栏中,单击右侧的按 钮,返回到Hibernate视图模式下。在DB Brower区域中,依次展开“JDBC”→“Connected to JDBC”→“db_database02”→“dbo”→“TABLE”节点后,在tb_user节点上单击鼠标右键,在打开的快捷菜单中选择 “Hibernate Reverse Engneering”菜单项,如图2.53所示,将打开对数据表进行操作的“Hibernate Reverse Engineering”对话框。

(2)在“Hibernate Reverse Engineering”对话框中,勾选“Hibernate mapping file (*.htm.xml)for each database tabl”和“Java Data Object (POJO<> DB Table)”两个复选框。单击“Java src folder”文本框后面的【Browse】按钮,将打开用于选择包文件夹的“Java Source Folder”对话框,在该对话框中,依次展开“EcplipseApplication”→“src”节点,并选src节点下的 “com.formBean”节点,如图2.54所示。

图2.54  选择包文件夹对话框

(3)单击【确定】按钮,完成导入类包的工作,在对数据表进行操作的“Hibernate Reverse Engineering”对话框中会自动生成相关信息,如图2.55所示。

图2.55  “Hibernate Reverse Engineering”对话框

(4)单击【完成】按钮,系统将自动生成持久化类和映射文件。

2.8.8  系统自动生成的配置文件、持久化类和映射文件

经过上面的操作,系统已经自动生成了Hibernate配置文件、持久化类文件和映射文件,下面将给出这3个文件的具体代码。

1.Hibernate配置文件

Hibernate配置文件hibernate.cfg.xml的关键代码如下。

          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

          "">

   

        sa

       

            jdbc:microsoft:sqlserver://localhost:1433

       

       

            org.hibernate.dialect.SQLServerDialect

       

        JDBC

       

            com.microsoft.jdbc.sqlserver.SQLServerDriver

       

       

   

2.持久化类

根据数据表tb_user中的字段,自动生成持久化类TbUser.java的关键代码如下。

package com.formBean;

import java.util.Date;

public class TbUser  implements java.io.Serializable {

     private String name;

     private String sex;

     private Date born;

     private String profession;

    public TbUser() {

    }

    public TbUser(String name) {

        this.name = name;

    }

    public TbUser(String name, String sex, Date born, String profession) {

        this.name = name;

        this.sex = sex;

        this.born = born;

        this.profession = profession;

    }

    public String getName() {

        return this.name;

    }

        public void setName(String name) {

        this.name = name;

    }

    public String getSex() {

        return this.sex;

    }

        public void setSex(String sex) {

        this.sex = sex;

    }

    public Date getBorn() {

        return this.born;

    }

        public void setBorn(Date born) {

        this.born = born;

    }

    public String getProfession() {

        return this.profession;

    }

        public void setProfession(String profession) {

        this.profession = profession;

    }

   }

3.映射文件

与持久化类TbUser对应的映射文件TbUser.hbm.xml的关键代码如下:

   

       

            

           

       

       

           

       

       

           

       

       

           

       

   

2.8.9  创建业务逻辑类

通过包资源管理器,在com.formBean包下建立名称为TbHibernateDao.java的类文件,并编写如下代码。

package com.formBean;

import java.util.List;

import org.hibernate.Query;

import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.hibernate.Transaction;

import org.hibernate.cfg.Configuration;

public class TbHibernateDao {

    private static SessionFactory sessionFactory=null;

    private Session session=null;

    Transaction tx = null;

       static {

           try {

               Configuration config = new Configuration().configure();

               sessionFactory = config.buildSessionFactory();

           } catch (Exception e) {

               System.out.println(e.getMessage());

           }

       }

       public List selectManager() {

            session = sessionFactory.openSession();

            tx = session.beginTransaction();

            String hql = "from TbUser";

            List list = null;

            try {

                Query query = session.createQuery(hql);

                list = query.list();

            } catch (Exception e) {

                System.out.println(e.getMessage());

            }

            tx.commit();

            session.close();

            return list;

        }

}

2.8.10  创建JSP页面文件

通过包资源管理器,在WebRoot文件夹下建立名称为index.jsp的页面文件,并对该文件进行修改,具体代码如下:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>

<%@page import="java.util.List"%>

在Eclipse创建<b style="color: black; background-color: rgb(255, 255, 102);">Hibernate实例</b>

 

   

   

   

   

 

<%

List list=dao.selectManager();

for(int i=0;i

TbUser form=(TbUser)list.get(i);

%>

 

   

   

   

   

 

<%}%>

用户名 性别 出生日期 职业
<%=form.getName()%> <%=form.getSex()%> <%=form.getBorn()%> <%=form.getProfession()%>

2.8.11  发布并运行程序

通过Eclipse开发工具进行程序发布并运行的具体步骤如下。

(1)在Eclipse工具栏中,单击,打开“Project Deployments”对话框,如图2.56所示。

图2.56  “Project Deployments”对话框

(2)单击【Add】按钮,打开如图2.57所示 “New Deployment”对话框,在该对话框中,在“Server”下拉列表中选择“Tomcat5”,单击【完成】按钮,返回到“Project Deployments”对话框,在该对话框中单击【确定】按钮,完成选择Web服务器的工作。

图2.57  “New Deployment”对话框

(3)在工具栏中,依次单击按钮,在弹出的快捷菜单中选择“Tomcat 5”→“Start”菜单项,如图2.58所示,启动Tomcat服务器。

(4)在IE地址栏中输入,运行结果如图2.59所示。

      

   图2.58  启动Tomcat服务器                          图2.59  实例运行结果

阅读(2261) | 评论(0) | 转发(0) |
0

上一篇:spring 快速入门

下一篇:Shell Cleartool import

给主人留下些什么吧!~~