关注微信公众号 太平洋学习网 扫描二维码
最新消息:关注【太平洋学习网】微信公众号,可以获取全套资料,【全套Java基础27天】【JavaEE就业视频4个月】【Android就业视频4个月】

spring与struts2整合示例详解|spring教程

Javaweb 太平洋学习网 浏览 评论

struts2框架和springmvc框架差不多,spring与struts2整合并不难,spring struts2整合需要做如下操作:

1:创建struts2项目,引入struts2与spring的整合jar包,ssh框架整合jar包如下:http://www.tpyyes.com/a/javaweb/2016/1006/20.html

2:在web.xml文件中定义ContextLoaderListener监听器,用于监听spring项目的启动。

3:在struts.xml文件中定义struts2的bean action,用于转发页面。

4:在applicationContext.xm文件中配置数据库连接信息,事务等,本案例只用来注入数据

5:在action中书写页面跳转,传参等,例如本案例做login登录跳转。

本spring struts2整合案例中涉及到如下这几个文件:

index.jsp

web.xml

struts.xml

applicationContext.xml

Login.java

welcome.jsp

步骤一:在index.jsp页面中写一个login登录框,使用了struts2的标签,代码如下。

<%@ taglib uri="/struts-tags" prefix="s"%>  
<s:form action="login">  
<s:textfield name="userName" label="UserName"></s:textfield>  
<s:submit></s:submit>  
</s:form>

步骤二:在web.xml文件中配置spring ContextLoaderListener监听器,以及url-pattern等。

<?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">  
  <welcome-file-list>  
    <welcome-file>index.jsp</welcome-file>  
  </welcome-file-list>  
  <filter>  
    <filter-name>struts2</filter-name>  
    <filter-class>  
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  
    </filter-class>  
  </filter>  
    
<listener>   
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>   
</listener>   
    
  <filter-mapping>  
    <filter-name>struts2</filter-name>  
    <url-pattern>/*</url-pattern>  
  </filter-mapping>  
    
  </web-app>

步骤三:配置struts.xml,在action里面配置页面的跳转,访问login就会跳转到welcom.jsp页面,代码如下:

<?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="userLogin" extends="struts-default">  
<action name="login" class="com.tpyyes.login">  
<result name="success">welcome.jsp</result>  
</action>  
  
</package>  
  
</struts>

步骤四:在login.java中实现action跳转,默认执行的是该类的execute()方法,根据返回的“success”字符串跳转到welcom.jsp页面,代码如下。

package com.tpyyes;  
public class Login {  
private String userName,message;  
  
public String getMessage() {  
    return message;  
}  
public void setMessage(String message) {  
    this.message = message;  
}  
public String getUserName() {  
    return userName;  
}  
public void setUserName(String userName) {  
    this.userName = userName;  
}  
//默认执行该方法
public String execute(){  
    return "success";  
}  
}

步骤五:在applicationContext.xml文件中set注入message属性值,代码如下:

<?xml version="1.0" encoding="UTF-8"?>  
<beans  
    xmlns="http://www.springframework.org/schema/beans"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xmlns:p="http://www.springframework.org/schema/p"  
    xsi:schemaLocation="http://www.springframework.org/schema/beans   
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">  
  
<bean id="login" class="com.tpyyes.Login">  
<property name="message" value="Welcome Spring"></property>  
</bean>  
  
</beans>

步骤六:在welcome.jsp登录结果界面中输出登录用户名和欢迎信息,代码如下:

<%@ taglib uri="/struts-tags" prefix="s"%>  
  
Welcome, <s:property value="userName"/><br/>  
${message}

当我们访问自己项目的时候,点击submit登录,则会跳转到welcome界面,index.jsp默认可以不用写,如图:

struts2integration1.jpg

登录成功之后的输出结果:

struts2integration2.jpg

来源网站:太平洋学习网,转载请注明出处:http://www.tpyyes.com/a/javaweb/2017/1225/444.html