JAVA-STRUTS-2x的项目配置

本文详细介绍了Struts2框架的基本配置过程,包括web.xml中过滤器的设置与struts.xml中核心配置项的定义,以及如何通过包、常量和动作配置实现项目的模块化管理。

首先是web.xml的配置,这个是项目加载的开始。

 1   <display-name></display-name>
 2   <!--struts2配置开始-->
 3   <filter>
 4       <filter-name>struts2</filter-name><!--和mapping中name一致-->
 5       <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
 6   </filter>
 7   <filter-mapping>
 8       <filter-name>struts2</filter-name>
 9       <url-pattern>*.do</url-pattern>
10       <url-pattern>*.jsp</url-pattern>
11   </filter-mapping>
12   <!--struts2配置结束-->
13   <welcome-file-list>
14     <welcome-file>index.jsp</welcome-file>
15   </welcome-file-list>

然后是src下的struts.xml文件,它是struts配置文件的源头。

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <!DOCTYPE struts PUBLIC
 3  "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
 4  "http://struts.apache.org/dtds/struts-2.0.dtd">
 5 
 6 <struts>
 7     <!-- 编码 -->
 8     <constant name="struts.i18n.encoding" value="UTF-8" />
 9     <!-- 扩展名 -->
10     <constant name="struts.action.extension" value="do,action" />
11     <!-- 浏览器是否缓存静态数据 -->
12     <constant name="struts.serve.static.browserCache" value="false" />
13     <!-- struts配置文件修改后自动加载 -->
14     <constant name="struts.configuration.xml.reload" value="true" />
15     <!-- 开发模式下打印出更详细的错误信息 true false -->
16     <constant name="struts.devMode" value="true" />
17     <!-- 默认主体 -->
18     <constant name="struts.ui.theme" value="simple" />
19     <!-- 是否支持动态调用 -->
20     <constant name="struts.enable.DynamicMethodInvocation" value="false" />
21     <!-- 上传文件的大小 -->
22     <constant name="struts.multipart.maxSize" value="2097152" />
23 
24     <package name="base" extends="struts-default"></package>
25     <include file="strutsxml/struts.xml"></include> <!-- 值是可以变的,改成你对应的文件就好 -->
26     <include file="strutsxml/struts_ajax.xml"></include> <!-- 可以加载多个子配置文件 -->
27 </struts>

加载主配置文件后,会加载子配置文件。这里就写出一个了,另一个可有可无,看项目结构了。

strutsxml/struts.xml

 1   <?xml version="1.0" encoding="utf-8"?>
 2   <!DOCTYPE struts PUBLIC
 3    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
 4    "http://struts.apache.org/dtds/struts-2.0.dtd">
 5   
 6   <struts>
 7       <package name="default" extends="base" namespace="/">
 8           <!-- class的值对应java类,默认调用execute方法;可增加属性method,值为方法名已修改调用方法 -->
 9           <action name="Categories" class="com.junjuping.ui.action.Categories">
10               <result name="succ">/CategoriesList.jsp</result> <!-- 对应jsp文件;name值则为java类返回的字符串 -->
11           </action>
12       </package>
13   </struts>

子配置文件的action标签也可直接放到主配置文件中(package标签里)。
默认调用对应的java类中的execute方法。

com.junjuping.ui.action.Categories.java

 1 public class Categories
 2 {
 3     public String execute() throws Exception {
 4         String result = ""; // 返回值
 5         HttpServletRequest request = ServletActionContext.getRequest();
 6         HttpServletResponse response = ServletActionContext.getResponse();
 7         CategoriesServce categoriesServce = new CategoriesServce();
 8         ArrayList<String[]> resultList = categoriesServce.select();
 9         request.setAttribute("resultList", resultList);
10         result = "succ";
11         return result;
12     }}

jsp文件在这里就不再说明了。

转载于:https://www.cnblogs.com/junjuping/p/3794992.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值