分模块开发创建Action子模块——(九)

web层选择war打包方式。

 

1.右击父工程新建maven模块

2.填写名字

3.选择打包方式为war

 

4.写web层代码与配置文件(添加web.xml),错误是缺少service层包

 

少了一个struts配置

5.导入service的jar包

6.修改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"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    id="WebApp_ID" version="3.0">
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>


    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext-service.xml,classpath:applicationContext-action.xml,classpath:applicationContext-dao.xml</param-value>
    </context-param>


    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

</web-app>

 

 

注意:对于低版本的spring不支持  "classpath*:applicationContext-*.xml"  这种写法。只能采用下面的方法,多个配置文件用逗号隔开。

<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext-service.xml,classpath:applicationContext-action.xml,classpath:applicationContext-dao.xml</param-value>
   </context-param>

7. classpath 和 classpath* 区别:

classpath:只会到你的class路径中查找找文件;
classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找.

classpath*的使用:当项目中有多个classpath路径,并同时加载多个classpath路径下(此种情况多数不会遇到)的文件,*就发挥了作用,如果不加*,则表示仅仅加载第一个classpath路径。

8.打包action层

 

9.查看本地仓库目录结构

10. 最后再瞅瞅war包结构:

 

 

posted @ 2017-08-04 18:04  QiaoZhi  阅读(274)  评论(0编辑  收藏  举报