java - servlet 声明一个私有静态类对象成员,那么在doPost等方法中使用该类对象的方法是否线程安全?
大家讲道理
大家讲道理 2017-04-18 10:50:27
0
1
661
public class MyServlet extends HttpServlet {
    private static IUtils utils= null;
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        utils.do();
    }
}

代码结构如上,do不是静态方法,且方法内使用的都是局部变量,做的事情就是连接数据库做查询,然后返回查询结果。
1.在doPost调用这个do方法是否安全?
2.是否有必要声明成静态的,我希望这个utils不要被反复创建。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(1)
黄舟

Chaque Servlet objet n'a qu'une seule instance (mode singleton) dans le conteneur Web, donc si plusieurs requêtes HTTP demandent le même Servlet, alors les threads correspondant aux multiples requêtes HTTP appelleront simultanément les Servlet Méthode doPost - Pour plus de simplicité, vous pouvez envelopper votre IUtils avec ThreadLocal.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal