spring、struts调整

spring、struts整合

1、引入jsr包

2、配置struts-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

<struts-config>
	<data-sources />
	<form-beans>
		<form-bean name="loginForm" type="com.user.form.LoginForm"></form-bean>
	</form-beans>
	<global-exceptions />
	<global-forwards />
	<action-mappings>
		<action attribute="loginForm" input="/index.jsp" name="loginForm"
			path="/login" scope="request" type="com.user.action.LoginAction">
			<forward name="s" path="/s.jsp" />
			<forward name="f" path="/f.jsp" />
		</action>

	</action-mappings>
	<message-resources parameter="com.synda.struts.ApplicationResources" />
</struts-config>

 

3、配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>app</display-name>
  
  <!--  -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>/WEB-INF/classes/applicationContext.xml</param-value>		
	</context-param>
	
	
	<servlet>
	  <servlet-name>SpringContextServlet</servlet-name>
	  <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>	  
	  <load-on-startup>1</load-on-startup>
	</servlet>
  
  <!-- struts配置 -->
   <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <init-param>
      <param-name>debug</param-name>
      <param-value>3</param-value>
    </init-param>
    <init-param>
      <param-name>detail</param-name>
      <param-value>3</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  
  <!-- 欢迎页配置 -->
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>
 

4、配置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" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
		http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">

	<bean id="loginService" class="com.user.service.LoginService"></bean>
	
</beans>
 

5、action

package com.user.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.springframework.web.struts.ActionSupport;

import com.user.form.LoginForm;
import com.user.service.LoginService;

public class LoginAction extends ActionSupport {
	public LoginService getService(){
		return (LoginService) getWebApplicationContext().getBean("loginService");
	}

	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		LoginForm loginForm=(LoginForm)form;
		if(loginForm.getUser()!=null&&loginForm.getUser().equals("eclipse")){
			if(getService().check(loginForm.getUser(), loginForm.getPwd())){
				return mapping.findForward("s");
			}else{
				return mapping.findForward("f");
			}
		}else{
			return mapping.findForward("f");
		}
	}
}
 

6、form

package com.user.form;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;

public class LoginForm extends ActionForm {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1953882265548952531L;
	private String user;
	private String pwd;
	@Override
	public void reset(ActionMapping mapping, HttpServletRequest request) {
		// TODO Auto-generated method stub
		super.reset(mapping, request);
	}
	@Override
	public ActionErrors validate(ActionMapping mapping,
			HttpServletRequest request) {
		// TODO Auto-generated method stub
		return super.validate(mapping, request);
	}
	
	public String getUser() {
		return user;
	}
	
	public void setUser(String user) {
		this.user = user;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}

}
 

7、业务类

package com.user.service;

public class LoginService {
	public boolean check(String user ,String pwd){
		System.out.println(user);
		System.out.println(pwd);
		return true;
	}
}