struts 2
wzh20099
这个作者很懒,什么都没留下…
展开
-
struts2的工作流程
[img]http://dl.iteye.com/upload/attachment/274735/33edb469-ca6c-3d13-ac73-918d7c8ba9b8.jpg[/img]struts2的工作流程StrutsPrepareAndExecuteFilter是struts2框架的核心控制器,它负责拦截由/*指定的所有用户请求,当用户请求到达时,该filter会过滤用...原创 2010-07-08 13:22:37 · 67 阅读 · 0 评论 -
struts2中的异常处理
Struts2 中的异常处理?异常有几种类型:1.意外的错误2.改变工作流3.通过与用户交互来恢复4.显示错误下面分别对这几种异常的解析1.意外的错误 [code="java"] /WEB-INF/jsp/error.jsp /WEB-INF/jsp/dberror.jsp...原创 2010-07-22 17:23:46 · 81 阅读 · 0 评论 -
struts2 支持的下载以及如何动态生成excel表格文件
struts2支持的下载 , 以及下载方法的实现方式先说struts的实现配置struts.xml[code="java"] application/vnd.ms-excel attachment;afilename="AllUsers.xls" downloadFile [/code][code="java"]i...2010-07-15 23:35:14 · 93 阅读 · 0 评论 -
struts2的token机制
token机制:解决页面重复提交struts2中的步骤:1.struts2提供了token拦截器 [code="java"] /index.jsp /WEB-INF/page/message.jsp [/code]2.在表单中体检标签 [code="java"] 姓名: [/co...原创 2010-07-11 18:15:04 · 272 阅读 · 0 评论 -
struts2的ognl表达式
[img]http://dl.iteye.com/upload/attachment/276130/62094e3f-9616-3e3c-85ba-5d1760143cb0.jpg[/img][img]http://dl.iteye.com/upload/attachment/276134/426dc452-43a8-3186-b086-a2dff06f6a92.jpg[/img]...原创 2010-07-11 16:59:07 · 92 阅读 · 0 评论 -
struts2的学习笔记+测试源代码
[b][i][u][color=darkred]学习struts2的测试代码[/color][/u][/i][/b][color=blue]之前用的都是struts1 , 现在想学下struts2 , 在学习的过程中,觉得struts2比struts1好很多 ,所以花了两天时间写了点学习时的测试代码,希望对于struts2的初学者有所帮助,以下的测试代码都经过本人测试的,没有任何问题,下载...2010-07-11 15:05:55 · 79 阅读 · 0 评论 -
struts2中的国际化问题
国际化1.全局范围的资源文件 在src目录下简历资源文件,取名过则为:baseName_laguage_country.properties,如wzh_en_US.properties,wzh_zh_CN.properties, 然后在struts.xml中配置 [code="java"] [/code] value为资源文件名称的baseName 2....原创 2010-07-11 14:54:26 · 117 阅读 · 0 评论 -
struts2的输入校验+常用的校验器+基于XML实现的一些特性
输入验证的流程:1. 类型转换器对请求参数执行类型转换,并把转换后的值赋给action的属性。2. 如果在执行类型转换的过程中出现异常,系统会将异常信息保存到ActionContext, conversionError拦截器将异常信息添加到fileErrors里。不管类型转换是否出现异常 ,都会进入第3步。3. 系统通过反射技术先调用action的val...2010-07-11 14:25:18 · 133 阅读 · 0 评论 -
srtuts2的拦截器(interceptor)
1. 自定义的拦截器 第一步:编写自定义的拦截器类,该类实现import [code="java"]com.opensymphony.xwork2.interceptor.Interceptor;接口 //下面模拟用户登录 import com.opensymphony.xwork2.ActionContext;import com.opensymphony.x...原创 2010-07-11 14:09:28 · 128 阅读 · 0 评论 -
struts2上传文件及多文件上传
1. struts2中的文件上传 第一步:在WEB=INF/lib下加入commons-fileupload-1.2.1.jar , commons-io-1.3.2.jar。 第二步:把form表单的enctype属性设置为"multipart/form-data",如 [code="java"] 文件: //${pageC...原创 2010-07-10 18:32:03 · 82 阅读 · 0 评论 -
struts2如何获取Request-Session-ServletContext-Response
1. 访问和添加request/session/application属性 如果只是往request/session/application中设置属性,可以用下面的方式 [code="java"] ActionContext ctx = ActionContext.getContext(); ctx.getApplication().put("app", "应用范围");...原创 2010-07-10 18:13:55 · 83 阅读 · 0 评论 -
stuts2的类型转换
1.自定义类型转换器 第一步:编写自定义的转换器类[code="java"]import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Map;import com.opensymphony.xwork2.convers...原创 2010-07-10 18:11:48 · 68 阅读 · 0 评论 -
struts2接收请求参数的原理解析
接受请求参数的原理在struts2中没有actionForm ,jsp中的表单元素可以在action中定义同名的名称来接受请求参数然后生成set方法 内部机制:struts2的拦截器,会根据页面提交到action的参数,用放反射技术在action中寻找同名的属性,然后调用action的set方法注入属性值 此外,如果在action中的属性太多,可以包装成一个对象 ,用法参考...原创 2010-07-10 18:09:41 · 134 阅读 · 0 评论 -
struts2动态方法(dynamic)调用的两种方式
动态方法调用的两种方式1 . 使用!+方法名调用指定方法 假设访问某一个action的url为 http://localhost:8080/hellword/dept/list.action 再假设在action中有个login()方法 要调用login方法的url为 http://localhost:8080/hellword/dept/list!login.acti...原创 2010-07-10 18:07:34 · 173 阅读 · 0 评论 -
struts2常用的常量constant
[b][color=darkred]常用的常量配置 [/color][/b] [color=blue]struts.serve.static.browserCache [/color]该属性设置浏览器是否缓存静态内容。当应用处于开发阶段时,我们希望每次请求都获得服务器的最新响应,则可设置该属性为false。[color=blue]struts.enable.DynamicMethod...原创 2010-07-10 18:05:26 · 61 阅读 · 0 评论 -
struts2属性注入+修改请求后缀
1. 属性注入 [code="java"] /images /WEB-INF/page/message.jsp [/code] 在action中必须有setSavepath()方法,用途:有一些经常变动的参数,不适合固定死可能经常面临修改的值 2 . 修改请求的后缀名 [code="java"] [/code] 3 .关于...原创 2010-07-10 18:00:46 · 135 阅读 · 0 评论 -
struts2的视图类型+中文编码+在struts.xml配置中如何传递action中的属性值
struts2是通过filter来初始化配置的,struts1 是通过servlet 加载配置的action名称的搜索路径,按包的顺序从里往外搜 1>如果没有为action指定class,默认是ActionSupport。2>如果没有为action指定method , 默认执行action中的execute()方法 。3>如果没有为result指定name属性 , 默认为s...原创 2010-07-10 17:56:12 · 71 阅读 · 0 评论 -
struts2的action是线程安全的,struts1的action不是线程安全的
为什么struts2的action是线程安全的,struts1的action不是线程安全的?先对struts1和struts2的原理做一个简单的讲解对于struts1 ,当第一次**.do的请求过来时,在内存中的actionmapping中找到相对应的action,然后new出这个action放在缓存中,当第二次一样的请求过来时,还是找的这个action,所以对于struts1来说,a...原创 2010-07-08 13:33:41 · 122 阅读 · 0 评论 -
struts2的优点
1.在软件设计上struts2没有像struts1那样跟servlet的API和struts的API有着紧密的 耦合,属于非侵入式设计 ,而struts1属于侵入式设计2.struts2提供了拦截器 ,利用拦截器可以进行AOP编程,实现如权限拦截等功能3.struts2提供了类型转换,可以把特殊的请求参数转换成需要的类型。如果是struts1, 必须要向struts...原创 2010-07-04 20:14:22 · 84 阅读 · 0 评论