一章StrutsHibernateSpring.ppt
《一章StrutsHibernateSpring.ppt》由会员分享,可在线阅读,更多相关《一章StrutsHibernateSpring.ppt(59页珍藏版)》请在三一办公上搜索。
1、第17章 Struts 2、Hibernate、Spring的整合应用实例,17.1 Spring与Struts 2的整合,17.2 Spring与Hibernate整合,17.3 Struts 2、Hibernate与Spring的整合,17.1 Spring与Struts 2的整合,首先,创建Web项目,命名为Spring_Struts。添加Struts 2所需的5个类库:struts 2-core-2.0.14.jar,xwork-2.0.4.jar,ognl-2.6.11.ar,common-logging-1.0.4.jar,freemarker-2.3.8.jar。然后修改web.
2、xml,代码如下:struts2 org.apache.struts2.dispatcher.FilterDispatcher struts2/*,17.1 Spring与Struts 2的整合,接着创建login.jsp登录页面,该页面非常简单,代码如下:登录界面,17.1 Spring与Struts 2的整合,创建Action类LoginAction.java代码。配置struts.xml文件,代码如下:/login_success.jsp,17.1 Spring与Struts 2的整合,创建login_success.jsp,代码如下:您好!欢迎您登录成功,17.1 Spring与Str
3、uts 2的整合,部署运行项目,测试Struts 2是否正常运行,在浏览器中输入“http:/localhost:8080/Spring_Struts/login.jsp”,在登录框和密码框中输入任意值,单击“登录”按钮,转向登录成功界面,并输出登录名。到此为止,我们仅开发了一个Struts 2的程序,下面介绍如何将Spring融入到项目中。首先,添加Spring框架所需的类库,这里要添加Spring的类库“Spring 2.5 Core Libraries”及“Spring 2.5 Web Libraries”,同时要添加Spring支持的Jar包struts2-spring-plugin.
4、jar。该包位于Struts 2的lib文件夹下,该Jar文件用于支持Spring与Struts 2的整合。在WEB-INF下创建Spring的核心配置文件applicationContext.xml,代码如下:./这里将配置Bean,17.1 Spring与Struts 2的整合,修改web.xml内容,使得项目增加对Spring的支持,代码修改。在项目的src下创建文件struts.properties,编辑代码内容如下:struts.objectFactory=spring上述代码表示Struts 2的对象的生成交由Spring来完成,修改applicationContext.xml,代
5、码如下:,17.1 Spring与Struts 2的整合,完成以后,修改struts.xml如下:/login_success.jsp,17.2 Spring与Hibernate整合,1创建项目首先,创建Web项目,命名为“Spring_Hibernate”。2添加Spring的开发能力在MyEclipse中有对Spring框架的支持,右击项目名,依次选择“MyEclipse”“Add Spring Capabilities”,出现如图17.1所示的对话框,选中要应用的Spring的版本及所需的类库文件。,注意,本书用的Spring版本为Spring 2.5,选择Spring的类库Spring
6、 2.5 Core Libraries、Spring 2.5 Web Labraries、Spring 2.5 AOP Libraries、Spring 2.5 Persistence Core Libraries和Spring 2.5 Persistence JDBC Libraries。,图17.1 添加Spring Capabilities,17.2 Spring与Hibernate整合,单击“Next”按钮,提示是否建立Spring配置文件,在默认情况下选择application Context.xml文件的存放路径,选择在WEB-INF文件夹下,如图17.2所示,然后单击“Finis
7、h”按钮,完成Spring框架的添加。,图17.2 创建applicationContext.xml文件,17.2 Spring与Hibernate整合,3添加Hibernate框架MyEclipse也有对Hibernate框架的支持,右击项目名,依次选择“MyEclipse”“Add Hibernate Capabilities”菜单项,出现如图17.3所示的对话框,选择Hibernate版本及需要的类库。,图17.3 添加Hibernate库,17.2 Spring与Hibernate整合,单击“Next”按钮,出现如图17.4所示的对话框,提示是用Hibernate的配置文件还是用Spr
8、ing的配置文件进行SessionFactory的配置,选择使用Spring来对Hibernate进行管理。这样,最后生成的工程中就不包含hibernate.cfg.xml,可以用Spring来对数据源及SessionFactory进行依赖注入。,用Spring对Hibernate的数据源及SessionFactory进行管理,图17.4 定义Hibernate配置,17.2 Spring与Hibernate整合,单击“Next”按钮,出现如图17.5所示的对话框,提示是否创建一个新的Hibernate配置文件或是使用已有的配置文件。,使用已经存在的Spring配置文件,为SessionFac
9、tory的ID起名,图17.5 定义Spring-Hibernate配置,17.2 Spring与Hibernate整合,单击“Next”按钮,出现要求选择数据库连接信息的对话框。这里选择前面创建的“MBOOKCONN”,在Bean Id中填写“datasource”数据源的Bean名称。在DB Driver中选择“MBOOKCONN”,下面的输入栏会自动填充,出现如图17.6所示的对话框。,为DataSource ID起名,图17.6 指定新的Spring数据源连接信息,17.2 Spring与Hibernate整合,单击“Next”按钮,出现如图17.7所示的对话框,提示是否创建Sessi
10、onFactory类,由于本程序是由Spring注入sessionFactory,所以不用创建,单击“Finish”按钮。,图17.7 定义SessionFactory属性,17.2 Spring与Hibernate整合,生成与数据库表对应的POJO类和对应的映射文件。打开MyEclipse的Database Explorer perspective,打开“MBOOKCONN”,依次选择“MBOOK”“dbo”“TABLE”展开数据库表,本项目选择对“book”表的增、删、改、查操作来讲解Spring与Hibernate的整合,故只需生成“book”表的POJO类及对应的映射文件。右击该表名,
11、选择“Hibernate Reverse Engineering”菜单项,出现如图17.8所示的界面,选择要生成的文件及文件存放的包。,图17.8 Hibernate映射文件和POJO类,17.2 Spring与Hibernate整合,查看项目的目录结构,在org.vo包中,出现了“Book.java”,代码为。还有一个映射文件Book.hbm.xml,代码为。在src文件夹下建立包org.dao,在该包下建立接口,命名为“BookDao”,代码如下:package org.dao;import org.vo.Book;public interface BookDao public void
12、save(Book book);public void delete(String ISBN);public void update(Book book);public Book select(String ISBN);,17.2 Spring与Hibernate整合,在src文件夹下建立包org.dao.impl,在该包下建立类,命名为“BookDaoImpl”,代码。修改Spring配置文件applicationContext.xml,将关系映射注册在该文件中,并依赖注入DAO。代码修改。,17.2 Spring与Hibernate整合,4测试结果准备工作完成后,就可以编写测试类对其进行测
13、试了。在src文件夹下建立包test,在该包下建立类Test,代码。运行该测试类后,查看控制台信息,如图17.9所示。,图17.9 控制台输出结果,17.3 Struts 2、Hibernate与Spring的整合,17.3.1 项目创建首先,创建一个Web工程,命名为“Struts2_Hibernate_Spring”,然后修改web.xml文件,代码修改为。,17.3.2 添加项目开发所需的JARs,在添加项目开发所需的JARs前,首先介绍如何在MyEclipse中自定义User Labraries。右击项目名,依次选择“Build Path”“Configure Build Path”,
14、出现如图17.10所示的对话框,然后单击“Add Library”按钮,出现如图17.11所示的对话框。,图17.10 Properties for Struts 2_Hibernate_Spring对话框 图17.11 Add Library对话框,17.3.2 添加项目开发所需的JARs,选中“User Library”后,单击“Next”按钮,出现如图17.12所示的对话框。,图17.12 用户定义Library对话框,17.3.2 添加项目开发所需的JARs,单击“User Libraries”按钮,出现如图17.13所示的对话框。,图17.13 添加User Libraries对话框
15、,17.3.2 添加项目开发所需的JARs,单击“New”按钮,出现如图17.14所示的对话框。命名后单击“OK”按钮,就会在图17.13中多出刚才自定义的Library,但是该Library中还没有任何的Jar包,所以要为该Library添加Jar包。选中hibernate 3,即刚创建的Library,单击“Add JARs”按钮,找到要添加的Jar包路径,选中这些Jar包后,单击“OK”按钮,就为该Library添加了Jar包。,图17.14“Edit User Library”对话框,17.3.2 添加项目开发所需的JARs,现在可以为项目添加开发类库了。选择“MyEclipse”“A
16、dd Spring Capabilities”,出现选择版本及类库的对话框,如图17.15所示。选择“User Libraries”选项,也就是用户自定义的Libraries,这里的“User Libraries”包括了项目开发用到的所有的JARs,所以在后面为项目添加Hibernate开发能力时,可以不添加任何Jar包。,图17.15 Spring选择类库,17.3.3 实现Hibernate持久层,添加Hibernate的开发框架,右击项目名,依次选择“MyEclipse”“Add Hibernate Capabilities”。前面说过,在添加Spring开发能力时,已经把所需的JARs
17、全部添加进去,所以这里不用再添加Hibernate类库,故在选择Hibernate类库时,无须选择任何类库,单击“Next”按钮即可,添加Hibernate框架、Hibernate的反向工程及文件修改与17.2节中的第3步相同,读者可以自行操作,这里就不再列举了。,17.3.4 编写DAO接口及实现类,“登录”的DAO接口LoginDao.java代码为:package org.dao;import org.vo.Login;public interface LoginDao/查询信息 public Login checkLogin(String name,String password);,
18、17.3.4 编写DAO接口及实现类,LoginDao的实现类LoginDaoImpl.java代码为:package org.dao.impl;import java.util.List;import org.dao.LoginDao;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import org.vo.Login;public class LoginDaoImpl extends HibernateDaoSupport implements LoginDao public Login chec
19、kLogin(String username,String password)Stringstr=username,password;List list=this.getHibernateTemplate().find(from Login where name=?and password=?,str);Login login=null;if(list.size()0)login=(Login)list.get(0);return login;,17.3.4 编写DAO接口及实现类,“图书”的DAO接口BookDao.java代码为:package org.dao;import org.vo.
20、Book;public interface BookDao/保存图书信息 public void addBook(Book book);/删除图书信息 public void deleteBook(String ISBN);/修改图书信息 public void updateBook(Book book);/查询图书信息 public Book selectBook(String ISBN);,17.3.4 编写DAO接口及实现类,BookDao的实现类BookDaoImpl.java的代码为。“读者”的DAO接口StudentDao.java代码为:package org.dao;impor
21、t org.vo.Student;public interface StudentDao public Student selectStudent(String readerId);/查询读者信息,17.3.4 编写DAO接口及实现类,StudentDao接口的实现类StudentDaoImpl.java代码为:package org.dao.impl;import java.util.List;import org.dao.StudentDao;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;impo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- StrutsHibernateSpring
链接地址:https://www.31ppt.com/p-5631846.html