转载请注明http://www.cnblogs.com/majianming/p/8491020.html
在写项目过程中,遇到了需要定义返回的json字段格式的问题
例如在实体属性中,我有一个字段是userName,那么需要在json中出现的样子是user_name,即采用下划线命名法
那么可以采用@JsonProperty这个注解自定义@JsonProperty("user_name")
但是如果我全部的属性都要这样采用下划线命名法,那我一个个加?
其实只要定义jackson的属性命名策略就可以了 在配置文件中添加
(yml格式)
spring:
jackson:
property-naming-strategy: SNAKE_CASE
(propreties格式)
spring.jackson.property-naming-strategy=SNAKE_CASE
就可以了
全部策略有
策略 | 例子 | 备注 |
LOWER_CAMEL_CASE | userName | 默认策略 |
KEBAB_CASE | user-name | |
LOWER_CASE | username | |
SNAKE_CASE | user_name | |
UPPER_CAMEL_CASE | UserName |
到这里好像没什么问题了,但是我要是只有一个实体的属性名需要映射成上面的情况之一,
但是属性名称有很多,懒得一个个加呢?
其实也有方法,只要在需要的实体上添加@JsonNaming
(PropertyNamingStrategy.SnakeCaseStrategy.
class
)这样的注解就可以了
这里可以使用的策略也和上面的表格中的一致
以上
参考
转载请注明http://www.cnblogs.com/majianming/p/8491020.html