如何查找运行Servlet的主机和端口

时间:2012-03-15 19:38:56

标签: java servlets

如何在不使用Servlet的情况下找到HttpServletRequest正在运行的主机端口

我需要在初始化我的servlet时知道这一点,即在Servlet#init方法中。

1 个答案:

答案 0 :(得分:1)

http://docstore.mik.ua/orelly/java-ent/servlet/ch04_01.htm#ch04-33108

servlet使用getInitParameter()方法来访问其init参数:

public String ServletConfig.getInitParameter(String name)

您在host文件中定义web.xml init-param:

<web-app>
    <servlet>
        <servlet-name>MyServletName</servlet-name>
        <servlet-class>com.mycompany.MyServlet</servlet-class>

        <init-param>
            <param-name>host</param-name>
            <param-value>myhost.mycompany.com</param-value>
        </init-param>
    </servlet>
</web-app>

并从Servlet.init()内获取,如下所示:

public void init() throws ServletException {
    getServletContext().log("init");
    // Get the value of an initialization parameter
    String value = getServletConfig().getInitParameter("host");