0

Servlet 3.0 异步 api 的内部指定 servlet 由多路复用器池处理。getCurrentSession 的行为是什么?它会保持会话打开,直到多路复用器线程由于空闲而被破坏?

4

1 回答 1

2

Servlet 请求一直由线程池处理,因此 Servlet 3.0 在这里没有引入任何新内容。Session在事务提交后从 get close (默认情况下)获得的Thread-bound getCurrentSession(),因此只要您正确实现事务管理,您应该不会对线程池有任何问题。

Servlet 3.0 中的新功能是异步请求处理的不同阶段可以由不同的线程处理,因此您不能Session在这些阶段使用线程绑定。但是,您仍然可以Session在单个处理阶段内使用线程绑定。

异步处理也给 View 模式中的 Open Session 带来了问题。

但是,只要您不使用异步 API,所有这些问题都无关紧要。

于 2012-04-11T19:54:03.797 回答