json数据处理
依赖
json数据返回处理
public static net.sf.json.JSONObject jsonobject(Map<String, Object> datalist) {
String str = com.alibaba.fastjson.JSONArray.toJSONString(datalist, filter, SerializerFeature.WriteNullBooleanAsFalse);
final net.sf.json.JSONObject fromObject = net.sf.json.JSONObject.fromObject(str);
return fromObject;
}
private static ValueFilter filter = new ValueFilter() {
public Object process(Object obj, String s, Object v) {
if (v == null) {
return "";
}
return v;
}
};
public static String jsonString(Map<String, Object> datalist) {
String str = com.alibaba.fastjson.JSONArray.toJSONString(datalist, filter, SerializerFeature.WriteNullBooleanAsFalse);
str = str.replaceAll("\":\\s*([^\\[{\"])(.*?)(?=[[,\"]|[},]}])", "\":\"$1$2\"");
return str;
}
判断不为空
if (!net.sf.json.util.JSONUtils.isNull(jsonObject.get("data"))) {
}
集合数据处理
map集合 null->""
public static Map<String, Object> nullToEmpty(Map<String, Object> map) {
Set<String> set = map.keySet();
if (set != null && !set.isEmpty()) {
for (String key : set) {
if (map.get(key) == null) {
map.put(key, "");
}
}
}
return map;
}
string数据处理
xml数据处理
实体和json互转
public class Csentry {
@NotBlank(message = "name不能为空")
@JSONField(name="CheckCondition")
private String name;
@NotBlank(message = "zjh不能为空")
@JSONField(name="DEBUG")
private String zjh;
@NotBlank(message = "slid不能为空")
private String slid;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getZjh() {
return zjh;
}
public void setZjh(String zjh) {
this.zjh = zjh;
}
public String getSlid() {
return slid;
}
public void setSlid(String slid) {
this.slid = slid;
}
}
Csentry ss=new Csentry();
ss.setName("CheckCondition");
ss.setSlid("zjh");
ss.setZjh("slid");
String jsonString = com.alibaba.fastjson.JSON.toJSONString(ss);
Csentry cs = com.alibaba.fastjson.JSON.parseObject("{\"CheckCondition\":\"CheckCondition\",\"DEBUG\":\"slid\",\"json\":\"json\"}", Csentry.class);
实体和map互转
Map map = JSON.parseObject(JSON.toJSONString(ss), Map.class);
map.put("sss", "ss");
Csentry parseObject = JSON.parseObject(JSON.toJSONString(map), Csentry.class);
实体数据校验
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.Final</version>
</dependency>
注解 @NotBlank(message = "name不能为空")
public String jjj(Object DX) {
StringBuffer result = new StringBuffer();
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<Object>> constraintViolations = validator.validate(DX);
if(constraintViolations!=null && constraintViolations.size()>0){
for (ConstraintViolation<Object> constraintViolation : constraintViolations) {
result.append(constraintViolation.getMessage() + "<br/>");
}
}
System.err.println("------------------------------"+result);
return result.toString();
}
@JSONField(name=“CheckCondition”) 实体的别名