本帖最后由 zhainanchunchun 于 2014-06-02 15:49:53 编辑

解决方案 »

  1.   

    还没学struts2
    不过我猜测一下楼主说的这个FilterDispatcher 应该就是实现了Filer接口的过滤器,它可以对用户的某些请求进行拦截,从而处理一些公用的业务操作,使用前需要在web.xml里配置
    谈谈我的看法(纯属端午节无聊)首先客户端浏览器发出http请求,然后服务器创建request和response对象,然后满足被拦截的条件,服务器就会调用指定的过滤器的
    public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain)
    然后在此方法里进行一些业务操作,然后再放行,
    chain.doFilter(request, response);
    如果后面没有其他的拦截,那么最终服务器才会去调用servlet
    然后再回到最开始拦截的那个过滤器里,
    最后服务器把响应对象发给服务器浏览器.
      

  2.   

     谢谢你的分析  但是我一直没搞懂   调用servlet  这个servlet 是哪个servlet ?servlet中 service方法是处理业务逻辑的,但是但是在ssh2框架中确是action调用业务逻辑 处理的呢?
      

  3.   

    servlet 指的是控制器的servlet,进行请求的跳转,分发的。
    直接使用ssh时,请求的控制分发让struts的过滤器做了,所以看不到servlet了。
      

  4.   


    ------------------------------------------------------------------------------------------------------------------------
    意思是 tomcat把请求传给struts2的过滤器了?
    那在action中通过servletactioncontext 得到servlet是是什么呢?
      

  5.   

    http://localhost:8080/项目名/ 
    这个一般都是跳转到首页index.jsp上的,jsp经过web容器一般也会解析为servlet,
    jsp页面dom元素解析为jsp内置对象out来显示 
    out.write来显示到页面
      

  6.   

    struts1 是个重量级框架,着重依赖servlet,struts1中的控制跳转全都是servlet去处理的。
    struts2 是个轻量级框架,是个脱离了servlet也可以完全自己运行的框架,在struts2 中依靠过滤器去处理请求跳转等。
    所以 楼主的ssh 项目,就不用太过在里面纠结servlet了。
      

  7.   


    http://www.reader8.cn/jiaocheng/20120728/2055368.html  看完这篇文章 豁然开朗...
      

  8.   


    http://www.reader8.cn/jiaocheng/20120728/2055368.html  看完这篇文章 豁然开朗...
    公司只能上csdn,不能上其他网站,回去再看。