-
过程图查看全部
-
result-type: dispatcher不会丢失参数,而redirect会丢失参数查看全部
-
处理结果类型的配置:局部结果是在<action/>中配置的,全局结果是在<global-result />中配置的查看全部
-
action处理结果类型查看全部
-
如果结果页面使用的相对路径的话,是相对于所在action的namespace的查看全部
-
<result></result>如果省略了name的值,默认为success查看全部
-
MVC 模式查看全部
-
Struct2下载网站查看全部
-
meidong查看全部
-
(1)在result里面最重要的属性是type类型,type的默认值为dispatcher(转发),这个类型支持JSP视图技术。 (2)Struts2支持多种视图技术,例如JSP、Valocity(模板引擎)、FreeMaker(模板引擎)等。 (3)常用三个:chain,redirect,plaintext。 1、chain:将action和另外一个action链接起来。 2、redirect:重定向(会丢失请求参数)。 3、plaintext:返回网页源代码。 4、stream:返回inputstream用于文件下载。 "dispatcher" jsp传值 请求转发查看全部
-
注意:<result>/success.jsp</result> 有“/”:绝对路径,开始是整个项目的上下文路径 无“/”:相当于执行该action namespace指定的路径查看全部
-
第一种接收参数的方法:直接在action类中创建相应的属性和getter和setter,和前端的name名字相同。eg:前端的username,在action类中就要建立一个private String username; Struts会自动映射为这个属性赋值 第二种接受参数的方法:使用DomainModel,将username 和password两个属性封装为一个类User(必须是标准的JavaBean),在action中声明这个属性:private User user; 同时为user设置getter和setter;在前端中的name需要设置为user.name和user.password,才能映射成功 第三种接收参数的方法:使用ModelDriven<T>接口,这个action必须实现这个接口的public T getModel()方法。此时声明的属性必须实例化,eg: private User user = new User(); 同时不需要getter和setter。前端的name也只需要写username和password就可以,不需要再加域了。这种方法时最推荐的方法,因为可以减少前后端的耦合!查看全部
-
struts2后缀: 三种方式: 1.struts.properties中:struts.action.extension=action,do,struts2 2.xml中增加常量constant: <constant name="struts.action.extension" value="action,do,struts2"></constant> 3.在过滤器中配置intt-param参数: <init-param> <param-name>struts.action.extension</param-name> <param-value>do,action,strtus2</param-value> </init-param> 注意:如果值什么都不写,则后缀不加才可以正常显示。如果这条语法都没有设置,则默认.action或什么都不加后缀。查看全部
-
默认action配置,设置页面访问失败时的处理 【找不到默认action的原因和解决方法】 <default-action-ref name="index"></default-action-ref><br> <br> <action name="index"><br> <result>/error.jsp</result><br> </action> <br> <br> <action name="log_*" method="{1}" class="com.wayne.action.LoginAction"><br> <result name="login">/login.jsp</result><br> <result name="logout">/logout.jsp</result><br> </action><br> <br>查看全部
-
动态方法调用: 动态方法调用是为了解决一个Action对应多个请求的处理,以免Action太多。 三种方式:指定method属性、感叹号方式、通配符方式 1:<action name="addAction" method="add" class="com.imooc.action.HelloWorldAction"> http://localhost:8080/HelloWorld/addAction.action 2:<constant name="struts.enable.DynamicMethodInvocation" value="false"> </constant> <action name="helloworld" class="com.imooc.action.HelloWorldAction"> <result >/result.jsp</result> <result name="add">/add.jsp</result> <result name="update">/update.jsp</result> </action> http://localhost:8080/HelloWorld/helloworld!add.action 3: <action name="*_*" method="{2}" class="com.imooc.action.{1}Action"> <result >/{2}.jsp</result> <result name="add">/{2}.jsp</result> <result name="update">/{2}.jsp</result> </action> http://localhost:8080/HelloWorld/HelloWorld_add.action查看全部
举报
0/150
提交
取消