struts+spring

作者在 2010-03-19 21:45:57 发布以下内容
 (一) 整合方式

     StrutsSpring的整合有很多种方式,如下3种解决方案。

(1)       使用SpringActionSupport类整合Struts

(2)       使用SpringDelegatingRequestProcessor覆盖Struts RequestProcessor.

(3)       Struts Action管理委托给Spring框架 

Struts2Spring都有对象工厂ObjectFactory

SpringHibernate都有Session工厂  SessionFactory

 我们使用是第三种方式,也就是通过IoC模式让SpringStrutsAction进行管理。         ObjectFactory 对象工厂

   Spring强调使用接口编程。

  (二)环境的搭建和基本配置

      前提:创建好Struts环境

  1 复制文件:复制文件以下三个文件到项目的lib目录下。

     commons-logging.jar

     spring.jar

     struts2-spring-plugin-2.0.14.jar

 

      2 配置struts.objectFactory属性值:在struts.xml文件中配置常量。

       <constant name="struts.objectFactory" value="spring"></constant>

        说明:默认情况下所有由Struts2框架创建的对象都是有ObjectFactory实例化的,ObjectFactory提供了与其他Ioc容器如Spring集成的方法。在这里用org.apache.struts2.spring.StrutsSpringObjectFactory代替了默认的ObjectFactory。也就是说,处理用户请求的Action并不是由Struts2框架创建的,而是由Spring创建的。

        

      3 配置Spring监听器:在web.xml文件中增加如下内容。

        <listener> 

            <listener-class>

                  org.springframework.web.context.ContextLoaderListener

            </listener-class>

        </listener>

       完整的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>Struts Demo</display-name>

 

    <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>

    <listener>   

 <listener-class>

org.springframework.web.context.ContextLoaderListener

</listener-class>

    </listener>

  <welcome-file-list>

    <welcome-file>index.jsp</welcome-file>

  </welcome-file-list>

</web-app>

4 定义Spring的配置文件:默认情况下,Spring配置文件为applicationContext.xml ,该文件需要保存到Web应用的Web-INF目录下(和web.xml同一目录)。

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"

    "http://www.springframework.org/dtd/spring-beans.dtd">

<beans default-autowire="byName">

 </beans>

5 建立登录页面login.jsp 程序片段如下:

  <body>

    This is my JSP page. <br>

    <s:form id="id" action="LoginAction">

       <s:textfield name="username" label="登录名称:"></s:textfield>

       <s:password name="password" label="密码:"></s:password>

       <s:submit></s:submit>

    </s:form>

  </body>

6 建立业务层(Spring):LoginSerivce接口和其实现类

      1com.service.LoginSerivce.java 程序

package com.service;

 

public interface LoginSerivce {

    boolean checkok(String username,String password);

}

      2com.service.impl.

package com.service.impl;

 

import com.service.LoginSerivce;

 

public class

默认分类 | 阅读 476 次
文章评论,共0条
游客请输入验证码