Struts2,大爷你好!第二天补一发笔记
第四节Struts2处理传入多个值
处理数目不定的字符串。多选框 String[] students
处理数目不定的JavaBean对象 List<student> Student
第五节:struts.xml配置 说明
例:
<package name="包名" namespace="/fore" abstract="true" extends="strus-default">
pageckage配置
name 包名 区分模块,没有实际作用,只是一个名字而已
extends 继承一些东西,比如拦截器
namespace 包命名空间,需要在访问action时,必须有这个前缀,地址栏名称多加入这个字段
abstract 抽象包,拦截器,需要过滤请求时(比如一些词汇),默认false
修改xml文件,需要重启tomcat
2.action配置
例:
<action name="名字" class="com.java.action.student" method="show">
name action名,所访问的的名字
class 处理类,具体的请求处理类
method 方法,比如类中有好几个方法,定义调用method中的方法,指定执行此方法
3.分模块配置方法
struts.xml文件----
<include file="模块一.xml"></include>
<include file="模块二.xml"></include>
------
模块一.xml和模块二.xml编写action
4.通配符
<action name="名称_*" class="com.java.studentAction" method="{1}">
取到第一个通配符,调用类中的第一个方法
或者*_*
第六节:动态方法调用
开启方法调用:<constant name="struts.enable.DynamicMethodInvocation" value="true" />
第七节:Action生命周期
每次请求访问,action都会创建一个新的实例
第八节:result配置
例:
<action....>
<result name="success" type="">success.jsp</result>
</action>
1.type默认是dispatcher 内部转发;--底层是forworld
2.type为redirect重定向;不带值
3.type为 chain链条;数据共享,相当于内部转发到另一个action
4.type为redirectAction重定向到action;数据同样也带不回去
上面四个常用,一定要掌握;
其他 freemarker freemarker 模板
httpheader 返回一个已配置好的HTTP头信息响应
stream将原始数据作为流传递回浏览器端
velocity呈现Velocity模板
xslt该XML可以通过XML模板进行转换
plaintext返回普通文本内容
result全局配置
--错误页面
<global-result>
<result name="error">error.jsp</result>
</global-result>
action中没有匹配的,就向上寻找去执行<global-result>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?