我在一个类上使用了JAX-WS "WebService“注释,以将它的”WebMethod“公开为web服务。该类被表示为处理对"/MyService“的调用的servlet类。
作为本质上的servlet,我希望这个类的实例只创建一次,并且基本上是一个单例。我在这个类的构造函数中有代码来创建一个赋值给成员变量的EntityManagerFactory。我看到的是,对于web服务的每个客户端请求,都会调用该构造函数。这真是不太好。
有人知道这是怎么回事吗?有人明白我在问什么吗?:)
谢谢。
发布于 2009-09-25 16:57:45
您的主题提到了SLSB,我假设它是“无状态会话Bean”。在JavaEE5中,您可以从无状态会话Bean创建web服务,也可以对类进行注释,当将其部署到兼容的web容器中时,运行时会将其作为web服务发布。
在这两种情况下,它们本身都不是Servlet,也不遵循Servlet的生命周期。
发布于 2009-09-25 18:04:27
本质上是一个servlet,我希望这个类的实例只创建一次,并且基本上是一个单例。
这取决于容器。你不能依赖它。
创建一个真正的单例--一个简单的Java类--它完成所有繁重的任务,并从servlet中调用它。
https://stackoverflow.com/questions/1478392
复制相似问题