• Json字符串转换处理html编码格式,= \u003d 处理


    Json字符串转换处理html编码格式,=  \u003d 处理

    import com.alibaba.fastjson.annotation.JSONField;
    import com.fasterxml.jackson.annotation.JsonAutoDetect;
    import com.fasterxml.jackson.annotation.JsonIgnore;
    import com.fasterxml.jackson.annotation.JsonProperty;
    import com.google.gson.annotations.Expose;
    import com.google.gson.annotations.SerializedName;
    
    
    @JsonAutoDetect(fieldVisibility= JsonAutoDetect.Visibility.ANY, getterVisibility=JsonAutoDetect.Visibility.NONE)
    public class JsonReqVo {
    
        @Expose
        @SerializedName("Username")  //gson
        @JSONField(name= "Username")  //fastjson
        private String username;
    
        @Expose
        @JsonProperty("Status")
        private String status; //jackson
    
        @Expose
        private String school;
        @Expose
        private String password;
        @Expose
        private String address;
    
        @JsonIgnore   //可以直接放在field上面表示要忽略的filed   //jackson
        @Expose(serialize = false)  //gson
        @JSONField(serialize = false)  //fastjson
        private String apikey;
    
        public String getAddress() {
            return address;
        }
    
        public void setAddress(String address) {
            this.address = address;
        }
    
        public String getSchool() {
            return school;
        }
    
        public void setSchool(String school) {
            this.school = school;
        }
    
        public String getPassword() {
            return password;
        }
    
        public void setPassword(String password) {
            this.password = password;
        }
    
        public String getUsername() {
            return username;
        }
    
        public void setUsername(String username) {
            this.username = username;
        }
    
        public String getStatus() {
            return status;
        }
    
        public void setStatus(String status) {
            this.status = status;
        }
    
        public String getApikey() {
            return apikey;
        }
    
        public void setApikey(String apikey) {
            this.apikey = apikey;
        }
    }
    
    
    //测试类
    import com.alibaba.fastjson.JSON;
    import com.example.core.mydemo.json.vo.JsonReqVo;
    import com.fasterxml.jackson.annotation.JsonInclude;
    import com.fasterxml.jackson.core.JsonProcessingException;
    import com.fasterxml.jackson.databind.ObjectMapper;
    import com.google.gson.Gson;
    import com.google.gson.GsonBuilder;
    
    /**
     * Gson={"Username":"tester\u003d\u003d\u003d","password":"#\n\n"}
     * FASTJSON={"Username":"tester===","password":"#\n\n"}
     * JACKSON={"username":"tester===","password":"#\n\n"}
     */
    public class Json2Test {
    
        // 定义jackson对象
        private static final ObjectMapper MAPPER = new ObjectMapper();
    
        public static void main(String[] args) {
            JsonReqVo req = new JsonReqVo();
            req.setUsername("tester===");
            req.setPassword("#\n\n");
    
            GsonBuilder builder = new GsonBuilder();
            builder.excludeFieldsWithoutExposeAnnotation();
            //设置属性:disableHtmlEscaping
            Gson gson = builder.disableHtmlEscaping().create();  //Gson={"Username":"tester===","password":"#\n\n"}
    
            System.out.println("Gson=" + gson.toJson(req)) ;
    
            System.out.println("FASTJSON=" + JSON.toJSONString(req)) ;
    
          
          
    JSONObject jobj = JSONObject.parseObject(json);
    System.out.println("jobj1=" + jobj.get("Username").toString());
    System.out.println("jobj2=" + jobj.get("password").toString());


    try { //过滤null属性 MAPPER.setSerializationInclusion(JsonInclude.Include.NON_NULL); System.out.println("JACKSON=" + MAPPER.writeValueAsString(req)); } catch (JsonProcessingException e) { e.printStackTrace(); } } }
  • 相关阅读:
    java开发:分享一下百度ueditor和七牛的图片集成上传
    java开发:分享一下使用urlrewrite实现网址的个性访问
    javascript应用:页面解析list和map封装后的json数据
    JAVA开发:分享一些SpringMvc+Ibatis+spring的框架使用心得
    使用OLEDB读取excel和csv文件
    静态代码块、构造代码块
    序列化和反序列化
    windows下Mysql5.7.10免安装版配置
    form表单中的encType属性
    关于字符编码,你所需要知道的(ASCII,Unicode,Utf-8,GB2312…)
  • 原文地址:https://www.cnblogs.com/oktokeep/p/16769074.html
Copyright © 2020-2023  润新知