⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 servlets10.html

📁 j2eePDF格式的电子书
💻 HTML
字号:
<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">  <head>    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />    <meta http-equiv="Content-Style-Type" content="text/css" />    <title>Accessing the Web Context</title>    <link rel="StyleSheet" href="document.css" type="text/css" media="all" />    <link rel="StyleSheet" href="catalog.css" type="text/css" media="all" />    <link rel="Table of Contents" href="J2EETutorialTOC.html" />    <link rel="Previous" href="Servlets9.html" />    <link rel="Next" href="Servlets11.html" />    <link rel="Index" href="J2EETutorialIX.html" />  </head>  <body>    <table width="550" summary="layout" id="SummaryNotReq1">      <tr>	<td align="left" valign="center">	<font size="-1">	<a href="http://java.sun.com/j2ee/1.4/download.html#tutorial" target="_blank">Download</a>	<br>	<a href="http://java.sun.com/j2ee/1.4/docs/tutorial/information/faq.html" target="_blank">FAQ</a>	<br>	<a href="http://java.sun.com/j2ee/1.4/docs/tutorial/information/history.html" target="_blank">History</a>	</td>        <td align="center" valign="center"><a accesskey="p" href="Servlets9.html"><img id="LongDescNotReq1" src="images/PrevArrow.gif" width="26" height="26" border="0" alt="Prev" /></a><a accesskey="c" href="J2EETutorialFront.html"><img id="LongDescNotReq1" src="images/UpArrow.gif" width="26" height="26" border="0" alt="Home" /></a><a accesskey="n" href="Servlets11.html"><img id="LongDescNotReq3" src="images/NextArrow.gif" width="26" height="26" border="0" alt="Next" /></a><a accesskey="i" href="J2EETutorialIX.html"></a>        </td>	<td align="right" valign="center">	<font size="-1">	<a href="http://java.sun.com/j2ee/1.4/docs/api/index.html" target="_blank">API</a>	<br>	<a href="http://java.sun.com/j2ee/1.4/docs/tutorial/information/search.html" target="_blank">Search</a>	<br>	<a href="http://java.sun.com/j2ee/1.4/docs/tutorial/information/sendusmail.html" target="_blank">Feedback</a></font>	</font>	</td>      </tr>    </table>    <img src="images/blueline.gif" width="550" height="8" ALIGN="BOTTOM" NATURALSIZEFLAG="3" ALT="Divider">    <blockquote><a name="wp64724"> </a><h2 class="pHeading1">Accessing the Web Context</h2><a name="wp64726"> </a><p class="pBody">The context in which Web components execute is an object that implements the <code class="cCode"><a  href="http://java.sun.com/j2ee/1.4/docs/api/javax/servlet/ServletContext.html" target="_blank">ServletContext</a></code> interface. You retrieve the Web context with the <code class="cCode">getServletContext</code> method. The Web context provides methods for accessing:</p><div class="pSmartList1"><ul class="pSmartList1"><a name="wp64730"> </a><div class="pSmartList1"><li>Initialization parameters</li></div><a name="wp64731"> </a><div class="pSmartList1"><li>Resources associated with the Web context</li></div><a name="wp64732"> </a><div class="pSmartList1"><li>Object-valued attributes</li></div><a name="wp64733"> </a><div class="pSmartList1"><li>Logging capabilities</li></div></ul></div><a name="wp64735"> </a><p class="pBody">The Web context is used by the Duke's Bookstore filters <code class="cCode"><a  href="../examples/web/bookstore1/src/filters/HitCounterFilter.java" target="_blank">filters.HitCounterFilter</a></code> and <code class="cCode">OrderFilter</code>, which were discussed in <a  href="Servlets8.html#wp64572">Filtering Requests and Responses</a>. The filters store a counter as a context attribute. Recall from <a  href="Servlets5.html#wp64386">Controlling Concurrent Access to Shared Resources</a> that the counter's access methods are synchronized to prevent incompatible operations by servlets that are running concurrently. A filter retrieves the counter object with the context's <code class="cCode">getAttribute</code> method. The incremented value of the counter is recorded in the log.</p><div class="pPreformattedRelative"><pre class="pPreformattedRelative">public final class HitCounterFilter implements Filter {&nbsp;&nbsp;private FilterConfig filterConfig = null;&nbsp;&nbsp;public void doFilter(ServletRequest request,&nbsp;&nbsp;&nbsp;&nbsp;ServletResponse response, FilterChain chain) &nbsp;&nbsp;&nbsp;&nbsp;throws IOException, ServletException {&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;&nbsp;&nbsp;&nbsp;StringWriter sw = new StringWriter();&nbsp;&nbsp;&nbsp;&nbsp;PrintWriter writer = new PrintWriter(sw);&nbsp;&nbsp;&nbsp;&nbsp;ServletContext context = filterConfig.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getServletContext();&nbsp;&nbsp;&nbsp;&nbsp;Counter counter = (Counter)context.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getAttribute(&quot;hitCounter&quot;);&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;&nbsp;&nbsp;&nbsp;writer.println(&quot;The number of hits is: &quot; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;counter.incCounter());&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(sw.getBuffer().toString());&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;&nbsp;}}<a name="wp64742"> </a></pre></div>    </blockquote>   <img src="images/blueline.gif" width="550" height="8" ALIGN="BOTTOM" NATURALSIZEFLAG="3" ALT="Divider">    <table width="550" summary="layout" id="SummaryNotReq1">      <tr>	<td align="left" valign="center">	<font size="-1">	<a href="http://java.sun.com/j2ee/1.4/download.html#tutorial" target="_blank">Download</a>	<br>	<a href="http://java.sun.com/j2ee/1.4/docs/tutorial/information/faq.html" target="_blank">FAQ</a>	<br>	<a href="http://java.sun.com/j2ee/1.4/docs/tutorial/information/history.html" target="_blank">History</a>	</td>        <td align="center" valign="center"><a accesskey="p" href="Servlets9.html"><img id="LongDescNotReq1" src="images/PrevArrow.gif" width="26" height="26" border="0" alt="Prev" /></a><a accesskey="c" href="J2EETutorialFront.html"><img id="LongDescNotReq1" src="images/UpArrow.gif" width="26" height="26" border="0" alt="Home" /></a><a accesskey="n" href="Servlets11.html"><img id="LongDescNotReq3" src="images/NextArrow.gif" width="26" height="26" border="0" alt="Next" /></a><a accesskey="i" href="J2EETutorialIX.html"></a>        </td>	<td align="right" valign="center">	<font size="-1">	<a href="http://java.sun.com/j2ee/1.4/docs/api/index.html" target="_blank">API</a>	<br>	<a href="http://java.sun.com/j2ee/1.4/docs/tutorial/information/search.html" target="_blank">Search</a>	<br>	<a href="http://java.sun.com/j2ee/1.4/docs/tutorial/information/sendusmail.html" target="_blank">Feedback</a></font>	</font>	</td>      </tr>    </table>    <img src="images/blueline.gif" width="550" height="8" ALIGN="BOTTOM" NATURALSIZEFLAG="3" ALT="Divider"><p><font size="-1">All of the material in <em>The J2EE(TM) 1.4 Tutorial</em> is <a href="J2EETutorialFront2.html">copyright</a>-protected and may not be published in other workswithout express written permission from Sun Microsystems.</font>  </body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -