下面这样感觉不够“灵活”
比如想 过滤一些 字段不让其显示出来
或者想在 iparr 里面增加一个字段。
总之感觉不够灵活。 下面这个代码我是百度来的
https://blog.csdn.net/yan9552...
恳请各位路过的大佬。分享下你们是怎么 返回json 数据的
public Map<String,Object> getip(Ipbean ipfrom){
Map<String,Object> map = new HashMap<String, Object>();
if (ipfrom.getIp()==null){
map.put("code", -1);
map.put("msg","请传入IP");
}else {
if (Tool.isip(ipfrom.getIp())==true){
Ipbean iparr=ipservice.selectStudentById(ipfrom.getIp());
// String[] colors={"红色","蓝色","绿色"};
// String text = JSON.toJSONString(colors); //序列化
// System.out.println(text);
map.put("code", 0);
map.put("msg",iparr);
}else {
map.put("code", -2);
map.put("msg","ip地址格式有误");
}
}
return map;
}
其实你的描述有点笼统,我不是很能找到具体回答哪个点,大概说一下.
过滤字段:
1.Java的transient关键字,可以让某个属性不被序列化.
2.fastjson提供了注解,JSONField(serialize=false)可以让某个字段不被序列化.
添加字段:
这块没有太理解,想在javabean里面添加字段?那你可以修改bean的定义.
只是想在返回加过里面加个字段而不需要在bean里面声明,可以将bean转换为json对象,然后对其进行put操作,之后转化成字符串返回.
fastjson使用可以看一下这篇文章,有什么没讲清楚的或者某个具体的问题无法解决可以联系我.
java中的json使用,包含fastjson和gson