学习Struts2经验总结
一、struts 访问路径问题
1) Struts2的思想:主要围着“action”转,只要找到“action”它就知道自己该干嘛了。
首先配置struts.xml ,我们可以明白的看到,action name="index",而result 需要返回到一个界面“index.jsp”
<struts>
<package name="default" namespace="/" extends="struts-default">
<action name="index">
<result >
/index.jsp
</result>
</action>
</package>
</struts>
2 )修改“index.jsp” ,只输出一句话:Hello Struts2!
<title>首页</title>
</head>
<body>
Hello Struts2!
</body>
3)部署项目,重启tomcat7.0 在地址栏输入 http://localhost:8080/Struts1/index (或者http://localhost:8080/Struts1/index.action)——>回车,结果如下:
4) 当我们改动了“action”的 “name”,其他地方不变,相应的在地址栏也改动它的名字,但是不会再有之前的结果,报错(找不到"action")。
<struts>
<package name="default" namespace="/" extends="struts-default">
<action name="hello">
<result >
/index.jsp
</result>
</action>
</package>
</struts>
结果:
5)解决办法:由上可知,这种情况需要重启服务,重新部署项目。现在有一个一劳永逸的方法:在struts.xml文件里加入常量 <constant name="struts.devMode" value="true" /> 使得一直处于开发模式(即Development Mode)(需要注意的是:要把value的默认值“false”改为“true”,才能是开发模式)。然后需要重启服务,再次运行,成功。
为了验证该方法是否有效,可以再将“action” name改为之前的“index” ,但是不重启服务,直接运行,实践证明:此方法可行。
6) 技巧总结i:1 写程序时可以运用的小技巧:地址栏需要输入对应的项目名称,但是太长了容易写错,没关系
此时直接单击项目——>右键——>copy Qualified Name,即可将项目名称准确无误的填入地址栏。
2.当想看struts jar包的源代码,直接单击目录: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter,只会看到这个界面
不用急,可以如下操作:在struts2-core-2.2.1.jar文件上右键——>Properties——>Java Source Attachment——>External Folder(外部目录)——>OK。需要注意的是路径不能错。
同样,要看它的doc文档,struts2-core-2.2.1.jar文件上右键——>Properties——>Javadoc Location——>Browse——>OK——>新建class——>粘贴web.xml中的一句话:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter f;——> 按下f1,即可看到右边的“help”目录下的doc文档。
本文来自博客园,作者:小虾米吖~,转载请注明原文链接:https://www.cnblogs.com/LindaBlog/p/5337780.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」