`

利用Java反射机制将Json格式字符串反射为 Bean List

阅读更多

前面提到过Strtus2在2.1.6以后就将Json格式整合到Strtus中了,可见到struts-json-plugin,在Struts的文档里面有下面一段例子:

 

Example

Setup Action

 

This simple action has some fields:

Example:

 

Write the mapping for the action

  1. Add the map inside a package that extends "json-default"
  2. Add a result of type "json"

 

Example:

JSON example output


如例子中所示,根据配置Strtus会通过JsonUtil将对象转换为Json格式的字符串,然后通过流返回给客户端,但当Ext返回Json对象的时候,JsonUtil的反序列化功能似乎逊色了许多,大概看了一下源代码JsonUtil中能将Json格式的对象集合转为List<Map<Objcet,Object>>这种格式,而不能映射到实体类,现实中Json的工具还有许多,例如google的Json工具就提供了fromJson的方法,在这里我只是利用Java反射写了一个对简单类型反射的工具类,说了这么多废话,切入正题:

 


主要是找到SET方法然后将对应的属性设置进去,而对应的属性则是根据判断参数类型来进行的,再看下面这一句
Strtus2的Json Plugin似乎有一个问题目前还没有搞清楚,Strtus在将java.util.Date类型时间格式

2011-07-13 14:24:31

转换为Json字符串的时候变成了这个样子

 

 

2011-07-13T14:24:31

所以当提交回来的时候如果是这种时间格式是不能转换的,于是有了上面把T替换为“ ”的操作。

 

明天再研究一下到底是什么原因导致时间类型转换的异常。

分享到:
评论

相关推荐

    为了高效地将Json对象转化成Java bean对象,传统上我们是在运行是利用反射来实现.zip

    5. **处理嵌套结构**:如果JSON包含嵌套的对象或数组,我们需要递归地执行上述步骤,将嵌套的JSON对象转化为相应的Java Bean或List/Array。 这种方法虽然通用,但在大量转换时效率较低,因为它涉及到多次的反射调用...

    java-任何类型转换成json数据格式

    在所提供的代码片段中,定义了一个名为`Json`的类,该类包含了一些静态方法用于将不同的Java数据类型转换为JSON格式的字符串。这些方法包括: - `object2json(Object obj)`:这是主方法,用于处理任意类型的Java...

    List2Json.7z

    本文将深入探讨如何使用Fastjson将JSON字符串转换为Java Bean对象,以及如何将Java Bean对象转换回JSON字符串。 首先,让我们了解Fastjson的基本概念。Fastjson是阿里巴巴开源的一个高性能的JSON库,它提供了Java...

    各种对象转成JSON字符串.pdf

    在Java编程中,将各种对象转换为JSON(JavaScript Object Notation)字符串是一项常见的任务,这有助于数据交换和序列化。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在给定的...

    各种对象转成JSON字符串 (2).docx

    上述代码片段展示了一个名为`JSONUtil`的工具类,它提供了将不同类型的Java对象转换为JSON字符串的方法。这个工具类覆盖了基本类型、数组、集合(List、Set)、Map以及JavaBean对象的转换。 1. **基本类型转换**: ...

    json-jar包

    开发者可以利用这些库的功能,轻松地将Java对象转换为JSON字符串进行网络传输,或者将接收到的JSON数据解析为Java对象进行进一步处理。通过集成这些库,可以显著提高JSON处理的效率和代码的可读性,减少手动编码的...

    将对象转换为json串的工具类.pdf

    `Obj2StrUtil` 是一个Java工具类,它的主要功能是将Java对象转换成JSON格式的字符串。这个类主要处理了四种类型的对象:Map、List、数组以及普通的Java Bean对象。以下是这个类的具体解析: 1. **处理Map对象** `...

    json-lib(jar)

    而`json-lib`是一个Java库,它提供了一种方便的方式来将Java对象转换为JSON格式,反之亦然,使开发者能够轻松地在Java程序中处理JSON数据。`json-lib`支持多种数据类型,如List、Map、自定义Bean等,这使得它在Java...

    fastjson1.2.31

    例如,`JSON.parseObject()`方法用于将JSON字符串转化为Java对象,而`JSON.toJSONString()`则用于将Java对象转换成JSON格式的字符串。 **2. 性能优势** Fastjson在性能方面表现出色,它的设计目标是追求极致的速度...

    fastJson.jar

    1. JSON解析:FastJson能够将JSON字符串转换为Java对象,如Map、List、自定义类等,同时也支持将Java对象转换为JSON字符串。 2. JSON流处理:FastJson提供了基于事件的解析器,可以高效地处理大型JSON数据,避免一...

    java常用框架学习笔记

    - **属性编辑**:Spring支持自定义属性编辑器,用于将字符串转换成特定类型的值。 - **访问Properties文件**:Spring提供了多种方式来读取和管理Properties文件中的配置信息。 ##### 2.3 AOP容器...

    2017年尚学堂Java培训课程大纲.docx

    - **返回JSON数据**:学习如何将数据转换为JSON格式并返回给前端。 ##### 3.6 Hibernate框架 - **ORM框架简介**:了解对象关系映射(Object-Relational Mapping, ORM)的基本概念。 - **Hibernate框架的基本使用**...

    Java学习笔记-个人整理的

    {5.2.1}将浮点数四舍五入到指定精度}{98}{subsection.5.2.1} {6}Exception}{99}{chapter.6} {6.1}\ttfamily try-catch}{99}{section.6.1} {6.2}\ttfamily finally}{100}{section.6.2} {6.3}\ttfamily throws}{...

Global site tag (gtag.js) - Google Analytics