struts2的fastjson,jackson转换json简单使用

Posted finelee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2的fastjson,jackson转换json简单使用相关的知识,希望对你有一定的参考价值。

一.Fastjson使用

  1.导入fastjson.jar包

  2.使用方法

  对于对象和集合使用同样的方法

    使用JSON.toJSONString(对象)返回一个json对象

  3.如果对Date类型进行格式化输出

    @JSONField(format="yyyy-MM-dd")

    private Date birthday;

  4.关于属性是否生成在json串中设置

    在action中new一个SerializeFilter 

SerializeFilter filter = new PropertyFilter(){
@Override
public boolean apply(Object object, String name, Object value) {
System.out.println(object);//要转换成json的对象
System.out.println(name);//属性的名称
System.out.println(value);//属性值
if("id".equals(name)){
return false;//返回false代表不生成json串中
}
return true;//代表生成在json串中
}
};
JSON.toJSONString(对象,filter);

二.jackson的使用
 1.导入jackson的jackson.jar包
   2.使用方法
对于对象和集合使用同样的方法
    ObjectMapper mapper = new ObjectMapper();
    Sring json = mapper.writeValueAsString(对象);
  3.处理日期类型
    ObjectMapper mapper = new ObjectMapper();
    mapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd");//设置日期格式化器
    Sring json = mapper.writeValueAsString(对象);
  4.过滤属性
    1.实体类下所有的属性过滤
    在实体类中添加注解
    @JsonIgnoreProperties({"id","releaseDate"})//过滤的属性使用逗号隔开
    public class Product{
      private int id;
      private Sting name;
      private Date releaseDate;  
    }
    2.单个action的属性过滤
    @JsonFilter("productFilter")//使用注解定义过滤的实体类名
    public class Product{
      private int id;
      private Sting name;
      private Date releaseDate;  
    }
    action中编码的实现
    //FilterProvider fp = new SimpleFilterProvider().addFilter("productFilter",
    //          SimpleBeanPropertyFilter.filterOutAllExcept("id","name"));//只包含id与name
    FilterProvider fp = new SimpleFilterProvider().addFilter("productFilter",
              SimpleBeanPropertyFilter.serializeAllExcept("id","name"));//不包含id与name
    mapper.setFilters(fp);    
    
    String json = mapper.writeValueAsString(对象);
    


 

 


















































以上是关于struts2的fastjson,jackson转换json简单使用的主要内容,如果未能解决你的问题,请参考以下文章

Gson、FastJson、Jackson、json-lib对比总结

Jackson和FastJson性能谁更快

jackson与fastjson的使用

fastjson和gson的区别

Jackson替换fastjson的几个坑

Jackson和FastJSON 快速上手