有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

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

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


共 (1) 个答案

  1. # 1 楼答案

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

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

    public String ServletConfig.getInitParameter(String name)
    

    web.xml文件中定义hostinit参数:

    <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");