Struts2系列之动作类
来源:互联网 发布:sai软件入门教程 编辑:程序博客网 时间:2024/06/07 02:47
编写动作类的三种方式
1.动作类的第一种:普通的javaBean,没有任何继承 POJO(Plan Old Java Object)
Action类:
/** * Created by dllo on 17/7/4. * 动作类的第一种 * POJO:Plan Old Java Object */public class DemoAction1 { //动作方法: public String demo1(){ return "success"; }}
struts.xml
<struts> <package name="actions" extends="struts-default"> <action name="demo1" class="com.wangyjie.struts.actions.DemoAction1" method="demo1"> <result name="success">/success.jsp</result> </action> </package></struts>
2. 动作类第二种 实现Action接口
Action类
/** * Created by dllo on 17/7/4. * 动作类的第二种 * * 实现Action的接口 */public class DemoAction2 implements Action{ @Override public String execute() throws Exception { return SUCCESS; }}
struts.xml
<package name="action2" extends="struts-default"> <action name="demo2" class="com.wangyjie.struts.actions.DemoAction2" method="execute"> <result name="success">/success.jsp</result> </action> </package>
3. 动作类第三种:继承ActionSupport[推荐使用]
//Action类
/** * Created by dllo on 17/7/4. * 动作类的第三种: [推荐使用] * 继承于ActionSupport */public class DemoAction3 extends ActionSupport{ public String www(){ return ERROR; }}
//struts.xml
<package name="action3" extends="struts-default"> <action name="demo3" class="com.wangyjie.struts.actions.DemoAction3" method="www"> <result name="error">/error.jsp</result> </action> </package>
动作类中的动作方法编写要求
public String XXX(){}
使用通配符配置action
在配置元素时,允许在指定name属性时,使用模式字符串(“*”代表一个或多个字符)
为了防止写一些这样重复性的东西 出现了通配符
<action name="delete_Customer" class="com.wangyjie.struts.wildcard.CustomerAction" method="deleteCustomer"> <result name="success">/deleteCustomer.jsp</result> </action> <action name="edit_Customer" class="com.wangyjie.struts.wildcard.CustomerAction" method="editCustomer"> <result name="success">/editCustomer.jsp</result> </action> <action name="query_Customer" class="com.wangyjie.struts.wildcard.CustomerAction" method="queryCustomer"> <result name="success">/queryCustomer.jsp</result>
<!--通配符 类似我们之前学过的占位符一样--> <action name="*Customer" class="com.wangyjie.struts.wildcard.CustomerAction" method="{1}Customer"> <result name="success">{1}Customer.jsp</result> </action> <action name="*_*" class="com.wangyjie.struts.wildcard.{2}Action" method="{1}{2}"> <result name="success">{1}{2}.jsp</result> </action>
Action访问ServletAPI
方式一:ServletActionContext
HttpServletRequest request = ServletActionContext.getRequest();
实现ServletRequestAware接口
private HttpServletRequest request;//重写方法 @Override public void setServletRequest(HttpServletRequest httpServletRequest) { this.request = httpServletRequest; } public HttpServletRequest getRequest(){ return request; }
阅读全文
0 0
- Struts2系列之动作类
- Struts2 之配置文件编写,动作类(01)
- Struts2动作类:Action
- Struts2动作
- Struts2学习笔记(2)-动作及动作类
- struts2系列之1
- Struts2系列之-----入门
- Struts2系列之HelloAction
- Struts2系列之配置文件
- 深入分析JavaWeb Item44 -- Struts2开发核心之动作类Action
- 深入分析JavaWeb 44 -- Struts2开发核心之动作类Action
- Struts2学习之1(Struts2的工作流程,动作类的编写,struts.xml配置文件的编写)
- 【cocos2d-x】动作类之缓冲动作和组合动作的使用(变速动作)
- Cocos2d-x之动作类
- Libgdx 之Actions 动作类
- Struts2系列之数据封装
- Struts2系列之文件上传下载
- tomcat系列分析之生命周期管理初始化动作
- 【简记】Java Web 内幕——基于字节、字符的I/O(代码示例),磁盘I/O介绍,Java访问磁盘文件
- Caffe学习之ProtoBuffer
- Mongdob是什么?
- Vue-Router2.0使用1
- Qt创建和使用动态链接库
- Struts2系列之动作类
- LeetCode
- PAT排名汇总
- zeppelin mysql配置
- 修复Bug,刷新无法动态显示数据库内容
- Qt调用系统动态链接库(系统API)
- smarty 配置问题
- PullToRefreshListView
- iOS 多线程安全之产生原因