swagger在传递参数时不改变属性大小写

用了swagger以后,可能出现这种情况。按自己类定义的属性去调接口,出现了属性值丢失的问题。其实值并没有丢失,只是你在定义model的时候没有按照jackson的驼峰命名规范来,它会做个默认的强制驼峰处理

命名规范
		private String f;//纯小写不能生成
		private String id;
		private String aaaCdDe;//小驼峰命名
		private String bbbBbbCdDe;//小驼峰命名
		private String userName;//小驼峰命名
		private String qDate;//小驼峰命名
		private String ADate;//大驼峰命名-常用与类名
 		private String AaaBbbCcc;//大驼峰命名-常用与类名
		private String ABCD;//纯大写命名(不符合驼峰)
		
		/**在swagger接口属性中,该属性变成了ab*/
		private String AB;//(不符合驼峰)
		

jackson的默认行为,swagger在生成接口规范时,会强制按照内部限定的驼峰命名规范来转换后台定义的model属性名显示。

  • 比如属性中定义了String AB; 在接口传值得时候用AB属性值就丢失了,用ab接收就没问题。
    默认情况下类的成员变量以小写字母开头, 当需要以大写开头时,系统在编译时或者swagger在传递参数时都会自动将大写变为小写,带来一些不便

解决方法就是:
1、在声明变量时加上注解: @JsonProperty
2、在set/get方法加上注解:@JsonIgnore

  • 8
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值