`
胡小米
  • 浏览: 77319 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

struts2-json详解(一)

阅读更多
result   类型  为stream

<action name="ss">
   <result type="stream">
    //指定被下载文件的文件类型
    //image/jpg   图片jpg
    //image/gip   图片gif
    //application/zip
    <param name="contentType">image/jpg</param>
    //指定被下载文件的入口输入流
    <param name="inputName">targetFile</param>
   
    //指定下载的文件名
    <param name="contentDisposition">filename="wjc_lgo.jpg"</param>
   
    //指定下载文件时的缓冲大小
    <param name="bufferSize">4096</param>
   
   </result>
  </action>

这五个参数是StreamResult中需要使用到的属性,当然也可以不用配置,但是前提是属性值需要符合StreamResult默认的参数。比如这个文件的contentType是image/gif的,而StreamResult中默认的是text/plain.

JSONArray:是用于将Java中Array以及Collection转换成Json形式的字符串;
JSONObject:是将Java中的普通对象以及Map转换成Json形式的字符串;
JsonConfig:当我们将Java中的对象要转换成Json的时候,需要防止形成环状(比如在一对一等映射关系中),如果你是使用 Hibernate的时候,对于代理对象也是不能转化的,还有就是对于日期的转换也是经常会出错的(如果一定要使用日期,建议使用dwr传输数据)。以上三种情景是在使用Json的时候最容易出错的,幸好JsonConfig帮了我们大忙。使用JsonConfig可以将一个类中包含以上三种类型的属性在将对象转换成Json的时候过滤掉(当然是在客户端不需要那些属性的情况下),同时这样也能减少网络通信的数据量,提升性能。
result   类型  为json
有param下如:

ignoreHierarchy参数:表示是否忽略等级,也就是继承关系,比如:TestAction继承于BaseAction,那么TestAction中返回的json字符串默认是不会包含父类BaseAction的属性值,
ignoreHierarchy值默认为true,设置为false后会将父类和子类的属性一起返回。
<result type="json">
<param name="ignoreHierarchy">false</param>
</result>

excludeNullProperties参数:表示是否去掉空值,默认值是false,如果设置为true会自动将为空的值过滤,只输出不为空的值。
<result type="json">
<param name="excludeNullProperties">true</param>
</result>

root参数:从返回结果中根据ognl表达式取出你需要输出的结果。
只输出person对象的name属性值,配置如下:
<result type="json">
<param name="root">person.name</param>
</result>

includeProperties参数:输出结果中需要包含的属性值,这里正则表达式和属性名匹配,可以用“,”分割填充多个正则表达式。
<result type="json">
<param name="includeProperties">person.*, person\.name</param>
</result>

excludeProperties参数:输出结果需要剔除的属性值,也支持正则表达式匹配属性名,可以用“,”分割填充多个正则表达式,类同includeProperties参数。
分享到:
评论

相关推荐

    Struts2-注解第一个例子

    ### Struts2 注解应用详解 #### 一、引言 随着软件开发技术的不断进步,简化配置文件、提高代码可读性和维护性成为开发者们的共同追求。在Java Web开发领域,Struts2框架因其丰富的功能和良好的扩展性受到广泛欢迎...

    AjaxStruts2Json实例

    **AjaxStruts2Json实例详解** 在Web开发中,用户界面的实时性和互动性变得越来越重要,这使得异步更新技术如Ajax(Asynchronous JavaScript and XML)被广泛应用。Ajax允许网页在不重新加载整个页面的情况下与...

    struts2的json插件配置详解(附示例strutsJson)

    Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展且易于管理的企业级应用程序。在Struts2中,JSON(JavaScript Object Notation)插件是实现前后端数据交互的重要工具,尤其在当今Web开发中,JSON由于其...

    Struts2 json插件入门指南.pdf

    ### Struts2 JSON插件入门知识点详解 #### 1. 依赖包 - **Struts2 必需的 6 个 jar 包** - `commons-fileupload-1.2.2.jar`: 提供了文件上传功能的支持。 - `commons-io-2.0.1.jar`: 用于处理I/O操作,简化输入...

    struts2框架详解

    Struts2框架详解 Struts2是Java Web开发中的一款广泛应用的开源MVC框架,它构建在Apache Struts 1的基础上,提供了更为强大的功能和更好的灵活性。Struts2旨在简化Web应用开发,通过将表现层与业务逻辑层解耦,提高...

    struts2整合JSON

    ### Struts2整合JSON知识点详解 #### 一、概述 在现代Web开发中,JSON(JavaScript Object Notation)因其轻量级的数据交换格式而被广泛采用。Struts2作为Java Web开发中的一个重要框架,能够方便地与JSON进行整合...

    struts2的json插件配置详解(附demo)

    为了方便ajax调用传输数据,在struts2中加入的json插件用来做对象的序列化和反序列化,json插件的下载地址 http://code.google.com/p/jsonplugin/ 1. 下载json插件包,将jar包拷贝到WEB-INF/lib目录 注:struts2...

    struts2~json~gson~jquery~ajax简单应用

    ### Struts2、JSON、Gson、jQuery与Ajax简单应用详解 #### 一、概述 在Web开发领域,Struts2、JSON、Gson、jQuery和Ajax是几个非常重要的技术,它们各自扮演着不同的角色,但又能够很好地协同工作来构建高效、交互...

    struts2_json_jquery_集成详解.docx

    这个集成过程展示了如何使用Struts2、JSON和jQuery实现前后端交互,创建一个简单的用户登录功能。通过AJAX,用户输入的数据能够异步提交到服务器,服务器处理后返回JSON数据,jQuery解析数据并在页面上显示结果,...

    struts2和json交互汇编.pdf

    ### Struts2与JSON交互详解 #### 一、前言 在现代Web开发中,前后端分离成为一种趋势,这使得后端系统更加专注于业务逻辑处理而非页面展示。Struts2作为一款流行的Java Web框架,提供了强大的功能来支持这种模式。...

    Struts2返回JSON对象[参考].pdf

    ### Struts2返回JSON对象详解 #### 一、前言 在Web开发中,前后端交互数据时,JSON格式的数据由于其简洁性和易读性,成为了一种非常流行的选择。Struts2作为Java Web开发中常用的框架之一,支持多种方式返回JSON...

    struts2 API详解

    Struts2拥有丰富的插件库,如Struts2-convention-plugin(自动Action映射)、Struts2-dojo-plugin(与Dojo JavaScript库集成)、Struts2-json-plugin(支持JSON响应)等,极大地扩展了框架的功能。 10. ** strut2...

    struts-2.3.24-all 官方最新框架下载

    Struts 2是Java开发中的一个非常重要的MVC(Model-View-Controller)框架,它在Web应用程序设计中起着核心作用。此“struts-2.3.24-all”压缩包包含了官方最新的框架版本,是开发者进行Struts 2项目开发的重要资源。...

    Struts2开发详解

    Struts2通过Struts2-jquery插件或JSON结果类型,支持异步更新,提供更丰富的用户体验。 总的来说,Struts2作为一个成熟的Java web框架,具有丰富的特性和良好的社区支持,为开发者提供了高效且灵活的开发工具,是...

    Struts.2深入详解Code.7z

    这个压缩包“Struts.2深入详解Code.7z”很可能包含了与Struts 2相关的源代码示例,帮助开发者深入理解Struts 2的工作原理和实际应用。 Struts 2的核心概念: 1. **Action类**:Action类是业务逻辑的承载者,通常...

    struts2-指南

    ### Struts2 指南知识点详解 #### 1. Web应用的发展 Web应用自诞生以来经历了多个发展阶段,从最初的静态HTML页面到如今高度动态化的Web应用,这一过程见证了技术的巨大进步。 - **早期Web应用**:主要是静态的...

    struts2.0必可不少的包

    - `struts2-json-plugin`: 提供JSON支持,使Action可以直接返回JSON格式的数据,方便进行Ajax操作和移动应用开发。 6. **类型转换**: - `struts2-conversion-plugin`: 包含了各种数据类型的转换器,自动处理...

Global site tag (gtag.js) - Google Analytics