学习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文档。
学习Struts2经验总结的更多相关文章
- 学习struts2
有部分内容转载牛人的博客: http://blog.csdn.net/hudie1234567/article/details/6730481 http://blog.csdn.net/lishuan ...
- 学习Struts2的个人疑惑及问题解决
刚开始学习SSH框架中Struts2时,个人疑惑以及一些问题总结一下. 1.package节点namespace属性值决定访问路径问题 namespace不写或写namespace=&qu ...
- 学习struts2及MVC
1.MVC模式基础 1.1.MVC模式简介 MVC是一种架构型模式,它本身并不引入新的功能,只是用来指导我们改善应用程序的架构,使得应用的模型和视图相分离,从而达到更好的开发和维护效率.在MVC模式中 ...
- 学习Struts2的第一个应用步骤
---恢复内容开始--- 一.在官网 http://struts.apache.org/下载struts-2.3.31-all 1. 打开struts-2.3.31-all,将struts-2.3. ...
- 深入学习Struts2
本部分主要介绍struts.xml的常用配置. 1.1. 包配置: Struts2框架中核心组件就是Action.拦截器等,Struts2框架使用包来管理Action和拦截器等.每个包就是多个A ...
- 框架学习Struts2之HelloWord
一.概述 Struts2是基于MVC设计模式的web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts作为控制器(Controller)来建立模型与视图之间的数据交互.Str ...
- SSH框架学习------struts2前后台传值(二)
struts2的Action类一般都会继承(extends)ActionSupport类(Action类,即实现action的类)1.前传后:jsp里<input type="text ...
- SSH框架学习------struts2(一)
1.总的目录 2.所有程序 1)index.jsp很简单 <%@ page language="java" contentType="text/html; char ...
- Java——Struts2 crud 简单实例(学习struts2和ssh) 用Myeclipse实现
1.new web project 2.给新建的web项目添加struts2支持 3.项目结构中有了struts.xml和struts2核心库 4.编码 4.1项目结构图 4.2源代码: (1)DbU ...
随机推荐
- nmap常用参数详解
nmap常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 借用英雄联盟的一个英雄赵信的一句话:“即使敌众我寡,末将亦能万军丛中取敌将首级!”.三国关羽,万军丛中斩了颜良, ...
- 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'Address'中的标识列指
在有自增长的SQL表格里面插入指定ID的数据的时候,会禁止你操作,提示如题目,解决办法: set identity_insert address on ,,,) set identity_insert ...
- 学习windows编程 day4 之 矩形的操作
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRU ...
- CentOS6.x下yum安装MySQL5.5/5.6
1. 安装mysql-5.5的yum源 # rpm -ivh http://repo.mysql.com/yum/mysql-5.5-community/el/6/x86_64/mysql-commu ...
- DOM-Document对象
一. 整体介绍 这里介绍DOM对象中的Document对象. 何为Document对象?每个载入浏览器的HTML文档都会成为Document对象,Document对象可以帮助我们对所有的HTML ...
- jsp四大对象
发送参数: <a href="deal.jsp?id=1&user=用户&pwd=">处理页</a> 接收参数: <% String ...
- 淘淘商城之springmvc前端控制器
一.web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=&qu ...
- 20155332 2016-2017-2 《Java程序设计》第9周学习总结
20155332 2016-2017-2 <Java程序设计>第9周学习总结 教材学习内容总结 了解JDBC架构 掌握JDBC架构 掌握反射与ClassLoader 了解自定义泛型和自定义 ...
- rest framework错误笔记——AssertionError: Cannot apply DjangoModelPermissionsOrAnonReadOnly on a view that does not set `.queryset` or have a `.get_queryset()` method.
用到@api_view装饰器时,访问路由查看api数据时,报错: AssertionError: Cannot apply DjangoModelPermissionsOrAnonReadOnly o ...
- Delpher 必记-delphi环境安装
//Delpher 必记 环境: 安装包: 1.所有第三方控件包放在没有中文名的路径:如F:\DComp 安装包放在对应的版本的文件夹里面(实际中没有分类),然后看安装包的引用路径和输出路径,都要设定 ...