Почему каждый раз создается новая корзина?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Почему каждый раз создается новая корзина?

Сообщение Anonymous »

Есть контроллер (см. листинг), он определяет поле loginprocesor, которое инициализируется при создании контроллера (с помощью внедрения зависимостей). Стоит отметить, что экземпляры компонента LoginProccesor имеют область действия внутри запроса. Вопрос: почему каждый раз, когда контроллер «перехватывает» http-запрос, встраивается новый экземпляр bean-компонента LoginProccesor (судя по хеш-кодам)? Хотя у него есть область внутри запроса, но сам контроллер имеет область действия Singleton... То есть контроллер был создан один раз -> его конструктор был вызван один раз -> экземпляр loginProccesor также был создан один раз и сразу же реализован
package com.example.testproject.controllers;
import com.example.testproject.models.LoginProccesor;
import org.springframework.beans.factory.config.BeanDefinition;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
public class LoginController {

private final LoginProccesor loginProccesor;

public LoginController(LoginProccesor loginProccesor) {
this.loginProccesor = loginProccesor;
}

@GetMapping("/")
public String loginGet() {
return "login.html";
}

@PostMapping("/")
public String loginPost(
@RequestParam String username,
@RequestParam String password,
Model model) {

if (loginProccesor.login(username, password)) {
model.addAttribute("message", "Logged");
return "redirect:/main";
} else {
model.addAttribute("message", "Error!");
return "login.html";
}

}

}



Подробнее здесь: https://stackoverflow.com/questions/788 ... every-time
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»