SpringMVC整合FastJson及简单使用

1.FastJson介绍

     Fastjson是阿里巴巴的一个Java语言编写的高性能功能完善的JSON库。

   

     特性:

  • 在服务器端和android客户端提供最佳性能
  • 提供简单toJSONString()和parseObject()方法的Java对象转换为JSON,反之亦然
  • 允许存在的无法改变的对象转换为从JSON
  • Java泛型的广泛支持
  • 允许自定义表示对象
  • 支持任意复杂的对象(深继承层次结构和广泛使用泛型类型)

     主要特点:

  • 快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)

  • 强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum)

  • 零依赖(没有依赖其它任何类库除了JDK)

  • 支持注解

     以上摘录自:http://blog.csdn.net/vbirdbest/article/details/72472149

     传送门:GitHub上FastJson项目中文wiki

2.springmvc整合FastJson

  1. 在springmvc的xml配置文件中,填入如下配置。
    <mvc:annotation-driven>
        <mvc:message-converters>
            <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter"/>      
        </mvc:message-converters>
    </mvc:annotation-driven>
  2. 通常默认配置已经可以满足大部分使用场景,如果你想对它进行自定义配置的话,你可以添加 FastJsonConfig Bean。
    <mvc:annotation-driven>
        <mvc:message-converters>
            <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                <property name="fastJsonConfig" ref="fastJsonConfig"/>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>
    
    <bean id="fastJsonConfig" class="com.alibaba.fastjson.support.config.FastJsonConfig">
        <!--   自定义配置...   -->
    </bean>

3.Fastjson的使用

      Fastjson的对json的解析不是自动的,需要手动调用方法进行转换。

  1. FastJson API

    // 把JSON文本parse为JSONObject或者JSONArray 
    public static final Object parse(String text); 
    
    // 把JSON文本parse成JSONObject    
    public static final JSONObject parseObject(String text); 
    
    // 把JSON文本parse为JavaBean 
    public static final <T> T parseObject(String text, Class<T> clazz); 
    
    // 把JSON文本parse成JSONArray 
    public static final JSONArray parseArray(String text); 
    
    // 把JSON文本parse成JavaBean集合 
    public static final <T> List<T> parseArray(String text, Class<T> clazz); 
    
    // 将JavaBean序列化为JSON文本 
    public static final String toJSONString(Object object); 
    
    // 将JavaBean序列化为带格式的JSON文本 
    public static final String toJSONString(Object object, boolean prettyFormat); 
    
    // 将JavaBean转换为JSONObject或者JSONArray
    public static final Object toJSON(Object javaObject); 
    

  2. FastJson注解:

             用得最多的就是@JsonField注解,其它的我目前还不知道

             给出示例:

           
      public class Person {  
          @JSONField(name="name")  //也可以写在getter和setter方法上,网上说写在方法上更符合预期。
          private String name;  
      
          @JSONField(name="age")  
          private String age;  
      
          @JSONField(name="desc")  
          private String desc; 


         @JSONField(serialize=false) //在序列化的时候就不包含这个字段了。deserialize与之相反
         private Long ProjectID






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值