设为首页 收藏本站
查看: 1059|回复: 0

[经验分享] Struts2,MyBatis,Spring整合简易教程

[复制链接]

尚未签到

发表于 2016-11-27 06:56:52 | 显示全部楼层 |阅读模式
在上一篇<MyBatis,Spring整合简易教程>中已经提到了如何在Spring中整合MyBatis,这篇文章中,我们以一个用户登录的例子来简单的讲解一下如何将struts2一起整合进来,搭建SSM架构。
需要准备的软件包:Struts2核心jar包,以及Struts2的lib目录下struts2-spring-plugin-2.2.1.jar
前提步骤:MyBatis,Spring的整合本文不再重复,请参考另外一篇文章<MyBatis,Spring整合简易教程>,我们直接来看如何进一步整合Struts2
第一步:新建一个Web Project,导入Struts2核心包以及整合Spring需要用到的struts2-spring-plugin-2.2.1.jar到的Project的Build Path(也可以直接复制到WEB-INF/lib目录下),其他的步骤与<MyBatis,Spring整合简易教程>所提到的相同(可以直接在Web Project下进行MyBatis,Spring整合,以方便下一步的Struts2整合)。
第二步:编辑WEB-INF/web.xml文件,添加Struts2过滤器和Spring监听器的自启动,该文件内容如下所示:
web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 加载Struts2 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 加载Spring -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
</web-app>

第三步:创建Action
在src下创建一个包,并在其下创建一个UserAction.java文件,内容如下:
UserAction.java

package action;
import org.apache.struts2.ServletActionContext;
import model.User;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import dao.UserMapper;
public class UserAction extends ActionSupport{
private User user;
private UserMapper userMapper;
public String execute()
{
//如果登录的用户存在
User userFinded=userMapper.selectUser(user);
if(userFinded!=null)
{
//将用户名放入session
ActionContext.getContext().getSession().put("username", userFinded.getUsername());
return SUCCESS;
}
return ERROR;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public UserMapper getUserMapper() {
return userMapper;
}
public void setUserMapper(UserMapper userMapper) {
this.userMapper = userMapper;
}
}


第四步:在Spring中配置Action
打开applicationContext.xml文件,在</beans>标签之前,加入下面这一段代码,并把applicationContext.xml复制到WEB-INF目录下

<bean id="userAction" class="action.UserAction">
<property name="userMapper" ref="userMapper"></property>
</bean>


第五步:配置Struts2
在src目录下创建struts.xml文件,内容如下所示:
struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="test" extends="struts-default">
<action name="userAction" class="userAction">
<result name="success">suc.jsp</result>
<result name="error">err.jsp</result>
</action>
</package>
</struts>


第六步:在WebRoot目录下创建三个JSP文件index.jsp, suc.jsp, err.jsp.代码如下所示:
index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"  %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>   
<title>用户登录</title>
</head>
<body>
<h1>用户登录</h1>
<s:form action="userAction">
<s:textfield name="user.username" label="用户名:"></s:textfield>
<s:password name="user.password" label="密码:"></s:password>
<s:submit value="登录"></s:submit>
</s:form>
</body>
</html>

suc.jsp

<html>
<head>   
<title>登录成功</title>
</head>
<body>
<h1>登录成功</h1>
</body>
</html>

err.jsp
<html>
<head>   
<title>登录失败</title>
</head>
<body>
<h1>登录失败</h1>
</body>
</html>

第七步:将项目发布到Tomcat并启动,打开页面进行登录测试

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-305892-1-1.html 上篇帖子: mybatis配置log4j控制台打印SQL语句 下篇帖子: mybatis 1.5.2 websphere下发布
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表