Struts中使用json需要在struts基础上加上几个包:(这里只列出了重要的几个)

commons-lang-2.4.jar;

jsonplugin-0[1].32.jar;

下面是配置文件中的几个常用的参数:

root参数用于指定要序列化的根对象,如果省去这一配置,表示要序列化action中的所有属性

ignoreHierarchy 为false时表示要序列化根对象的所有基类

excludeProperties表示排除的序列化的属性

includeProperties表示哪些属性被序列化

struts中action的配置:

<!-- jsonplugin的使用配置 --> 

<!-- package要继承json-default 以加载json插件 --> 

<action name="jsonAct" class="cn.enjoylife.prac.action.JsonAction"> 

    <result type="json">
<!-- root参数用于指定要序列化的根对象,如果省去这一配置,表示要序列化action中的所有属性 --> <param name="root">map</param> <!-- ignoreHierarchy 为false时表示要序列化根对象的所有基类 --> <param name="ignoreHierarchy">false</param> <!-- 排除hello属性,使其不被序列化 --> <param name="excludeProperties">hello</param> </result> </action>

excludeProperties和includeProperties可以使用正则表达式,例如有一个persons的对象数组。

1、如果返回的对象是一个对象数组的Json数据。

<param name="includeProperties">

persons\.name,persons\.age,persons\.gender

</param>

2、如果只返回对象数组中第一个对象的数据。

<param name="includeProperties">persons\[\d+\]\.persons1 </param>

3,如果返回一个list<object>,可以看看如下例子:

这是前台获取的数据:

这是action中的方法:

这是配置文件中的:

附加一种方法:(这种方法和servlet使用json相似)

前提需要导fastjson.jar包

配置文件中的:

jsp中的:

更多详情: http://www.open-open.com/lib/view/open1325518231062.html

Struts_json插件配置参数的更多相关文章

  1. [转载]fullPage.js中文api 配置参数~

    fullPage.js中文api 配置参数 选项 类型 默认值 说明 verticalCentered 字符串 true 内容是否垂直居中 resize 布尔值 false 字体是否随着窗口缩放而缩放 ...

  2. 为maven插件设置参数的三种方法

    很多的maven插件都提供了丰富的可选参数,用户可以通过设置特定的参数值来控制maven插件的行为.设置插件参数的方法主要有三种,分别是命令行设置,POM文件中为插件设置全局参数和POM文件中为插件设 ...

  3. jquery nicescroll 配置参数

    jQuery滚动条插件兼容ie6+.手机.ipad http://www.areaaperta.com/nicescroll/ jQuery(function($){ $("#scrollI ...

  4. maven常用插件配置详解

    常用插件配置详解Java代码    <!-- 全局属性配置 --> <properties> <project.build.name>tools</proje ...

  5. nicescroll 配置参数

    jQuery滚动条插件兼容ie6+.手机.ipad http://www.areaaperta.com/nicescroll/ 配置参数 当调用“niceScroll”你可以传递一些参数来定制视觉方面 ...

  6. vim学习、各类插件配置与安装

    vim学习.各类插件配置与安装 vim 插件 配置 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶书籍<vim实用技巧>.注:进阶书籍可以在 ...

  7. rabbitmq.config配置参数详解

    rabbitmq.config详细配置参数 详细使用方法请点击:http://www.cnblogs.com/wyt007/p/9073316.html Key Documentation tcp_l ...

  8. vim学习、各类插件配置与安装【转】

    转自:https://www.cnblogs.com/forest-wow/p/6916531.html 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶 ...

  9. Datetimepicker配置参数

    jquery的datetimepicker时间控件除了样式有点不太美观,功能性还是相当强大的. 在正常情况下input的type应该设置为"text",可点击又可输入(mask,e ...

随机推荐

  1. JS获取和设置光标的位置

    <html> <head> <script language="javascript"> function getCursortPosition ...

  2. Regular Expressions in Grep Command with 10 Examples --reference

    Regular expressions are used to search and manipulate the text, based on the patterns. Most of the L ...

  3. windows 进程间通讯方法

    Windows平台为我们提供了多种进程间通信的机制,主要包括:注册表方式.共享文件方式.共享内存方式.共享数据段.映射文件方式.管道方式. 剪贴板方式.消息方式.其中注册表方式需要增加注册表表项,而注 ...

  4. Cocopods -第三方库的管理

    前言 什么是CocoaPods? CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods ...

  5. Class Fxp\Composer\AssetPlugin\Repository\NpmRepository does not exist

    使用 composer 安装 laravel 时报错, 如下: [ReflectionException] Class Fxp\Composer\AssetPlugin\Repository\NpmR ...

  6. Objective-C 内存管理与高级环境编程 阅读分享

    常用的调试私有API uintptr_t objc_rootRetainCount(id obj) _objc_autoreleasePoolPrint();//查看自动释放池中的对象 LLVM cl ...

  7. angularjs filter cut string

    angular.module('App.controllers.MyCtrl', []) .controller('MyCtrl', function (my) {}) .filter('cut', ...

  8. FreeBSD系统更新与软件安装方法

    一.系统更新 freebsd-update fetch freebsd-update install 二.软件源更新(类似yum update.apt-get update) 1.取回源 portsn ...

  9. linux下实现tomcat定时自动重启

    tomcat自带的脚本中没有提供直接restart的模式,但是有start和shutdown两种模式.要实现restart模式,实际上只需要判断是否已经启动tomcat,若已经启动则限制性shutdo ...

  10. Controller里写自己需要的Action,参数的名字必须和路由设置的参数名一致

    Controller里写自己需要的Action,参数的名字必须和路由设置的参数名一致,如果参数不一致,传过去为null