Advertisement
Guest User

Untitled

a guest
May 13th, 2017
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.54 KB | None | 0 0
  1. package ru.webShop.controller;
  2.  
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.stereotype.Controller;
  5. import org.springframework.web.bind.annotation.ModelAttribute;
  6. import org.springframework.web.bind.annotation.RequestMapping;
  7. import org.springframework.web.bind.annotation.RequestMethod;
  8. import org.springframework.web.bind.annotation.SessionAttributes;
  9. import org.springframework.web.bind.support.SessionStatus;
  10. import org.springframework.web.servlet.ModelAndView;
  11. import ru.webShop.dao.impl.CategoryDaoImpl;
  12. import ru.webShop.dao.impl.UserDaoImpl;
  13. import ru.webShop.models.User;
  14.  
  15. import javax.servlet.http.HttpServletRequest;
  16. import javax.servlet.http.HttpServletResponse;
  17. import java.sql.SQLException;
  18. import java.util.Objects;
  19. import java.util.regex.Matcher;
  20. import java.util.regex.Pattern;
  21.  
  22. /**
  23. * Created by Анна on 10.05.2017.
  24. */
  25.  
  26. @Controller
  27. @SessionAttributes("userJSP")
  28. public class RegistrationController {
  29.  
  30. @Autowired
  31. private UserDaoImpl userDaoImpl;
  32.  
  33. @ModelAttribute("userJSP")
  34. public User createUser() {
  35. return new User();
  36. }
  37.  
  38. @RequestMapping(value = "/registration",method = RequestMethod.GET)
  39. public ModelAndView displayRegister(HttpServletRequest request, HttpServletResponse response, @ModelAttribute("userJSP") User user, SessionStatus sessionStatus)
  40. {
  41. ModelAndView model = new ModelAndView("registration");
  42. User registeringUser = new User();
  43. model.addObject("registeringUserJSP", registeringUser);
  44.  
  45. model.addObject("userJSP", user);
  46. return model;
  47. }
  48.  
  49.  
  50. @RequestMapping(value = "/registration", method = RequestMethod.POST)
  51. public ModelAndView useLogin(@ModelAttribute("userJSP") User user, @ModelAttribute("registeringUserJSP")User registeringUser, HttpServletRequest request, HttpServletResponse response, SessionStatus sessionStatus)
  52. {
  53. ModelAndView model= null;
  54. try
  55. {
  56. boolean notExistUserInDB = !userDaoImpl.existUser(registeringUser.getEmail());
  57.  
  58. Pattern pattern = Pattern.compile("([A-Za-z0-9]{1,}[\\\\-]{0,1}[A-Za-z0-9]{1,}[\\\\.]{0,1}[A-Za-z0-9]{1,})+@([A-Za-z0-9]{1,}[\\\\-]{0,1}[A-Za-z0-9]{1,}[\\\\.]{0,1}[A-Za-z0-9]{1,})+[\\\\.]{1}[a-z]{2,4}");
  59. Matcher matcher = pattern.matcher(registeringUser.getEmail());
  60. System.out.println(matcher.matches());
  61. boolean emailIsEmail = matcher.matches();
  62.  
  63. if(notExistUserInDB && emailIsEmail) {
  64. boolean isValidPassword = registeringUser.getPassword().length() >= 3;
  65. if(isValidPassword) {
  66. registeringUser.setStatus("пользователь");
  67. userDaoImpl.add(registeringUser);
  68.  
  69. user = userDaoImpl.getUserByEmail(registeringUser.getEmail());
  70.  
  71. request.setAttribute("registeringUserJSP", registeringUser);
  72. model = new ModelAndView("registration");
  73.  
  74. model.addObject("userJSP", user);
  75. model.addObject("successfulRegistration", true);
  76.  
  77. request.setAttribute("messageSuccessfulRegistration", "Регистрация успешно пройдена");
  78. }
  79. else
  80. {
  81. model = new ModelAndView("registration");
  82. model.addObject("registeringUserJSP", registeringUser);
  83. model.addObject("userJSP", user);
  84. model.addObject("successfulRegistration", false);
  85. request.setAttribute("messageUnsuccessfulRegistration", "Пароль должен быть длиной >= 3");
  86. }
  87. }
  88. else
  89. {
  90. model = new ModelAndView("registration");
  91. model.addObject("registeringUserJSP", registeringUser);
  92. model.addObject("userJSP", user);
  93.  
  94. model.addObject("successfulRegistration", false);
  95. if (!notExistUserInDB)
  96. request.setAttribute("messageUnsuccessfulRegistration", "Пользователь с таким логином уже есть в системе.");
  97. else
  98. request.setAttribute("messageUnsuccessfulRegistration", "Введённый Вами логин не является почтовым адресом.");
  99.  
  100. }
  101.  
  102. }
  103. catch(Exception e)
  104. {
  105. e.printStackTrace();
  106. }
  107.  
  108. return model;
  109. }
  110.  
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement