tomcat源码中读取properties文件解读

类ServerInfo.java中加载properties文件如下:

public class ServerInfo {


    // ------------------------------------------------------- Static Variables


    /**
     * The server information String with which we identify ourselves.
     */
    private static String serverInfo = null;

    /**
     * The server built String.
     */
    private static String serverBuilt = null;

    /**
     * The server's version number String.
     */
    private static String serverNumber = null;

    static {

        try {
            InputStream is = ServerInfo.class.getResourceAsStream
                ("/org/apache/catalina/util/ServerInfo.properties");
            Properties props = new Properties();
            props.load(is);
            is.close();
            serverInfo = props.getProperty("server.info");
            serverBuilt = props.getProperty("server.built");
            serverNumber = props.getProperty("server.number");
        } catch (Throwable t) {
            ;
        }
        if (serverInfo == null)
            serverInfo = "Apache Tomcat";
        if (serverBuilt == null)
            serverBuilt = "unknown";
        if (serverNumber == null)
            serverNumber = "5.5.0.0";
        
    }
接下来在此类中提供三个静态的方法来进行读取此key值的value
 /**
     * Return the server identification for this version of Tomcat.
     */
    public static String getServerInfo() {

        return (serverInfo);

    }

    /**
     * Return the server built time for this version of Tomcat.
     */
    public static String getServerBuilt() {

        return (serverBuilt);

    }

    /**
     * Return the server's version number.
     */
    public static String getServerNumber() {

        return (serverNumber);

    }

使用如下:
// Log our server identification information
        //System.out.println(ServerInfo.getServerInfo());
        if(log.isInfoEnabled())
            log.info( "Starting Servlet Engine: " + ServerInfo.getServerInfo());

猜你喜欢

转载自houshangxiao.iteye.com/blog/1608253