学习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文档。

时间: 2024-10-03 22:40:03

学习Struts2经验总结的相关文章

配置Result——学习Struts2

使用Struts2的MVC思想中,学习Struts2的配置文件必不可少.此处重点介绍Result的学习心得并记录,Result在Struts2中-------- 本文为作者学习笔记,源于对<轻量级Java_EE企业实战(第三版)>一书的学习,内容借鉴于它. 1.Struts2提供了2种返回结果 -局部结果:将<result-/>作为<action-/>元素的子元素配置 -全局结果:将<result-/>作为<global-result-/>元素的

SSH学习-struts2的result类型

在学习struts2整合spring的过程中,以前result类型只有name属性,后面发现struts-default.xml中定义了10种result类型,在result标签中可以使用type属性来指定是哪种类型,接下来对常用的几种类型做案例进行理解. result常用类型 result类型参考struts-default.xml中对result的配置,如下所示: <result-types> <result-type name="chain" class=&qu

SSH学习-Struts2中的session

Struts中也有session,跟其他框架类似,也需要用它保存用户信息,或者其他信息.学习发现,Struts2获取session有三种方式,下面引入登录的案例,分别使用三种方式验证用户名和密码信息. Struts2获取session的三种方式 (1)使用工厂方法获取,使用ActionContext实现,session为Map<String,Object>类型 (2)使用注入方式获取session,session为Map<String,Object>类型 (3)使用ServletA

框架学习Struts2之HelloWord

一.概述 Struts2是基于MVC设计模式的web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts作为控制器(Controller)来建立模型与视图之间的数据交互.Struts2是Struts1的下一代产品,是在WebWork技术基础上进行合并的全新的框架,其全新的体系结构与Struts1差距很大.Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全分离,所以Struts2可以理解为We

JQuery EasyUI 学习——Struts2与EasyUI DataGrid数据表格结合使用显示数据库数据

因为EasyUI DataGrid只要取出后台传过来的一定格式的JSON数据,就可以在前台页面数据表格中,以一定形式显示数据库中的数据.此处,我们使用Struts2框架整合DataGrid,实现数据的显示. 一.页面内容 为了在页面中显示数据库中字段内容,需要定义一个table,通过EasyUI内部设计,自动显示数据,如下: <%@ page language="java" import="java.util.*" pageEncoding="UTF

【学习Struts2】 -- Struts2.3.24.1环境配置及HelloWorld应用

在创建好WebProject后,就可以开始进行Struts2的环境配置,可以到Struts2官网下载,本环境使用struts-2.3.24.1版本. 首先导入必要的jar包到WebProject的/WebRoot/WEB-INF/lib下,具体jar包如下图所示: 接着修改web.xml文件,加入struts2的配置信息,文件内容如下: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xs

学习Struts2.3

</pre>1.struts2.3核心jar包(若首次接触,可临时略过不看)大家能够到http://struts.apache.org/download.cgi#struts2014下载struts-2.x.x-all.zip,眼下最新版为2.3.16.3. 下载完后解压文件.开发struts2应用须要依赖的jar文件在解压文件夹的lib文件夹下. 不同的应用须要的JAR包是不同的.以下给出了开发Struts 2程序最少须要的JAR.struts2-core-2.x.x.jar :Struts

学习Struts2

Struts2 Struts2是在WebWork2基础发展而来的,和struts1一样,Struts2也是属于MVC框架.不顾有一点大家需要注意的是:尽管Struts2和struts1名字上差别不是很大,但是Struts2和Struts1在代码编写风格上几乎是不一样的.那么既然有了struts1,为何还需要推出Struts2呢? 主要是因为Struts2有以下优点:1.在软件设计上Struts2没有像struts1那样跟ServletAPI和StrutsAPI有着紧密的耦合.Struts2的应用

SSH框架学习------struts2前后台传值(二)

struts2的Action类一般都会继承(extends)ActionSupport类(Action类,即实现action的类)1.前传后:jsp里<input type="text" name="username"/>,后台Action类里有变量private String username;及其get(),set()方法即可得到此时,后传前:Action类:1)com.opensymphony.xwork2.ActionContext;定义:Act