中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

pojo實(shi)體bool字段不要加is前綴(zhui)

pojo實體bool字段不要加is前綴,在lombok這類工具自動的getter,setter方法時,對于布爾類型,它有自己的命名規則,boolean會把getter方法添加統一前綴is,如boolean的getter方法就是isDefault(),而如果你的字段也命名為isDefault,那么在反序化時可能出現歧義(default不是isDefault);而問題更嚴重的是,因為你加了is前綴,那么在boolean和Boolean的getter名稱上也會出現不同,這在使用BeanUtils.copyProperties這類方法時(shi),無(wu)法從相(xiang)同的boolean屬性名(ming)復制(zhi)到另一個實體Boolean的相(xiang)同屬性上面;而如果你布爾(er)類型(xing)字段不(bu)加is前綴,是不(bu)會有這個問題的!

試驗代碼

UserDto

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder(toBuilder = true)
public class UserDto {
  private String name;
  private Boolean valid;//小寫的boolean,在get方法前自己加is
  private Boolean isVisible;
}

UserCreateDTO

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder(toBuilder = true)
public class UserCreateDTO {
  private String name;
  private boolean valid;//小寫的boolean,在get方法前自己加is
  private boolean isVisible;
}

測試代碼

UserDto userDto = new UserDto();
userDto.setName("lind");
userDto.setValid(true);
userDto.setIsVisible(true);
UserCreateDTO userCreateDTO= new UserCreateDTO();
BeanUtils.copyProperties(userDto, userCreateDTO);

可以看到,帶有is前綴的字段沒有成功復制值,而valid字段,是可以復制成功的,所以,我們不要在boolean字段前面添加is前綴

posted @ 2024-12-17 14:49  張占嶺  閱讀(180)  評論(0)    收藏  舉報