rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 程序开发 » JavaEE

Spring2和Hibernatet3和Struts2整合开发

上一文章,我把Spring and Hibernate给整合了.经测试已经OK.

下面说说再把struts2也给整合进去,.

第一步,先加入struts2的jar文件,注意不要重复文件,删除旧版本,如果删除错了,再加进来,累也要做啊.

Spring2和Hibernatet3和Struts2整合开发

第二步:在web.mxl文件中,初始化spring容器,加入struts2的配置信息。给出完整的文件。、

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

    <context-param>

       <param-name>contextConfigLocation</param-name>

       <param-value>classpath:beans.xml</param-value>

    </context-param>

    <!-- 对Spring容器进行实例化 -->

    <listener>

          <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

    </listener>

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

  <welcome-file-list>

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

  </welcome-file-list> 

</web-app>

第三步:配置struts.mxl文件,里面放什么呢????

注意点就是那个action的类,交给spring管理了,所以那个地方直接给出action的简单名称,重点哦,(注解+XML配置),如果用注解,记得加上那个@Service(事务也不要忘记了)

第四步:就是写ACTION类了,这里的重点是:

如果用注解,记得加上那个如果用注解,记得加上那个@Controller @Scope("prototype"),

还要注意是不是单例,不是就加上15字前的那个注解。

如果要注入属性,记得要加上那个@Resource,

如果要在request范围中放值:ActionContext.getContext().put("message","保存成功");

自己感觉都有点麻烦,一个不小心,挂了。

给出完整的struts.xml文件

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

<!DOCTYPE struts PUBLIC

    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

    <!-- 指定Web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding方法 -->

    <constant name="struts.i18n.encoding" value="UTF-8"/>

    <!-- 该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts2处理。

    如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。 -->

    <constant name="struts.action.extension" value="do,action"/>

    <!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 -->

    <constant name="struts.serve.static.browserCache" value="false"/>

    <!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 -->

    <constant name="struts.configuration.xml.reload" value="true"/>

    <!-- 开发模式下使用,这样可以打印出更详细的错误信息 -->

    <constant name="struts.devMode" value="true" />

     <!-- 默认的视图主题 -->

    <constant name="struts.ui.theme" value="simple" />

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

    <package name="person" namespace="/person" extends="struts-default">

       <action name="person" class="personAction" >

           <result name="list">/WEB-INF/page/personlist.jsp</result>

       </action>

       <action name="manage_*" class="personManagerAction" method="{1}">

           <result name="add">/WEB-INF/page/personAdd.jsp</result>

           <result name="message">/WEB-INF/page/message.jsp</result>

       </action>

    </package>

</struts>

测试放我自己电脑上了,需要的直接发邮件找我。

顶一下
(0)
踩一下
(0)