Java

±¾ÀàÔĶÁTOP10

¡¤Ê¹ÓÃMyEclipse¿ª·¢Struts¿ò¼ÜµÄHello World!(¼Ïñ1)
¡¤hibernateÅäÖñʼÇ
¡¤AOP±à³ÌÈëÃÅ--Javaƪ
¡¤linuxÏÂTomcat 5.0.20 Óë Apache 2 °²×°/¼¯³É/ÅäÖÃ
¡¤ÔÚwin2003ÏÂÕûºÏÁËÕûºÏTomcat5.5+ apache_2.0.53+ mod_jk_2.0.47.dll
¡¤¹¹½¨LinuxÏÂIDE»·¾³--Eclipseƪ
¡¤Jsp Á¬½Ó mySQL¡¢Oracle Êý¾Ý¿â±¸Íü(Windowsƽ̨)
¡¤ASP¡¢JSP¡¢PHP ÈýÖÖ¼¼Êõ±È½Ï
¡¤Tomcat5.5.9µÄ°²×°ÅäÖÃ
¡¤AWT GUI Éè¼Æ±Ê¼Ç(¶þ)

¡ú ·ÖÀർº½
VCÓïÑÔDelphi
VBÓïÑÔASP
PerlJava
ScriptÊý¾Ý¿â
ÆäËûÓïÑÔÓÎÏ·¿ª·¢
Îļþ¸ñÊ½ÍøÕ¾ÖÆ×÷
Èí¼þ¹¤³Ì.NET¿ª·¢
ʹÓÃFilterÖ¸¶¨ä¯ÀÀÆ÷À´»º´æ»ò²»»º´æ·þÎñÆ÷Êý¾Ý

×÷ÕߣºÎ´Öª À´Ô´£ºÔ¹âÈí¼þÕ¾ ¼ÓÈëʱ¼ä£º2005-2-28¡¡Ô¹âÈí¼þÕ¾

ʹÓÃFilterÖ¸¶¨ä¯ÀÀÆ÷À´»º´æ»ò²»»º´æ·þÎñÆ÷Êý¾Ý


     ÔÚwww.jdon.comÉÏ, ÅíÏÈÉú˵»º´æµÄÉè¼ÆÊÇÌá¸ßjavaϵͳ±íÏÖÄÜÁ¦µÄ¹Ø¼ü.»º´æµÄºÏÀíÓ¦ÓÃÔÚjiveÂÛ̳ÉϵıíÏÖÊÇ×îÓÐ˵·þÀûµÄµØ·½¡£
       ÏÂÃæÎÒÃÇÀûÓ**TTP ¹æ·¶1.1ÖжÔÇëÇóÍ·ÀàÐÍCache-ControlµÄ¶¨ÒåÀ´ËµÃ÷ÈçºÎÀûÓÃÔÚFilter»úÖÆÊµÏÖHttpÇëÇóµÄ»º´æ»òÕß²»»º´æ¡£
       ÕâÀïÎÒÃÇÁоٵÄÀý×ÓÊÇ»º´æÒ»¸öͼƬ£¬±ÈÈçÍøÕ¾µÄlogo¡£ÎÒÃÇ¿ÉÒÔÖ¸¶¨¿Í»§¶Ëä¯ÀÀÆ÷»º´æ¶ÔÕâ¸ölogo»º´æ£¬»ò²»»º´æ£¬ÒÔ¼°¶à³¤Ê±¼äµÄ»º´æ¡£
      ÆäʵÔÚasp.netÖÐÒ²ÌṩÁËÀàËÆµÄ¹¦ÄÜ£¬¶øÇÒ¸üΪ¼òµ¥£¬ÓÐÐËȤµÄ¶ÁÕß¿ÉÒԲο´asp.netµÄÏà¹ØÎÄÕ¡£
 ÏÂÃæÎÒÃÇʹÓÃservletµÄfilter»úÖÆÀ´ÊµÏÖÉÏÃæµÄ¹¦ÄÜ¡£
 Õâ¸öfilterµÄ´úÂëÈçÏ£º 
 import java.io.*;
 import javax.servlet.*;
 import javax.servlet.http.*;
 import java.util.*;
 public class ResponseHeaderFilter implements Filter {
   FilterConfig fc;
   public void doFilter(ServletRequest req, ServletResponse res,
                       FilterChain chain) throws IOException,
                  ServletException {
     HttpServletResponse response = (HttpServletResponse) res;
      for (Enumeration e=fc.getInitParameterNames(); e.hasMoreElements();) {
         String headerName = (String)e.nextElement();
         response.addHeader(headerName, fc.getInitParameter(headerName));
     }
     chain.doFilter(req, response);
   }
   public void init(FilterConfig filterConfig) {
     this.fc = filterConfig;
   }
   public void destroy() {
     this.fc = null;
   }
 }
 ÔÚWEB-INF/web.xml ÖÐÌí¼ÓÈçÏÂÅäÖÃ
 <filter>
   <filter-name>ResponseHeaderFilter</filter-name>
   <filter-class>com.jspbook.ResponseHeaderFilter</filter-class>
   <init-param>
     <param-name>Cache-Control</param-name>
     <param-value>max-age=3600</param-value>
   </init-param>
 </filter>
 <filter-mapping>
   <filter-name>ResponseHeaderFilter</filter-name>
   <url-pattern>/logo.png</url-pattern>
 </filter-mapping>

 ×¢ÒâÉÏÃæµÄºÚÌ岿·Ö¡£
 ÎÒÃǰÑÉÏÃæµÄ´úÂë·ÅÔÚTomcat(5.0.16)ÖнøÐвâÊÔ¡£
 ×¢Ò⣺ΪÁ˼ǼTomcatÏàÓ¦µÄä¯ÀÀÆ÷ÇëÇóµÄÈÕÖ¾£¬ÐèÒª°Ñ£º
 /conf/server.xml ÎļþÖеÄ
 <Valve className="org.apache.catalina.valves.RequestDumperValve"/>
 ×¢ÊÍÈ¥µô£¬·ÃÎʵÄÈÕÖ¾±»¼Ç¼ÔÚcatalina_log.[µ±ÌìÈÕÆÚ].txtÖС£
 ÎªÁ˲âÊÔÎÒÃǵĴúÂ룬½¨Á¢Ò»¸ö¼òµ¥µÄhtmlÎļþ£º
 <html>
  <head>
   <title>A Simple Page</title>
  </head>
  <body>
   <p>Some text, with a logo</p>
   <img src="logo.png">
  </body>
 </html>
 ²¢°Ñlogo.png·Åµ½ÏàÓ¦µÄĿ¼ÏÂÃæ£º
 2004-01-15 18:48:20 RequestDumperValve[Catalina]: REQUEST URI       =/test.html
 ...£¨µÚÒ»´Î·ÃÎʵÄÇé¾°£©
 ===============================================================
 2004-01-15 18:48:21 RequestDumperValve[Catalina]: REQUEST URI       =/logo.png
 ...
 2004-01-15 18:48:21 RequestDumperValve[Catalina]: header=Cache-Control=max-age=3600
 ----------
 ...£¨·ÇµÚÒ»´Î·ÃÎʵÄÇé¾°£©
 ===============================================================
 2004-01-15 18:48:20 RequestDumperValve[Catalina]: REQUEST URI       =/test.html
 ----------
 
 ¿É¼û£¬logo.pngÔÚ»º´æÆÚ¼ä²¢Ã»Óб»·þÎñÆ÷Êä³ö¡£
 ¸ù¾ÝHttp1.1µÄ¹æ·¶£¬ÓÐÁ½ÖÖ·½Ê½À´ÈÃä¯ÀÀÆ÷»º´æÊý¾Ý£º
 1¡¢if-modified-since HTTP request header
 2¡¢cache-control

 µ±È»Èç¹û²»»º´æÊý¾Ý¿ÉÒÔÓÃÈçϵÄÅäÖãº
 <filter>
   <filter-name>ResponseHeaderFilter</filter-name>
   <filter-class>com.jspbook.ResponseHeaderFilter</filter-class>
   <init-param>
     <param-name>Cache-Control</param-name>
     <param-value>private,no-cache,no-store</param-value>

    </init-param>
 </filter>


 »¶Ó­½»Á÷
 Ìï´º·å

accesine@163.com

×÷ÕßרÀ¸

http://www.csdn.net/develop/author/netauthor/accesine960/


 




Ïà¹ØÎÄÕ£º

Ïà¹ØÈí¼þ£º