黑马程序员——struts2学习笔记一

-----------android培训java培训、java学习型技术博客、期待与您交流!------------

struts2学习笔记一



一、strust2工作原理示意图



核心过滤器:StrutsPrepareAndExecuteFilter


二、strust配置

1、配置web.xml文件,由于strust2的执行是基于过滤器的,在web.xml文件中应加入以下配置:

***************************************************************

<filter>

<filter-name>StrutsPrepareAndExecuteFilter</filter-name>

<filter-class>

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

</filter-class>

</filter>

<filter-mapping>

    <filter-name>StrutsPrepareAndExecuteFilter</filter-name>

    <url-pattern>/*</url-pattern>

</filter-mapping>

***************************************************************

2、strust.xml文件配置(文件名必须是这个,因构架底层的类已经定义好,开发人员按此标准进行定义即可),具体配置如下:

package:定义一个包

    name:包名;

namespace:名称空间,后面会用于uri的前部分,即action名称的前部分,表示请示的是此空间下的一个;

extends:指定继承一个包,struts-default为框架(struts-default.xml)内定已经定位好的包;

    action:

       name:定义action的名称;

class:当前class对应的类;没有指定action对应的类,则会执行一个默认的类:com.opensymphony.xwork2.ActionSupport,

       这个类在struts-default.xml中已定义好;

       result:定义当前action执行返回的结果而对应转向的示图;  

<default-action-refname="..." />:可以配置默认执行的action(当访问的网页不存在让请求执行此action);

***************************************************************

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

<!DOCTYPE struts PUBLIC

    "-//Apache SoftwareFoundation//DTD Struts Configuration 2.3//EN"

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

<struts>

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

<actionname="helloWorldAction" class="com.rp.chenpj.struts2.Aaction">

           <resultname="success">/index.jsp</result>   

       </action>

       <default-action-refname="..." />            

    </package>

</struts>

***************************************************************

3.action名称的查找过程(如何根据URI找到action)

<a href="${pageContext.request.contextPath}/aaa/bbb/ccc/xxAction.action">xxAction</a>

查找xxaction的顺序:/aaa/bbb/ccc/aaa/bbb/aaa,从大到小直到找到为止

 

4.资源文件default.properties,中常需要自选定的配置:

1.struts.action.extension:配置actionr的后缀名称,当需要配置多个后缀时用“,”隔开,例如:struts.action.extension=do,action

**********************2015年8月3日笔记*****************************************

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值