java strut2通配符 Struts2的通配符配置方式
Struts2的Action类很有意思,你可以使用3种方式来实现具体的Action类:
(资料图)
让你的Action类继承自ActionSupport类(项目中最常用这种方式,因为ActionSupport类中定义了很多帮助方法)
让你的Action类实现Action接口
使用POJO的方式来实现,只要Action类中有一个返回值为String的execute方法就好了(这种方式使Action类最容易被测试)
以上三种Action的实现方式都可以被struts2框架自动识别,如果你在struts.xml里面配置了一个action块但是没有配置action类的路径,这样框架默认使用ActionSupport来处理请求。
但是在实际使用struts2的过程中我发现了一个问题,一个Action只有一个execute方法来处理一类请求,如果我开发的某块功能有100个不同的请求那我岂不是要写100个Action类,每个类实现一个execute方法,这样虽然满足了一个类一个责任的设计原则,但是会不会造成“类爆炸”?后来看了struts2的文档才知道,其实我们可以使用struts2灵活的通配符配置来达到减少action类的目的:
先来看看一个简单的时序图
请求从这个页面发起,只是简单的两个链接
Insert title hereADD INFO
DEL INFO
请求的控制转发是在struts.xml里面配置的
/{1}info.jsp
add,del
上面这个XML的配置内容有几点需要注意:
我开启了struts2的RMI,apache struts基于安全性考虑,RMI默认是关闭的。
大家看到action name的值跟平常有点不一样,我使用了星号通配符用来匹配JSP中的两个链接:infoadd和infodel, 要配置method="{1}", 这样要被调用的method名字就分别是add和del了。
result的JSP页面的名字也可以用通配符来配置,我分别定义了两个JSP,addinfo.jsp和delinfo.jsp,这样正好一一对应。
注意在struts2.5之后,基于安全性考虑struts2默认开启了SMI,必须显示定义Action中能被请求调用的方法,所以我有配置
看看这个Action类
public class MyFirstAction extendsActionSupport {publicString add() {returnSUCCESS;
}publicString del() {returnSUCCESS;
}
}
这个demo是为了测试struts2的通配符配置,所以两个JSP里面的内容只是返回一句话而已,这里我就不贴出来了,现在看看调用,我点第一个链接:
点第二个链接
由此可见,struts2的通配符配置真的是很灵活很强大滴,这样我们在实际项目开发中可以少写很多Action类并减少很多配置。
标签:
相关推荐:
最新新闻:
- linux实用教程复习题 linux上机复习题部分答案-当前快报
- 电脑上如何批量下载QQ空间图片?电脑版QQ空间图片批量下载
- 【聚看点】JVM常用配置参数有哪些?40道面试题解答
- 三相PMSM的转子结构有哪些特征?三相PMSM的转子结构特征 |要闻
- javascript学习笔记:get和post方法
- 膜结构车棚使用的材料有哪些?车棚膜结构使用膜材选择分析解析
- java strut2通配符 Struts2的通配符配置方式
- 《蝙蝠侠前传3:黑暗骑士崛起》蓝光高清720P1080P下载
- py前端构建学习中的pcrbox第一版:天天热议
- 凡音L2怎么样?凡音L2蓝牙后挂耳机评测|天天观速讯
- 世界最资讯丨天天动听有电脑版吗?免费的手机音乐播放器下载
- 每日消息!电脑配机有哪些注意事项?电脑配机方案方法详
- 什么是负载均衡器?负载均衡器有什么作用?-今热点
- Windows系统如何使用光标键来移动?windows使用光标键方法 全球微头条
- 怎么设置电信光纤猫的无线网络?光纤猫的无线网络设置流程
- 当前速递!虚拟主机空间是什么?虚拟主机空间有什么用途?
- 【全球播资讯】iPhone手势插件Activator怎么用?详细的使用方法
- 环球快播:蚂蚁森林给别人浇水有什么好处?详细介绍
- 全球观点:怎样修复ie浏览器?IE游览器的修复方法
- 通过Chrome来知道提交加价的请求应该是什么?_今日观点
- 索尼电视机故障怎么办?索尼电视机维修方法|全球观热点
- ro商用纯水机净化效果好不好?ro商用纯水机特点介绍
- 母亲节送什么好_母亲节送妈妈七大类型礼物_每日视点
- C语言中的double是什么意思?直击PHP的异常和错误处理
- “平均数”到底是什么意思?加权平均数又是什么意思?_世界独家
- 手机wifi连接上但不能上网怎么办?解决方法步骤 重点聚焦
- javascript索引是什么?javascript索引的概念及技巧
- 当前热门:二手笔记本多少钱?二手笔记本价格详解
- 【焦点热闻】世界上最简洁的人脸识别库:face_recognition
- 触手tv怎么直播?触手tv直播的方法-当前焦点
- 电子硬盘多少钱?市场上电子硬盘价格详情
- 舍入模式有哪些?八种舍入模式的解释 每日视讯
- 如何下载Navicat数据库管理编辑软件?如何打开.db数据库文件? 世界头条
- FB是什么意思?PCB原理图中的FB是什么意思?
- 美能达283复印机扫描怎么设置?柯尼卡美能达打印机的设置方法
- QQ象棋java通用版怎么下载?QQ中国象棋官方免费版下载
- 【全球速看料】启动定时器t0的工作指令是什么?PLC通电延时定时器(TON)应用举例
- dm-verity是如何保证安全的?dm-verity-ramdisk文件系统校验的解决方法:今日关注
- 怎么修改苹果id密码?苹果id密码修改教程-全球微资讯
- 马赛克电视墙如何设计?马赛克电视墙设计要点|当前视讯
- 豆丁网怎么免费下载?豆丁网文档下载软件:当前通讯
- 如何进行正交试验设计?试验设计—正交表的使用方法:每日时讯
- 全球最资讯丨如何在windows上交叉编译ffmpeg?具体操作步骤
- 全球热讯:Spring之AOP|使用场景、原理、配置、使用方式
- 好用的RPA流程自动化软件有哪些?详情介绍 每日时讯
- 《孤岛惊魂6》将于2月16日在全平台开启免费试玩
- 【环球报资讯】RAM展示概念图 或推出电动皮卡
- 环球观速讯丨RTX4060!机械革命游戏本只要6199
- 基于体温监测 三星手表将推出经期管理功能
- 健康度掉太快 三星升级990Pro固件-最新资讯
- 环球观察:潮邦集成灶怎么样?真实用户有话说!
- 世界快资讯丨索尼FE 50mm F1.4 GM镜头外观曝光
- 全球快资讯:2020最新新年对联大全_春节对联集锦大全
- 看视频软件app排行榜_看视频软件
- 2019立秋为什么吃饺子 立秋适合吃饺子吗
- 《战神》总监承认同伴破坏解谜体验:做的时候没想到-每日速递
- 2023年情人节单日票房破两亿 《满江红》领跑|当前速递
- 每日速看!永安林业违反会计准则 被出具警示函
- 世界最资讯丨XGPU和EA Play会员已可试玩《狂野之心》 时长约10小时
- 【世界热闻】上海迪士尼度假区与三星电子达成推广合作, 庆祝三星新品手机发布
- 程序员的好帮手?网友开始尝试用ChatGPT开发游戏
- 索尼正在研究如何把PS5塞进桌斗里:抱着送人太沉了|资讯
- 天天要闻:早期版的《战神5》 奎爷曾被雷神杀死
- “超时空办公”时代已来 联想发布智慧办公白皮书 每日时讯
- 【聚看点】拓界影像稳劲性能 三星Galaxy S23系列旗舰手机国内发布
- 即时:外国女孩穿汉服COS东方美人 网友感慨:这波中华文化输出赢麻了
- 滤镜景点诈骗又来了!7朵郁金香撑起上海武康路流量
- 速递!“逆城市”建设类游戏《伊始之地》宣传片公开
- 伊朗外交部发言人:总统莱希访华将加强伊中关系
- 当前关注:关于国际市场营销案例分析
- 世界观热点:爸爸因姜姓难取名给孩子叫去寒 网友吐槽略随意
- 当前看点!剧版《最后生还者》致敬游戏第二部彩蛋:乔尔同款背包
- 暗影精灵9Plus高能版预售 酷睿i7+RTX 4070 10999元
- 焦点速递!不止情人节,三星BESPOKE缤色铂格系列家电守护浪漫每一天
- 环球快看点丨CT检查激增,海信智慧阅片室助力三甲医院“阅图”效率提升