弹簧控制器的生命周期

时间:2019-05-16 10:35:35

标签: spring-mvc controller

问题:当弹簧控制器有多个请求时,它们将由调度程序servlet重定向到子控制器,并且该对象仅创建一次。但是服务层对象发生的情况将在所有请求中都相同,或者有任何方法可以解决在运行时更改该实例。

我尝试过这样,请提示这是否正确。

@Controller
@Scope("request")
public class RegisterController {
    @Autowired
    private EmployeeService empService;

    public EmployeeService getEmpService() {
        return empService;
    }

    public RegisterController() {
    System.out.println("in reg ctlr");
    System.out.println(hashCode());
    System.out.println("in ctlr - serv- "+empService);
    }

使用服务代码

@Service
@Scope("prototype")
public class EmployeeService implements IEmployeeService {
    public EmployeeService(){
        System.out.println("in emp service "+hashCode());
    }
    @Autowired
    private IEmployeeDao emplDao;
}

在register.jsp

<form:form action="register" modelAttribute="employee" method="post">

Name : <form:input path="name" />
email : <form:input path="email" />
password: <form:input path="password" />
    <input type="submit" value="Register" />
</form:form>

在上面的代码中,也为每个请求和服务都创建了控制器obj。这是对的吗。还会每次都创建控制器对象并服务吗?或者

0 个答案:

没有答案
相关问题