1

我的条目中有以下条目,web.xml并且我需要在我的 java 文件中使用该类的实例,我该怎么做?

<servlet>
    <servlet-name>DummyServlet</servlet-name>
    <servlet-class>javax.faces.webapp.Xxxx</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
4

2 回答 2

1

目前我不相信你可以作为 servlet 容器创建任何给定 servlet 的单个实例并产生线程来满足请求。访问容器也正在使用的那个实例根本不符合您的利益

还有(现已弃用)ServletContext.getServlet("yourClassName")。但是不要这样做我很难想象在什么情况下您需要控制 DI 和良好设计无法帮助您避免的 servlet 实例。具体问题是什么?

于 2013-01-24T12:49:15.827 回答
0

您通常不需要,servlet 容器负责为 web.xml 中的每个 servlet 元素实例化单个 Servlet 实例,并使用这些实例来处理请求和生成响应。

否则,您可能需要解析 web.xml 并使用 Class.forName(className) 获取 servlet 类,然后使用 clazz.newInstance() 创建一个实例,假设存在默认构造函数(它应该,因为这是一个 servlet) .

于 2013-01-24T12:49:24.537 回答