请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

问题1:为什么不用@JsonProperty注解OrderForm

因为要把OrderForm给OrderDTO,那为什么我们不用@JsonProperty使OrderForm的返回值与前台一直,让OrderForm真正的属性值与OrderDTO一致,这样我们就可以使用BeanUtils.copyProperties();方法,进一步简化代码!


请老师赐教,我是否有地方没有理解清楚呢??

正在回答 回答被采纳积分+3

2回答

廖师兄 2018-03-25 11:25:54

你说具体一些,觉得可以如何简化,在哪里增加代码,在哪删减代码

1 回复 有任何疑惑可以回复我~
  • 提问者 takooya #1
    @Data
    public class OrderForm {
       /**  买家姓名 */
       @JsonProperty("name")
       @NotEmpty(message = "姓名必填")
       private String buyerName;
       /**  买家电话 */
       @JsonProperty("phone")
       @NotEmpty(message = "电话号必填")
       private String buyerPhone;
       /**  买家地址 */
       @JsonProperty("address")
       @NotEmpty(message = "地址必填")
       private String buyerAddress;
       /**  买家微信openid */
       @JsonProperty("openid")
       @NotEmpty(message = "微信openid必填")
       private String buyerOpenid;
       /**  购物车信息 */
       @NotEmpty(message = "购物车不能为空")
       private String items;
    }
    注意@JsonProperty()内属性名与前台接收和发送的属性名一致,OrderForm对象的属性名与OrderDTO对象属性名一致
    这样OrderForm对象赋值给OrderDTO对象的时候,就可以使用BeanUtils.copyProperties();方法了
    再加上之前写的用反射获得对象属性值为空的属性名的方法,就可以省掉自己写的OrderForm2OrderDTO的类和方法,使用BeanUtils.copyProperties();方法让OrderForm对象赋值给OrderDTO对象
    这样做有什么缺点
    回复 有任何疑惑可以回复我~ 2018-03-26 11:02:44
提问者 takooya 2018-03-26 11:02:06

@Data

public class OrderForm {
   /**  买家姓名 */
   @JsonProperty("name")
   @NotEmpty(message = "姓名必填")
   private String buyerName;
   /**  买家电话 */
   @JsonProperty("phone")
   @NotEmpty(message = "电话号必填")
   private String buyerPhone;
   /**  买家地址 */
   @JsonProperty("address")
   @NotEmpty(message = "地址必填")
   private String buyerAddress;
   /**  买家微信openid */
   @JsonProperty("openid")
   @NotEmpty(message = "微信openid必填")
   private String buyerOpenid;
   /**  购物车信息 */
   @NotEmpty(message = "购物车不能为空")
   private String items;
}

注意@JsonProperty()内属性名与前台接收和发送的属性名一致,OrderForm对象的属性名与OrderDTO对象属性名一致

这样OrderForm对象赋值给OrderDTO对象的时候,就可以使用BeanUtils.copyProperties();方法了

再加上之前写的用反射获得对象属性值为空的属性名的方法,就可以省掉自己写的OrderForm2OrderDTO的类和方法,使用BeanUtils.copyProperties();方法让OrderForm对象赋值给OrderDTO对象

这样做有什么缺点

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信