-
struts2接受参数
1、使用Action的属性接受参数
action类直接创建对象实现get/set
2、使用Domain的Model接受参数
//创建model对象 private User user;
//表单name修改 用户名:<input type="text" name="username"> 密码:<input type="password" name="password">
3、使用ModelDriven接受参数
实现ModelDriven<T>接口,指定泛型类型
//需要实例化 private User user=new User(); @Override public User getModel() { return user; }
对于List<String>对象需要
<input type="text" name="listbook[0]">
对于List<User>对象需要
<input type="text" name="listbook[0].username">
查看全部 -
//修改.action后缀 <constant name="struts.action.extension" value="html"></constant>
默认没有配置后缀,其实不添加.acton后缀也可以访问
//web.xml也可以配置修改后缀 <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> <init-param> <param-name>struts.action.extension</param-name> <param-value>do</param-value> </init-param> </filter>
查看全部 -
默认action配置
注意需要注释掉使用类名通配符的action配置,否则会去匹配类,报错500
<default-action-ref name="index"> </default-action-ref> <action name="index"> <result>/error.jsp</result> </action>
查看全部 -
指定配置文件
<include file="xml"></include>
查看全部 -
动态方法调用
动态方法调用就是为了解决一个Action对应多个请求的处理,以免Action太多。
1、指定method属性
<action name="addaction" method="add" class="com.action.HelloWorldAction"> <result name="success">/index.jsp</result> </action>
2、感叹号方式
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant> //指定方法返回视图 public String add(){ return "add"; } //struts配置多个result,指定name对应的 视图名称 <result>/index.jsp</result> <result name="add">/index.jsp</result> <result name="update">/update.jsp</result>
访问方式:/helloworld!(方法名).action
3、通配符方式
<action name="helloworld_*" method="{1}" class="com.action.HelloWorldAction"> <result>/index.jsp</result> <result name="add">/{1}.jsp</result> <result name="update">/{1}.jsp</result> </action> <action name="*_*" method="{2}" class="com.action.{1}Action"> <result>/index.jsp</result> <result name="add">/{2}.jsp</result> <result name="update">/{2}.jsp</result> </action>
查看全部 -
Struts2的Action搜索顺序
localhost:8080/struts/path1/path2/path3/student.action
第一步:判断package是否存在,如:path1/path2/path3/
存在package
第二步:判断action是否存在,不过不存在则去默认namespace的package里寻找action
第三步:如果没有,则报错
不存在package
第二步:检查上一级路径的package是否存在(直到默认namespace),重复第一步
第三步:如果没有,则报错
查看全部 -
1.Struts2访问Servlet API方式
1、ActionContext
2、实现Aware接口
3、ServletActionContext
查看全部 -
struts.xml
struts的核心配置文件,在开发过程中利用率最高。
该文件主要负责管理应用中的Action映射,以及该Action包含的Result定义等。
struts.properties
struts2框架的全局属性文件,自动加载
该文件包含很多个key-value对
该文件可以配置在struts.xml文件中,使用constant元素。
查看全部 -
从客户端发送请求过来,先经过前端控制器(核心过滤器 StrutsPrepareAndExecuteFilter)过滤器中执行一组拦截器(一组拦截器 就会完成部分功能代码),到底哪些拦截器执行了呢,在Struts2中定义很多拦截器,在其默认栈中的拦截器会得到执行,这个我们可以通过断点调试的方式测试,拦截器执行完成后,就会执行目标Action,在Action中返回一个结果视图,根据Restult的配置进行页面的跳转。
查看全部 -
MVC模式
查看全部 -
result 的type属性默认是dispacher
查看全部 -
struts2接收list参数
Action中定义List属性:bookList
在jsp中使用name:bookList[0]的形式
查看全部 -
struts.properties的常用配置
查看全部 -
加后缀访问,如.html,http://localhost:8080/HelloWord/helloWord.html
配置方式如下:
查看全部 -
默认Action的配置
用于配置找不到action时的错误页面设置
查看全部
举报