您的位置:首页 > 编程语言 > Java开发

关于fastjson,jackson,struts2插件的使用(仅供参考)

2017-10-29 14:39 489 查看
1./************************fastjson*********************************/

//这个用来过滤一些属性
SerializeFilter fliter = new PropertyFilter() {
@Override
public boolean apply(Object arg0, String fieldName, Object arg2) {
if ("id".equals(fieldName)) {
return false;
}
return true;
}
};
//将数据转换为json,SerializerFeature.DisableCircularReferenceDetect用来解决数据的回调,比如说有实体对象,可以使用,如果没有,可以不使用
String json = JSONObject.toJSONString(user, fliter,SerializerFeature.DisableCircularReferenceDetect);


补充:
@JSONField(format="yyyy-MM-dd")//fastjson格式化日期
2./************************jackson*********************************/

ObjectMapper mapper = new ObjectMapper();
//设置日期格式化器
mapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd"));

@JsonFilter("userFilter")//jackson编码实现过滤属性,需要在类上面添加一个自己注解
FilterProvider fp=new SimpleFilterProvider().addFilter("userFilter", //看下
SimpleBeanPropertyFilter.filterOutAllExcept("id","name"));
mapper.setFilters(fp);
String json = mapper.writeValueAsString(user);
补充:在类上加@JsonIgnoreProperties({"id","age"})可以过滤多个属性,在声明属性上添加@JsonIgnore,过滤单个属性

3./************************struts2*********************************/

(1).      将我们自己配置文件中的<packageextends=”json-default”>.

(2).      Action的返回视图<result name=”” type=”json”>

(3).      因为我们配置了上面两步,那么struts2框架就会将valueStack中的栈顶元素转换成json响应到浏览器
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  json