为什么NotNull注释不起作用Spring Boot

时间:2019-02-09 22:28:29

标签: java spring spring-mvc java-ee

我有几个有效的注释,只有@NotNull无效。当我尝试使用空名称保存联系人时,它会保存。如果需要,我可以上传视图文件。
这是我的实体类(仅带有@NotNull批注的部分)。

@Entity

公共类联系人{

@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Integer id;

@NotNull
private String name;

}

这是控制器类:

@Controller

公共类ContactController {

@Autowired
private ContactRepository contactRepository;

@GetMapping("/addContact")
public String addContact(Model model) {
    model.addAttribute("contact", new Contact());
    return "addContact";
}

@PostMapping("/add")
public String add(@ModelAttribute @Valid Contact contact, BindingResult bindingResult) {

    if(bindingResult.hasErrors()) {
        return "addContact";
    }
    contactRepository.save(contact);
    return "addContact";
}

}

1 个答案:

答案 0 :(得分:0)

如评论所述,改为使用注释@NotBlank。空白的字符串不为空-例如String s = ""@NotBlank将要求至少一个非空白字符。

这里是javadoc