3

我需要将 init-param 值从 xml 检索到 Servlet 我使用以下代码

<servlet>
    <servlet-name>LoginServlet</servlet-name>
    <servlet-class>LoginServlet</servlet-class>
    <init-param>
        <param-name>jdbcDriver</param-name>
        <param-value>com.mysql.jdbc.Driver</param-value>
    </init-param>
</servlet>

小服务程序代码

public void init(ServletConfig config) throws ServletException {
    super.init(config);
    System.out.println(config.getInitParameter("jdbcDriver"));
}

但它显示为 null .. 任何人都可以帮助我做到这一点。提前致谢

4

3 回答 3

4

我看不出一个原因,为什么你必须重写你的init(ServletConfig sc)方法,因为你总是可以ServletConfig通过调用你继承的方法来获得你的getServletConfig()方法。

System.out.println(getServletConfig().getInitParameter("jdbcDriver"));
于 2011-12-30T19:05:36.400 回答
2

如果您有自定义初始化工作要做,请覆盖无参数的 init() 方法,并忘记 init(ServletConfig)。可以在无参数 init() 方法中调用 getServletConfig() 方法吗?是的,ServletConfig 的一个实例已经被超类 GenericServlet 保存了。

http://javahowto.blogspot.com/2006/06/common-mistake-in-servlet-init-methods.html

为类使用包总是好的。它可以实现清晰的分界。

于 2011-12-30T19:56:40.840 回答
0

嗯......它应该工作。你在 LoginServlet 中调用代码吗?和

<servlet-class>LoginServlet</servlet-class> 

是不是在任何包里?

于 2011-12-30T18:46:33.737 回答