Struts2——通配符,Action Method_DMI
Action wildcard 通配符(配置量降到最低)
使用通配符,就是为了配置简便,但是一定遵守“约定优于配置”原则,约定就是做项目之前最好事先与项目组的人或是自己规定好命名规则。
多个* {1}代表:众多*中的第一个* 但是一定要注意的是命名规范与路径问题: 例如:
<package name = "actions" extends = "struts-default" namespace="/actions">
<!-- 定义action -->
<action name="*_*" class="ab.{1}Action" method="{2}">
<result name="success">/{1}_{2}_success.jsp</result>
</action>
</package>
其中*_*可以代表(Student_add)或者其他只要符合以上规则都行
StudentAction.java文件中命名统一(TeacherAction中同理)
package ab;
import com.opensymphony.xwork2.ActionSupport;
public class StudentAction extends ActionSupport{
public String add(){
return "success";
}
public String delect(){
return SUCCESS;
}
}
Index.jsp中:(a标签中不是/开头,不然就会找不到映射的位置)
<a href="actions/Student_add.action">添加学生</a>
<a href="actions/Student_delect.action">删除学生</a>
<br>
<a href="actions/Teacher_add.action">添加老师</a>
<a href="actions/Teacher_delect.action">删除老师</a>
要注意的是:如果有类似的action,它先匹配最精确的信息,如果都有*,就谁放前面就先执行那个。
Action Method_DMI
Action执行的时候并一定要执行execute方法,例如
public String add(){
return "success";
}
1.可以在配置文件中配置Action的时候用method=来指定哪个方法,但是不常用因为会产生太多的action;在action 后加上method=“”
2.主要推荐使用:动态方法调用DMI(url地址中动态指定)
Struts2——通配符,Action Method_DMI的更多相关文章
- struts2的action方法匹配以及通配符的使用
1. ActionMethod:Action执行的时候并不一定要执行execute方法,可以在配置文件中配置action的时候用"method"属性来指定执行哪个方法,也可以在ur ...
- struts2开发action 的三种方法以及通配符、路径匹配原则、常量
struts2开发action 的三种方法 1.继承ActionSupport public class UserAction extends ActionSupport { // Action中业务 ...
- Struts2 语法--action
xml的注释: <!--叨叨叨叨--> web.xml注释格式": <?xml version="1.0" encoding="UTF-8&q ...
- Struts2之Action与配置文件
一.Struts2配置文件 1.struts.properties 在学习Action之前先学下Struts2的配置文件,与Struts2相关的配置文件有好几个,常用的有Struts.xml,web. ...
- struts2 之 Action的优化配置
总结:struts2种action的配置文件会随着业务的增加而增加,导致配置文件膨胀.struts2中提供了三种方案来解决这个问题: 1. 动态方法调用来实现. 2. 通配符配置来解决. 3. 使用注 ...
- 关于Struts2中 Action 配置method的解读
为Action配置method属性: 将Action类中的每一个处理方法都定义成一个逻辑Action方法. <!DOCTYPE struts PUBLIC "-//Apache Sof ...
- 关于Struts2通配符无效的说明
在struts2.3之前的版本,正常的配置就可以了,但在struts2.3版本之后,使用通配符调用方法时,内部会验证是否允许访问该方法. 1.struts2.5 为了增加安全性,在 struts.xm ...
- SSH框架-Struts2基础-Action
Struts2的目录结构: 解压apps目录下的struts2-blank.war: 仿照这个最基本的项目,拷贝相关文件: 1.拷贝apps/struts2-blank/WEB-INF/classes ...
- (四)Struts2的Action(深入讲解版)
Struts2的Action 开发者需要提供大量的Action,并在struts.xml中配置Action.Action类里包含了对用户请求的处理逻辑,因为我们也称Action为业务控制器. 一.编写 ...
随机推荐
- 查看linux内存使用情况
查看内存使用情况 free -m total used free shared buffers cached Mem: -/+ buffers/cache: Swap: used=total-free ...
- UVA140-Bandwidth(搜索剪枝)
Problem UVA140-Bandwidth Time Limit: 3000 mSec Problem Description Given a graph (V, E) where V is ...
- echarts 中国地图实现 省、市、区县三级联动,省级下钻、市级下钻
每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code 效果如下图: 每天学习一点点 编程PDF电子书.视频教程免费下载:http://www ...
- spring boot启动后执行方法
@Componentpublic class InitProject implements ApplicationRunner { private static final Logger logger ...
- Linux VNC安装
cat /etc/centos-release CentOS Linux release 7.4.1708 (Core) uname -r 3.10.0-693.el7.x86_64 VNC下载:ht ...
- Docker网络和容器的通信
Docker的本地网络实现其实就是利用了Linux上的网络命名空间和虚拟网络设备(特别是veth pair). 基本原理 直观上看,要实现网络通信,机器需要至少一个网络接口(物理接口或虚拟接口)与外界 ...
- 还是要习惯在linux环境下作Java开发
要FQ 怎么在ubuntu上安装jdk 网址: https://www.youtube.com/watch?v=NZB3Iy7Lve4 需要网站:http://p.web.umkc.edu/pv6xc ...
- Sql Server利用游标批量清空数据表
先吐槽一下,由于公司要为新客户部署一个全新的系统,然而公司并没有空库,所以只能把正在线上运行的数据库给备份,然后清空相关数据 下面分享一下我在做清空数据库时写的一个批量清空数据表的方法 思路:查询出该 ...
- SpringBoot整合Druid数据源
关于SpringBoot数据源请参考我上一篇文章:https://www.cnblogs.com/yueshutong/p/9409295.html 一:Druid介绍 1. Druid是什么? Dr ...
- Linux ACL 权限
ACL 是什么 ACL的全称是 Access Control List (访问控制列表) ,一个针对文件/目录的访问控制列表.它在UGO权限管理的基础上为文件系统提供一个额外的.更灵活的权限管理机制. ...