学习struts2(1)

一、Action搜索的顺序:

      先进行package是否存在,如果存在则判断Action是否存在,如果不存在则在namespeace的packafe里寻找action;没有则报错

          如果不存在则检查上一级路径的package是否存在(到默认的/namespace)重复判断package是否存在

二、动态调用的方法(Action)   

         作用:为了解决一个Action对应多个请求的处理,以免Action过多

             (1)、在struts.xml中的<action>里添加method属性,method属性对应着Action中的方法名

            《不推荐使用的方法》(2)、在struts.xml中的<struts></struts>中加入<constant name="struts.enable.DynamicMethodInvocation"  vallue="true">

                  <result   name="name名称">/返回的页面</result>并且将Action中该方法的返回值改为在result中的name    

             (3)、通配符方式(官方推荐使用的方式)

                    在struts.xml中的<action>标签的name中可以使用(*)星号占位符,进行占位,在{1}然后用花括号          输入的是占位符输入的内容

三、指定多个配置文件:

            在struts.xml中配置使用<include file="其他的suruts.xml的文件"></include>标签进行配置

如何在struts2中配置字符编码:

            在struts.xml使用<constant name="struts.i18n.encoding" value="字符集"></constant>标签进行配置

四、默认的Action(当用户输入错误的Action的时候,默认的Action调用)

   <default-action-refname="index"></default-action-ref>

       <action name = "index"><result>/jsp路径</result>

PS:如果项目里运用了"通配符号",首先会去和统配符先匹配,如果没有才会寻找默认的Action。

五、Struts2中改后缀的三种方式:

           在struts.xml中的<starts></starts>配置

           (1)、<constant   name="struts.action.extension"     vlaue="html"></constant>

           在struts.properties中配置

           (2)、struts.action.extension="   ","   ","  ";               //可以添加多个后缀名

           在web.xml中的过滤器<filter></filter>中进行配置

           (3)、<init-param>

                    <param-name>struts.action.extension<param-name>    

                    <param-value>html</param-value>

                   </init-param>

六、接受参数的三种方法

          (1)、使用Action的属性自动获取表单提交过来的属性

          (2)、使用DomainModel接受参数

                 建立一个实体类,在Action中进行声明,通过他的get、set方法,通过user.getUserName获取用户名;   将<from>表单中<input>中的name改为user.username 

//代表这个username是传入到USER这个实体类中的

          (3)、使用ModelDriver接口接受参数

                 建立实体类,在Action中实现Mode(Driven) <泛型> 接口  ,  实现接口中的方法返回实体类对象       //这样就不需要在表单中说明是在哪个类里的了

七、Action返回的处理结果类型(字符串类型)

         Struts2的处理流程:   用户请求-->struts框架-->控制器(Action)-->Struts框架-->视图资源

          <result  name="success">/返回的视图页面</result>

                  ruseult 中的 name   就是result元素的逻辑视图名称

                      SUCCESS:Action正确执行完成,返回对应的视图,success是name的默认值

                      NONE:表示Action正确执行完成,但不返回任何视图

                      ERROR:表示Action执行失败,返回到错误的视图

                      LOGIN:Aciton因为用户没登陆的原因没有正确的执行,将返回该登陆视图,要求用户进行登录验证

                      INPUT: Action的执行,需要从前端获取界面获得参数,INPUT就代表这个参数的输入的界面,一般在应用中,会对这些参数进行验证, 如验证没通过,自动返回该视图

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值