如何從env-entry獲取參數(shù)?

從env-entry獲?。?br>馬克- to-win:馬克 java社區(qū):防盜版實(shí)名手機(jī)尾號: 73203。
馬克-to-win:用env-entry存放的參數(shù),本個web應(yīng)用中的任何servlet,jsp都可以獲得。和context-param相比,env-entry存放的參數(shù)不止為String類型。下面的comp是component的意思。



例:1.4.1

ServletHello1.java:

package com;

import java.io.IOException;
import java.io.InputStream;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ServletHello1 extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        Context ctx;
        boolean isReady = false;
        try {
            ctx = new InitialContext();
            Boolean b = (Boolean) ctx.lookup("java:comp/env/isReady");
            isReady = b.booleanValue();
        } catch (NamingException e) {
            e.printStackTrace();
        }
        System.out.println("" + isReady);
    }
}



web.xml中,在任何“servlet標(biāo)簽對兒”的外面加入(因?yàn)閑nv-entry參數(shù)不屬于任何特定的servlet,屬于整個web應(yīng)用):


<env-entry>
     <env-entry-name>isReady</env-entry-name>
     <env-entry-type>java.lang.Boolean</env-entry-type>
     <env-entry-value>true</env-entry-value>
</env-entry>



運(yùn)行Servlet后,console中輸出結(jié)果:
true