두 개의 개별 모델 AccountDetailsForm
및 AccountDetails
이 양식 제출을 위해 사용하고 후자는 지속성을 위해 사용합니다.Spring 3.1 유효성 검사 - 양식 제출 및 지속성을 위해 2 개의 별도 모델이있는 경우 @ valid를 사용하는 방법
AccountDetailsForm :
public class AccountDetailsForm {
private AccountDetails accountDetails;
@NotNull
private String confirmPassword;
//setter and getters
}
및 AccountDetails :
@Entity
@Table(name = "ACCOUNT")
public class AccountDetails {
@Id
@Column(name = "USER_NAME")
@NotEmpty
@Max(value = 60)
private String userName;
@Column(name = "PASSWORD")
@NotEmpty
@Min(value = 8)
private String password;
//setters and getters
}
가 지금은 @Valid
를 사용하여 제출 양식을 확인하는 오전 : 나는 지속성 최대 절전 모드 사용하고
@RequestMapping(value="userRegistration", method = RequestMethod.POST)
public ModelAndView registerUser(@Valid AccountDetailsForm accountDetailsForm, BindingResult result,Model model){
//I autowire localValidatorFactoryBean to validate the fields in AccountDetails bean.
localValidatorFactoryBean.validate(accountDetailsForm.getAccountDetails(), result);
if (result.hasErrors()){
model.addAttribute("accountDetailsForm", new AccountDetailsForm());
model.addAllAttributes(result.getModel());
return new ModelAndView("userRegistration");
}
. 명시 적으로 validate()
메서드를 호출하거나 스프링 유효성 검사기 구현을 사용하지 않고 @Valid
을 사용하여 accountDetails bean의 유효성을 검사 할 수 있습니까?
confirmPassword
해결 방법에 대한 제안을 듣겠습니다. 모델에서 confirmPassoword
필드를 갖는 것이 적절하지 않기 때문에 현재 접근 방식을 따르고 있습니다. AccountDetailsForm
가 컨트롤러에 @Valid
로 확인되면
public class AccountDetailsForm {
@Valid
private AccountDetails accountDetails;
@NotNull
private String confirmPassword;
//setter and getters
}
이 AccountDetails
너무 확인됩니다
어떤 자바 클래스 유형이 '모델 모델'이다. 이것은 봄 mvc 클래스 또는 당신이 작성한 것입니까? – emeraldjava
봄 mvc 클래스 – shazinltc