`
reymont
  • 浏览: 530242 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

fastjson @JSONField自定义输出字段

    博客分类:
  • json
阅读更多

 

 

在数据库和JAVA实体类命名转换过程中,命名不一致是经常发生的问题。fastjson中注解@JSONField帮忙解决了这个问题。

 

public class RoleData{
@JSONField(name="role_name")
private String roleName;
@JSONField(name="role_server")
private String roleServer;
@JSONField(name="role_level")
private String roleLevel;
@JSONField(name="role_coin")
private String roleCoin;
public String getRoleName() {
return roleName;
}
public void setRoleName(String roleName) {
this.roleName = roleName;
}
public String getRoleServer() {
return roleServer;
}
public void setRoleServer(String roleServer) {
this.roleServer = roleServer;
}
public String getRoleLevel() {
return roleLevel;
}
public void setRoleLevel(String roleLevel) {
this.roleLevel = roleLevel;
}
public String getRoleCoin() {
return roleCoin;
}
public void setRoleCoin(String roleCoin) {
this.roleCoin = roleCoin;
}
 
}

 

 

 

可以通过@JSONField制定日期格式

public class A {
      // 配置date序列化和反序列使用yyyyMMdd日期格式
      @JSONField(format="yyyyMMdd")
      public Date date;
 }

 

也可以通过@JSONField指定字段的顺序

 

public static class VO {
    @JSONField(ordinal = 3)
    private int f0;
 
    @JSONField(ordinal = 2)
    private int f1;
 
    @JSONField(ordinal = 1)
    private int f2;
}

 

 

 

参考:

https://github.com/alibaba/fastjson/wiki/常见问题

JSONField · alibaba/fastjson Wiki · GitHub

XPath 语法

http://www.w3school.com.cn/xpath/xpath_syntax.asp

分享到:
评论

相关推荐

    关于fastjson的@JSONField注解的一些问题(详解)

    例如,如果你定义了一个字段`@JSONField(name="project_id") private Long ProjectID`,在Fastjson 1.1.15版本中,你会发现序列化结果并非预期的`"project_id":xxx`形式,反序列化时也不会正确地将`"project_id":xx`...

    Android FastJSON小示例

    在这里,我们创建了一个`User`类,并使用`@JSONField`注解指定字段映射到JSON的键。然后通过`JSON.toJSONString()`方法将`User`对象转换为JSON字符串。 FastJSON还提供了其他高级功能,如类型转换、流式解析、...

    fastjsondemo

    - `@JSONField(deserializeUsing = CustomDeserializer.class)`: 自定义反序列化器。 6. **处理日期** - `@JSONField(format = "yyyy-MM-dd HH:mm:ss")`: 设置日期格式。 - `DateFormatUtils`: 提供格式化日期的...

    fastjson使用案例源码

    - 自定义类的字段名可能与JSON键不一致,可以使用`@JSONField(name="json_key")`指定映射关系。 5. **处理日期** - 默认情况下,Fastjson将日期转换为毫秒值。可以自定义日期格式,如`@JSONField(format="yyyy-MM...

    fastjson 常用 总结

    - 使用`@JSONField(serialzeFeatures=Feature..., deserializeFeatures=Feature...)`注解来自定义字段的序列化和反序列化行为。 - 实现`com.alibaba.fastjson.serializer.SerializerFeature`和`...

    很好用的JAVA类转JSON工具:FastJSON (2).pdf

    对于自定义逻辑,可以使用注解`@JSONField`来指定字段的序列化和反序列化行为,比如忽略某个字段、自定义序列化格式等。 此外,FastJSON提供了其他有用的功能,如JSONPath(类似于XPath,用于查询JSON数据)、JSON...

    处理json的包,fastjson

    Fastjson提供了`@JSONField`注解,用于控制字段的映射和忽略。例如,可以设置某个字段在序列化时不包含,或者在反序列化时忽略。 ```java public class Person { @JSONField(serialize=false) private String ...

    fastjson定制工程,别名配置化

    在原生的Fastjson中,如果我们想要为某个类的字段设置别名,通常是通过`@JSONField(serializeName = "别名")`注解来实现。这种方式在字段名称相对固定的场景下是可行的,但如果字段名称需要频繁调整,就会变得不太...

    fastjson使用

    - `JSONField(name="jsonField")`可以指定JSON字段名与Java字段名的映射关系。 - `@JSONField(format="yyyy-MM-dd HH:mm:ss")`可以设置日期格式。 5. **处理嵌套结构** - 对于包含复杂嵌套的对象,Fastjson能...

    fastjson.rar

    2. 对于复杂对象,合理使用`@JSONField`进行字段映射,避免类型不匹配的问题。 3. 在处理敏感数据时,务必注意数据加密,防止数据泄露。 4. 适当使用Fastjson的配置选项,如忽略空值、启用或禁用自动类型检测等,...

    springmvc fastjson 反序列化时间格式化方法(推荐)

    在实体类中,我们可以在日期类型(如`Date`)的字段上添加`@JSONField`注解,指定日期格式。例如: ```java import com.alibaba.fastjson.annotation.JSONField; public class User { @JSONField(format = "yyyy-...

    fastjson使用详解.md

    - `@JSONField` 注解提供了丰富的自定义选项,如字段名称映射、排序、日期格式等。 - `name` 属性用于指定 JSON 字段名。 - `ordinal` 属性用于控制字段的排序位置。 - `serialize` 属性用于控制是否序列化该...

    fastjson各版本jar包以及使用方法

    1. **类型转换**:Fastjson支持自定义类型转换器,通过`@JSONField(serializeUsing=, deserializeUsing=)`注解实现。 2. **忽略字段**:使用`@JSONField(serialize=false, deserialize=false)`注解可忽略特定字段。...

    fastJson用于格式的转换

    例如,可以通过`@JSONField`注解来控制字段的序列化和反序列化行为: ```java public class Person { @JSONField(name="full_name") private String name; @JSONField(format="yyyy-MM-dd") private Date ...

    ssh将list自定义转化为json

    此外,如果你的实体类属性名称与JSON键不匹配,可以通过`@JSONField`注解进行映射: ```java public class Person { @JSONField(name = "username") private String name; @JSONField(name = "user_age") ...

    json转换fastjson1.7.2jar

    - 可以通过`@JSONField(serialize=false)`注解来忽略某些字段不进行序列化。 - 使用`JSONFilter`接口可以自定义序列化和反序列化的过滤逻辑。 5. **性能优化:** - Fastjson在设计时就注重了性能,它的性能表现...

    Java的JSON处理器fastjson使用方法详解

    @JSONField(name = "username") // 使用@JSONField注解可以自定义JSON字段名 private String name; // 构造函数、getters和setters省略 } public class Group { private Long id; private String name; ...

    fastjson1.2.2.rar

    - **全面的类型支持**:Fastjson 支持所有基本数据类型、Java 集合框架、自定义类型等,同时也支持 JSON 标准的注解,如 `@JSONField`,用于自定义字段映射规则。 - **动态解析**:Fastjson 提供了 `JSONPath` 功能...

    fastjson.jar包

    - **注解支持**: 使用`@JSONField`注解可以自定义字段的序列化和反序列化行为。 5. **实际应用** - **Web服务**: 在RESTful API中,Fastjson用于构建JSON响应和解析请求体。 - **移动开发**: 在Android开发中,...

    fastjson.jar

    3. JSON反序列化策略:通过`@JSONField`注解,可以自定义字段的序列化和反序列化规则。 四、最佳实践 1. 使用Fastjson进行大数据量处理时,应优先考虑使用流式API,避免一次性加载整个JSON到内存。 2. 对于敏感...

Global site tag (gtag.js) - Google Analytics