收藏 分销(赏)

整合方式ssh2+mysql详细介绍.doc

上传人:xrp****65 文档编号:7726384 上传时间:2025-01-14 格式:DOC 页数:22 大小:730KB
下载 相关 举报
整合方式ssh2+mysql详细介绍.doc_第1页
第1页 / 共22页
整合方式ssh2+mysql详细介绍.doc_第2页
第2页 / 共22页
点击查看更多>>
资源描述
struts2 + spring2 + hibernate3.1整合 用的工具Tomcat 5.5,MyEclipse6.0,mysql5.5 在mysql中建立数据表users如下: Create table users(id int primary key,username varchar(20),pwd varchar(20)); 1创建工程   2.创建struts2    1.创建action 类 然后导入struts2的包 然后在www底下创建index.jsp 代码如下: <%@ page contentType="text/html; charset=UTF-8" %> <%@ taglib prefix="s" uri="/struts-tags" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Example</title> </head> <body> <table width="300" border="0"> <s:form action="LoginAction" theme="simple"> <tr> <td width=50%>ID:</td> <td width=50%><s:textfield name="id" /></td> </tr> <tr> <td width=50%>用户名:</td> <td width=50%><s:textfield name="username" /></td> </tr> <tr> <td width=50%>密码:</td> <td width=50%><s:textfield name="pwd" /></td> </tr> <tr><td colspan=2 align=center width=100%><s:submit /></td></tr> </s:form> </table> </body> </html> 下面我们开始写LoginAction类: package com.test.action; import com.opensymphony.xwork2.ActionSupport; import com.yyi.bean.Users; import com.yyi.bean.UsersDAO; public class LoginAction extends ActionSupport { private int id; private String username; private String pwd; private UsersDAO dao; private Users user; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String execute() { user=new Users(); user.setId(id); user.setPwd(pwd); user.setUsername(username); dao.save(user); return SUCCESS; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } public UsersDAO getDao() { return dao; } public void setDao(UsersDAO dao) { this.dao = dao; } } 再接下来就是在src目录底下创建一个struts.xml来写我们的跳转: <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <!-- <constant name="struts.objectFactory" value="spring" /> 是在后面的spring2配置中用到意思是把控制交给spring2 --> <constant name="struts.objectFactory" value="spring" /> <include file="struts-default.xml"></include> <package name="test" extends="struts-default"> <!-- <action name="LoginAction" class="LoginAction"> 这里用class来关联spring2配置文件中的配置关联 --> <action name="LoginAction" class="LoginAction"> <result name="input">/index.jsp</result> <result name="success">/success.html</result> <result name="error">/error.html</result> </action> </package> </struts> 成功和失败的页面大家自己建一下就行了! 下面我们来配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" id="WebApp" xmlns=" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" <display-name>test</display-name> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationContext.xml</param-value> </context-param> <filter> <filter-name>encodingFilter</filter-name> <filter-class> org.springframework.web.filter.CharacterEncodingFilter </filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.FilterDispatcher </filter-class> </filter> <!-- 那么哪些请求交给struts过滤呢,这里包括 /struts2spring2hibernate3下和根目录/下的所有请求--> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- OpenSessionInViewFilter过滤器 --> <filter> <filter-name>lazyLoadingFilter</filter-name> <filter-class> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter </filter-class> </filter> <filter-mapping> <filter-name>lazyLoadingFilter</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping> <!-- 定义默认返回页,如输入http://127.0.0.1/那么根目录下的index.html或者其他文件就被请求 --> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <listener> <!-- 下面也是spring2的配置 --> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> </web-app> 到这里我们的struts2配置完了 下面我们运用MyEclipse 来加入spring2 3 创建spring2 选好要导入的jar包点next --> finish。 spring2加入到了我们的项目中了。下面我们来把hibernate3.1加入到项目中去。 4 创建hibernate3.1 选好要导入的jar包点next。 点next. SessionFactory ID 是写在applicationContext.xml中的在创建完成后会在直接更新applicationContext.xml文件的。 Bean ID 也是写在applicationContext.xml中的在创建完成后会在直接更新applicationContext.xml文件。点next。 我们要用的是spring2的SessionFactory控制所以不用hibernate3.1 自己的SessionFactory。 如果有包的重复,保留使用spring的相关包。 点finish 下面我们来看看applicationContext.xml更新后的文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="dataSource" class="mons.dbcp.BasicDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"> </property> <property name="url" value="jdbc:mysql://localhost:3306/test"></property> <property name="username" value="root"></property> <property name="password" value="123"></property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource" /> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> </props> </property> <property name="mappingResources"> <list> <value>com/yyi/bean/Users.hbm.xml</value> </list> </property> </bean> <bean id="usersDao" class="com.yyi.bean.UsersDAO"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <bean id="LoginAction" class="com.test.action.LoginAction" scope="prototype"> <property name="dao"> <ref bean="usersDao" /> </property> </bean> </beans> 5 创建数据源 点New 出现一个窗口, Driver template (数据库类型) Driver name(创建的数据源名称) Connection URL (连接数据库用到的驱动URL) User Name (数据库的用户名) Password (数据库的密码) Driver JARS (数据库驱动包) Driver Classname (数据库驱动类) 点finish完成创建。 下面我们来针对表用hibernate来创建程序和数据库之间的联系。 我们对users表进行操作并且实现通过hibernate把程序和数据库连接在一起,首先在users上右击然后出现一个菜单, 然后选择Hibernate Reverse Engineering 点next 选择native 之后点next. 这个菜单的设置是表与表的范式关系。点finish. 我们基本上实现了struts2+spring2+hibernate3的衔接了。下面我们来具体调试一下。 6 调试 首先我们要导入两个jar包 如果不导入这两个包连接就会出错。并且把MyEclipse创建spring2时候生成的commons-collections2.11删除。接下来我们来完善LoginAction.java 代码如下: package com.test.action; import com.opensymphony.xwork2.ActionSupport; import com.yyi.bean.Users; import com.yyi.bean.UsersDAO; public class LoginAction extends ActionSupport { private int id; private String username; private String pwd; private UsersDAO dao; private Users user; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String execute() { user=new Users(); user.setId(id); user.setPwd(pwd); user.setUsername(username); dao.save(user); return SUCCESS; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } public UsersDAO getDao() { return dao; } public void setDao(UsersDAO dao) { this.dao = dao; } } 下面我们把struts2的控制转交给spring2 在appliction.xml中加入以下代码: <bean id="LoginAction" class="com.test.action.LoginAction" scope="prototype"> <property name="dao"> <ref bean="usersDao" /> </property> </bean>我们现在进行测试一下! 启动Tomcat 然后我们点Submit. 看看结果! 再看看数据库的结果! 到此为止struts2+spring2+hibernate3配置完毕!由于时间问题例子比较简单!
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服