fastjson支持配置的PropertyNamingStrategy四种策略
PropertyNamingStrategy策略
FastJson默认使用CamelCase,在1.2.15版本之后,FastJson支持配置PropertyNamingStrategy
,支持四种策略:CamelCase
、PascalCase
、SnakeCase
和KebabCase
。
属性名策略说明:
策略 | 对象属性 | 序列化后属性 |
---|---|---|
CamelCase | userId | userId |
PascalCase | userId | UserId |
SnakeCase | userId | user_id |
KebabCase | userId | user-id |
代码实例
/**
* 模型对象
*/
public class User {
//ID
public int userId;
//名称
public String userName;
//邮箱
public String userEmail;
//手机号
public String userPhone;
}
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.PropertyNamingStrategy;
import com.alibaba.fastjson.parser.ParserConfig;
import com.alibaba.fastjson.serializer.SerializeConfig;
public class FastJsonTest {
public static void main(String[] args) {
// 创建对象并赋值
User user = new User();
user.userId = 22;
user.userName = "Joe.Ye";
user.userEmail = "test@appblog.cn";
user.userPhone = "10086";
// 序列化配置对象
SerializeConfig serializeConfig = new SerializeConfig();
serializeConfig.propertyNamingStrategy = PropertyNamingStrategy.CamelCase;;
// 序列化对象
String json = JSON.toJSONString(user, serializeConfig);
System.out.println("序列化 user json -> ");
System.out.println(json);
// 反序列化配置对象
ParserConfig parserConfig = new ParserConfig();
parserConfig.propertyNamingStrategy = PropertyNamingStrategy.CamelCase;
// 反序列化对象
user = JSON.parseObject(json, user.class, parserConfig);
System.out.println("反序列化 user object -> ");
System.out.print(user.userId + " ");
System.out.print(user.userName + " ");
System.out.print(user.userEmail + " ");
System.out.println(user.userPhone);
}
}
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/18/fastjson-propertynaming-strategy/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
打赏
海报
fastjson支持配置的PropertyNamingStrategy四种策略
PropertyNamingStrategy策略
FastJson默认使用CamelCase,在1.2.15版本之后,FastJson支持配置PropertyNamingStrategy,支持四种策略:CamelCase、PascalCase……
文章目录
关闭
共有 0 条评论