Struts2框架入门及其核心配置(学习笔记)

Struts2框架,执行流程

1:request访问
2:核心过滤器拦截
3:Interceptor拦截器拦截
4:调用指定Action
5:响应数据

 Struts2配置文件

在web.xml文件中加入struts2的核心过滤器
  <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>
简单的Struts2配置文件

<struts>
	<package name="hello" namespace="/" extends="struts-default" > 
	
	<action name="helloWorld" class="cn.itcast.action.HelloWorldAction" >
		<result>/success.jsp</result>
	</action>
	
	</package>

</struts>

常量配置

1: 在struts.xml配置,<constan>
   例:
        <struts>
             <constant name="struts.il8n.encoding" value="UTF-8" />
         </struts>

2:在struts.xml同目录下的 struts.properties 配置
    例:
        struts.action.extension=action,,  //设置action的请求扩展名为action 或者没有扩展名

3:在web.xml 配置
    例:
        <Filter>
                核心过滤器
                <init-param> struts.il8n.encoding </init-param>
        </Filter>

Action

<action name="" class="" method=""> //class="" 默认com.opensymphony.xwork2.ActionSupport类 
                                    //method="" 默认 execute()
    <result name=" " >/xxx.jsp  </result>  //name=""  默认success
</action>

/* 通配符 */

<action name="*_*" class="cn.itcast.action.{1}" method="{2}">  //{1}:表示第一个通配符
                                                               //{2}:表示而二哥通配符
    <result> {2}.jsp </result>    //表示第二个通配符作为名字
    
</action>



Action访问Servlet API

通过ActionContext访问Servlet API

 Map<String,Object>   ActionContext.getAppication()     //JPS对象的application
Map<String,Object>    ActionContext.getSessiion()       //         session
ActionContext      ActionContext.getContext()          //         request 即自己本身


Action处理请求参数

1: 属性驱动
class UserAction extends ActionSupport{
   private User user;     //JavaBean对象
   getter()   //略 
   setrer()  //略
   public String execute()throws Exception{
       //直接调用即可
   }
}
/*   
   jsp文件<form>表单的name属性需要设置成 name="user.name"
*/

2:模型驱动
 
class UserAction extends ActionSupport{
   private User user=new User();
   public User getModel(){          //模型方法
      return user;
     }
    public String execute()throws Exception{
       //直接调用即可
   }
}
/*   
   jsp文件<form>表单的name属性需要设置成 name="name"即可不需要加前缀user 
*/

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值