Struts2 全局结果集】的更多相关文章

转自:https://blog.csdn.net/u013161278/article/details/41855273 如果我们所有的action均有可能跳到相同的页面,则不妨使用全局result.为了方便引用我们专门建立一个package来存放公共的result.在会用到个全局的跳转时,只需要把继承自这个公共的package即可. 建立公共包,代码如下: <package name="pubResult" extends="struts-default"…
1.index,jsp <body> Result类型 <ol> <li><a href="user/user?type=1">返回success</li> <li><a href="user/user? type=2">返回error</li> <li><a href="user/user?type=3">返回global r…
全局结果集: 当许多action都有共同的结果时,如果每个package都存在一个相同结果,会使得struts.xml比较臃肿,所以使用全局的结果集.一个包内的全局结果集可以通过包的继承而被其它包使用. 这样做的好处是:通用的结果集不用多次配置,减少struts.xml的配置量. 带参数的结果集: 同jsp+servlet一样,struts2中也有转发和重定向,转发的过程在服务器端完成,这个过程共享一个值栈(value Stack),客户端并不知道页面跳转到了那个jsp页面,其地址栏中显示的是所…
package继承json-default与struts-default 返回结果是add的话将addResult属性转换为json返回(addResult属性有getter,setter方法),返回结果是查询是正常的页面跳转. 如果配置中不写param,默认会将所要带get,set的属性转为JSON. <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//…
一个选项集就是可包含在一个实体中的某种类型的字段.它定义一组选项.当一个选项集显示在窗口中时,将使用下拉列表控件.当在 Advanced Find 中显示时,则使用选择列表控件.有时,开发者将选项集称为选择列表. 能够定义一个选项集以使用当中定义的一组选项:选项集也能够使用其它地方(全局)定义的可供其它选项集字段使用的一组选项.当有一组标准的可用于多个实体的类别时,全局选项集非常实用.维护两个包括同样值的单独选项集非常难,而且,假设它们不同步,则可能会错误发生 创建和编辑选项集: 步骤1: 步骤…
例子: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"     "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts>…
后台系统中应该须要一个功能那就是将每一个请求的url地址和请求的參数log出来,方便系统调试和bug追踪,使用struts2时能够使用struts2的全局拦截器实现此功能: import java.util.Iterator; import java.util.Map; import java.util.Set; import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.StringUtils; i…
后台系统中应该需要一个功能那就是将每个请求的url地址和请求的参数log出来,方便系统调试和bug追踪,使用struts2时可以使用struts2的全局拦截器实现此功能: import java.util.Iterator; import java.util.Map; import java.util.Set; import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.StringUtils; im…
以前在采用Struts2开发的项目中,对JSON的处理一直都在Action里处理的,在Action中直接Response,最近研读了一下Struts2的源码,发现了一个更加优雅的解决办法,自己定义一个ResultType, 首先大家先看下Struts2中的源码 包com.opensymphony.xwork2下的DefaultActionInvocation 472行 /** * Save the result to be used later. * @param actionConfig cu…
定义一个可以继承的包,在这个包里面写入自己常用的拦截器,于是就实现了全局拦截器的实现. 现在,我们定义一个专门用来继承的包: <!--专门提供前台继承的包--> <package name="my" abstract="true" extends="struts-default"> <interceptors> <interceptor-stack name="myStack">…
如果有很多action,有共同的result指向, 而且属于不同的包,那么可以继承上面的包, 然后写一个<global-results> 1. jsp显示文件: <ol> <li><a href="user/user?type=1">返回success</a></li> <li><a href="user/user?type=2">返回error</a><…
1.在struts.xml中配置全局异常处理 在Action中抛出异常,此异常可以是action自己抛的,也可以是Service抛出来的,都会跳转到全局异常中,只有在当前Action中配置域全局异常返回的result中name相同的result,就能跳转到指定错误视图 并在struts.xml中对应Action中配置跳转的error视图: JSP中通过Struts标签并结合OGNL表达式从值栈中获取懂啊异常信息显示出来,如果不知道值栈中异常对象的名称可以先<s:debugger>看一下,如:…
struts.xml文件配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts…
//在前台页面去控制时间,数字,小数,金钱,是极其不明智的选择,除非你是写了良好的 js api 像freemarker , struts 都有良好的标签,我们应该好好利用,才发现的,给大家分享一下 单独的properties 文件 for example,a.properties format.time = {0,time} format.number = {0,number,#0.0##} format.percent = {0,number,##0.00'%'} format.money…
1.index.jsp <body> 动态结果 一定不要忘了为动态结果的保存值设置set get方法 <ol> <li><a href="user/user?type=1">返回success</li> <li><a href="user/user?type=2">返回error</li> </ol> </body> 2.struts.xml &l…
今天在整理之前的项目的时候想着有的action层没有做异常处理,于是想着自定义拦截器处理一下未拦截的异常. 代码: package cn.xm.exam.action.safeHat; import java.util.HashMap; import java.util.Map; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.annotation.Scope;…
在jsp/servlet中,结果集一般是指请求转发和重定向这两种. Struts2作为框架,提供了基于这两种的很多其它的结果集! 在struts-default.xml中定义了一些默认的结果集:          <result-types>             <result-type name= "chain" class="com.opensymphony.xwork2.ActionChainResult" />          …
这一章节主要介绍如何配置结果集,分为以下几个知识点: 结果集类型(result type) 全局结果集(global types) 动态结果集(dynamic type) 带有参数的结果集(type with params) result type: 结果集类型一共有十一种: dispatcher redirect chain redirectAction freemarker httpheader stream velocity xslt plaintext tiles 最常用的是前两种:一个…
理解 Interceptor拦截器类似于我们学过的过滤器,是可以在action执行前后执行的代码.是我们做web开发是经常使用的技术,比如权限控制,日志.我们也可以把多个interceptor连在一起组成一个栈. 拦截器是一种AOP(面向切面编程)思想的编程方式.它提供一种机制是开发者能够把相对独立的代码抽离出来,配置到Action前后执行. Struts2拦截器,每个拦截器只有一个对象实例,属于单例模式,struts2核心功能都是通过拦截器来实现的. 作用 对action的一些公共处理代码可以…
这一节主要讲解struts2里面的struts.xml的常用标签及作用: 解决乱码问题 <constant name="struts.i18n.encoding" value="utf-8"/> //设置编码格式为utf-8 自定义扩展名 <constant name="struts.action.extension" value="action,,wang"/> //struts默认扩展名是actio…
一.概要 二.常用四种类型的配置 Struts.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"&g…
一.struts2的工作原理 上图为struts整体结构. 1.客户端初始化一个指向servlet的请求: 2.请求通过一系列过滤器(其中的ActionContextCleanUp为可选过滤器,对struts与其他框架集成有帮助),到达StrutsPrepareAndExecuteFilter过滤器: 3.StrutsPrepareAndExecuteFilter询问ActionMapper是否调用某个action: 4.AcitonMapper决定调用某个action,Filter将请求的处理…
一.结果(result)类型 result的type属性默认为dispatcher,其他常见的属性有redirect\chain\redirectAction <action name="a1"> <result type="dispatcher"> /a1.jsp </result> </action> <action name="a2"> <result type="…
Struts2-2.5.5版本是目前为止最新的版本了,相对于之前的2.3版本以及再之前的版本而言,新版本改动了很多. 好了,废话不多说,GO CODE! 基本jar包: web.xml核心配置,这里要注意咯! <!-- struts2核心控制器 --> <filter> <filter-name>struts2</filter-name> <!-- 这里要格外注意咯 --> <filter-class>org.apache.strut…
1.关于Result我们首先来学习一下结果类型 result type. 先来看struts.xml. struts.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apa…
先来展示一个配置文件 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd" > <struts> <!-- include节点是struts2中组件化的方式 可以将每个功能模块独立到一个xml配置文件中 然后用inclu…
Struts2第二天 昨天: 1.Action的编写方式:实现Action接口.继承ActionSupport.自定义pojo作为action 2.action调用方法:默认的execute.method属性调用.动态方法调用.通配符的使用(最常用的) 3.action访问servlet API:解耦方式.接口注入.静态方法调用 4.结果集的使用:局部和全局结果集.dispatcher.redirect.redirectAction.stream 课程内容:(请求) struts2的请求参数的接…
Struts2第一天 整体课程安排:3天知识点+2天练习 第一天:入门(action和result结果集)--一般的请求+响应 第二天:请求数据处理相关(参数接收.类型转换.合法性校验.国际化) 第三天:拦截器.响应数据处理相关(值栈.OGNL.struts2标签) 第四天.第五天练习.(文件的上传下载+CRUD综合练习) 课程内容: Struts2概述(struts2框架.前世今生.开发包下载.开发包结构) 快速入门HelloWorld(入门理论.示例.运行流程分析) Struts2运行原理(…
result type: dispatcher,redirect:只能跳转到jsp,html之类的页面,dispatcher属于服务器跳转, redirect属于客户端跳转 chain: 等同于forwardaction, redirectAction: 客户端跳转到另一个action 还有freemarker,httpheader,stream(下载),volocity(类似freemarker), xslt, plaintext,tiles <?xml version="1.0&quo…
上一篇我们把Struts2中的Action接收参数的内容为大家介绍了,本篇我们就一起来简单学习一下Action的4种Result type类型,分为:dispatcher(服务端页面跳转):redirect(客户端页面跳转):chain(动作链跳转):redirectAction(客户端Action跳转),当然还有其他类型,这里我们就以这四种为例为大家介绍一下,其他几种大家有兴趣单独学习.下面我们一起来看一下上面四种的具体实现,首先是我们的配置文件: <package name="resu…