struts2-基于注解的Action配置
博客专区 > ws199358 的博客 > 博客详情
struts2-基于注解的Action配置
ws199358 发表于1年前
struts2-基于注解的Action配置
  • 发表于 1年前
  • 阅读 99
  • 收藏 1
  • 点赞 0
  • 评论 0

【腾讯云】如何购买服务器最划算?>>>   

1.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_2_5.xsd" id="WebApp_ID" version="2.5">
  <filter>
	  	<filter-name>strutsFilter</filter-name>
	  	<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
	  </filter>
	  <filter-mapping>
	  		<filter-name>strutsFilter</filter-name>
	  		<url-pattern>/*</url-pattern>
	  </filter-mapping>
</web-app>

2.·使用注解的方式配置struts需要引入一个jar包

3·action类的注解:

@ParentPackage("basePackage")  //指定父包

@Namespace("/user")   //指定命名空间

@Results( { @Result(name = "success", location = "/main. jsp ")

 @Result(name = "error", location = "/error.jsp") })   全局的实现跳转的页面

@Action("userAction")  //指定action的访问url   

例如:java代码注解

1   package com.oracle.soccerleague.action;
……
22  @Namespace(value="/admin")  
23  @ParentPackage(value="struts-default")
24  @Action(value="AddLeague")
25  @Results({  
26     @Result(name="success", location="/admin/AddLeagueSucc.jsp"), 
27     @Result(name="input", location="/admin/AddLeague.jsp") 
28  })
29  public class AddLeagueAction extends ActionSupport {
30      private int year;
31      private String season;
32      private String title;
……
100 }

对应的struts.xml配置文件

以上注解与以下struts.xml配置作用相同: 
6  <struts>
7     <package name="admin" namespace="/admin" extends="struts-default">
8          <action name="AddLeague" 
9                  class="com.oracle.soccerleague.action.AddLeagueAction">
10             <result name="success">/admin/AddLeagueSucc.jsp</result>
11             <result name="input">/admin/AddLeague.jsp</result>
12         </action>
13     </package>
14 </struts>

4.struts.xml其他配置及作用

    <!-- 指定由spring负责action对象的创建 -->

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

    <!-- 所有匹配*.action的请求都由struts2处理,可以扩展 -->

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

    <!-- 是否启用开发模式,上线时一般不需要开启,开发时获取更多的日志信息 -->

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

    <!-- struts配置文件改动后,是否重新加载 -->

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

    <!-- 设置浏览器是否缓存静态内容 -->

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

    <!-- 请求参数的编码方式 -->

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

    <!-- 每次HTTP请求系统都重新加载资源文件,有助于开发 -->

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

    <!-- 文件上传最大值 -->

    <constant name="struts.multipart.maxSize" value="104857600" />

    <!-- 让struts2支持动态方法调用,在调用时使用userAction !login .action方式进行调用 -->

    <!-- Action名称中是否还是用斜线 -->

    <constant name="struts.enable.SlashesInActionNames" value="false" />

    <!-- 允许标签中使用表达式语法 -->

    <constant name="struts.tag.altSyntax" value="true" />

    <!-- 对于WebLogic,Orion,OC4J此属性应该设置成true -->

    <constant name="struts.dispatcher.parametersWorkaround" value="false" />

标签: Struts 注解
共有 人打赏支持
粉丝 6
博文 21
码字总数 17855
×
ws199358
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: