Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 4d57c32

Browse files
Update user, with constraint groups, completed
1 parent 789e024 commit 4d57c32

File tree

3 files changed

+15
-6
lines changed

3 files changed

+15
-6
lines changed

‎src/main/java/com/naturalprogrammer/spring5tutorial/commands/UserCommand.java‎

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,18 @@
1414

1515
public class UserCommand {
1616

17-
@UniqueEmail
17+
public static interface SignupValidation {}
18+
public static interface UpdateValidation {}
19+
20+
21+
@UniqueEmail(groups = SignupValidation.class)
1822
private String email;
1923

20-
@NotBlank
21-
@Size(min=1, max=100)
24+
@NotBlank(groups = {SignupValidation.class, UpdateValidation.class})
25+
@Size(min=1, max=100, groups = {SignupValidation.class, UpdateValidation.class})
2226
private String name;
2327

24-
@Password
28+
@Password(groups = SignupValidation.class)
2529
private String password;
2630

2731
private Collection<Role> roles = new HashSet<Role>();

‎src/main/java/com/naturalprogrammer/spring5tutorial/controllers/SignupController.java‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
1414

1515
import com.naturalprogrammer.spring5tutorial.commands.UserCommand;
16+
import com.naturalprogrammer.spring5tutorial.commands.UserCommand.SignupValidation;
1617
import com.naturalprogrammer.spring5tutorial.services.UserService;
1718
import com.naturalprogrammer.spring5tutorial.utils.MyUtils;
1819

@@ -37,7 +38,9 @@ public String signup(Model model) {
3738
}
3839

3940
@PostMapping
40-
public String doSignup(@Validated @ModelAttribute("user") UserCommand user,
41+
public String doSignup(
42+
@Validated(SignupValidation.class)
43+
@ModelAttribute("user") UserCommand user,
4144
BindingResult result,
4245
RedirectAttributes redirectAttributes) {
4346

‎src/main/java/com/naturalprogrammer/spring5tutorial/controllers/UserController.java‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
1515

1616
import com.naturalprogrammer.spring5tutorial.commands.UserCommand;
17+
import com.naturalprogrammer.spring5tutorial.commands.UserCommand.UpdateValidation;
1718
import com.naturalprogrammer.spring5tutorial.domain.User;
1819
import com.naturalprogrammer.spring5tutorial.services.UserService;
1920
import com.naturalprogrammer.spring5tutorial.utils.MyUtils;
@@ -62,7 +63,8 @@ public String edit(@PathVariable("userId") User user, Model model) {
6263

6364
@PostMapping("/{userId}/edit")
6465
public String update(@PathVariable("userId") User oldUser,
65-
@Validated @ModelAttribute("user") UserCommand userCommand,
66+
@Validated(UpdateValidation.class)
67+
@ModelAttribute("user") UserCommand userCommand,
6668
BindingResult result,
6769
RedirectAttributes redirectAttributes) {
6870

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /