... | @@ -159,7 +159,7 @@ public class MainController { |
... | @@ -159,7 +159,7 @@ public class MainController { |
|
public class CurrentUserBean {
|
|
public class CurrentUserBean {
|
|
String username;
|
|
String username;
|
|
|
|
|
|
boolean login(String u, String password) {
|
|
boolean login(String user, String password) {
|
|
...
|
|
...
|
|
username = user; // только если успешно вошли (совпали первые буквы пароля и пользователя)
|
|
username = user; // только если успешно вошли (совпали первые буквы пароля и пользователя)
|
|
return true;
|
|
return true;
|
... | @@ -173,4 +173,27 @@ public class CurrentUserBean { |
... | @@ -173,4 +173,27 @@ public class CurrentUserBean { |
|
```
|
|
```
|
|
scope="session" заставляет создавать по одной копии объекта в сессии.
|
|
scope="session" заставляет создавать по одной копии объекта в сессии.
|
|
|
|
|
|
|
|
21. Создайте отдельный контроллер LoginController (не забудьте аннотацию @Controller)
|
|
|
|
|
|
|
|
22. В метод с аннотацией @RequestMapping(value="login.do",method=GET) разместите код типа
|
|
|
|
```java
|
|
|
|
string loginDo(@RequestParam(required=true) String u, @RequestParam(required=true) String p) {
|
|
|
|
ub.login(u,p);
|
|
|
|
return "redirect:add";
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
23. Добавьте в контроллер поле ub с правильным типом и аннотацией @Autowired.
|
|
|
|
Контроллер перестанет работать и начнет выдавать ошибки про Scope (посмотрите логи).
|
|
|
|
|
|
|
|
24. Для исправления ошибок создадим автоматически генерируемый объект-посредник, заменяющий собой CurrentUserBean для использующих его компонентов Singleton:
|
|
|
|
```java
|
|
|
|
<aop:scoped-proxy/> <!-- внутрь тега bean id="userBean" -->
|
|
|
|
```
|
|
|
|
|
|
|
|
25. Ошибка должна пропасть. Добавьте в стартовый index.html (или index.jsp) форму входа в систему из прошлой практики, сменив адрес на login.do.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|