日期:2014-05-18  浏览次数:20671 次

请教几个JSP问题,等着救命,谢谢
1:在访问几次连接池后,出现资源不足,应该怎么解决?调用哪个方法来释放资源呢?

2:在MVC的模式中,是通过Controller来访问Viewer的,那么,出了使用Filter之外,怎么禁止别人直接访问Viewer呢?

3:我在使用Filter时,只要一配置web.xml,就出现无法访问所有页面的情况,是什么原因呢?源码:
在web.xml的web-app里加入了:
  <filter>  
    <filter-name> servfilter </filter-name>  
    <filter-class> test.servfilter </filter-class>  
  </filter>  
  <filter-mapping>  
    <filter-name> servfilter </filter-name>  
    <url-pattern> /* </url-pattern>    
  </filter-mapping>
Filter:
import   javax.servlet.*;  
import   javax.servlet.http.*;  
import   java.io.*;  
import   java.util.*;  
public   class   BaseFilter   extends   HttpServlet   implements   Filter   {  
  private   FilterConfig   filterConfig;  
  public   void   init(FilterConfig   filterConfig)   {  
    this.filterConfig   =   filterConfig;  
  }  
  public   void   doFilter(ServletRequest   request,   ServletResponse   response,   FilterChain   filterChain)   {  
    try   {  
          request.setCharacterEncoding( "GB2312 ");
          filterChain.doFilter(request,response);
    }   catch(ServletException   sx)   {  
      filterConfig.getServletContext().log(sx.getMessage());  
    }  
    catch(IOException   iox)   {  
      filterConfig.getServletContext().log(iox.getMessage());  
    }  
  }  
  public   void   destroy()   {  
  }  
}  

求哪位高手帮帮忙,真的是等救命的,我只有70分了,全部送上,不够的话我再想办法散分,谢谢

------解决方案--------------------
1.数据库使用连接池,每次使用完连接及时colse.
2.Controller是用来控制Viewer之间怎么跳转的.Filter其实就可以满足要求了,当然你也可以在Controller里面来控制.
3.看你的配置是对的.你debug一下看看具体原因.
------解决方案--------------------
<url-pattern> /* </url-pattern>
设置了 在/下面所有页面都将被过滤!