application對象代表web本身應用,因此使用application來操作web應用相關資料,application對象通常有如下兩個作用:
1.在整個web應用的多個JSP,Servlet之間共用資料。
application通過setAttribute(String attrName,Object value)方法將一個值設定成application的attrName屬性,該屬性的值對整個web都有效,因此該web應用的每個JSP頁面或Servlet都可以訪問該屬性,訪問屬性的方法為getAttribute(String attrName) .
網站訪問量的統計:application.setAttribute("count",String.valueOf(i++));
註:在不同的頁面中,可以通過application.getAttribute("count")擷取count屬性的值。application的屬性對於整個web應用的jsp,servlet都是共用的。
在servlet中並沒有application內建對象,每個web應用只有一個ServletContext執行個體,在JSP頁面中可以通過application內建對象訪問該執行個體,而servlet中則必須通過代碼擷取。
2.訪問web應用的配置參數。
通過application.getInitParameter(String paramName)來獲得配置參數,必須先將參數在web.xml檔案中用context-param元素配置。
<!--配置第一個參數-->
<context-param>
<param-name>name1</param-name>
<param-value>value1</param-value>
`
`
`
`
`
</context-param>
通過這種方式,可以將一些配置資訊放在web.xml檔案中配置,避免使用寫入程式碼方式寫在代碼中,從而更好地提高程式的移植性。