• -W.LI-
    2019-07-09
    属性值变化listener能动态配置,所以用CopyOnWriteArray。生命周期事件listener,不能动态改变没有线程安全问题?

    作者回复: 说的对

    
     11
  • calljson
    2019-07-16
    请教下老师,serverlet的service方法作用是什么?仅仅是分发请求吗?

    作者回复: service方法是留给程序员实现的,实现业务逻辑,比如数据库的增删查改

    
     4
  • gogo
    2019-08-21
    啊啊啊 老师再写一个深入拆解spring 或者springboot 的专栏吧 和tomcat形成兄弟专栏 定价比这个贵2~3倍 您负责写 我们和极客时间的平台负责大卖

    作者回复: 😄

    
     3
  • Monday
    2019-07-11
    思考题两种数据结构我能区分开来,但是还是回答不上来。。。
    
     2
  • nightmare
    2019-07-09
    生命周期相关的类比如session一个用户分配一个,用完了就会销毁,用对象数组,可以适应增删改操作,而属性变化,写不会那么频繁,读取比较频繁
    
     2
  • Nu11PointerEx
    2019-07-19
    老师我想问一下,对应的filter是怎么注册到servlet中去的

    作者回复: filter是注册到Servlet容器中,Tomcat的StandardContext类中维护了一个Filter列表,所谓的注册就是把你写的filter类实例加到这个列表中。

    
     1
  • 靠人品去赢
    2019-11-05
    想问一下Tomcat会给每一个请求都生成一个Filter链,比如说很多请求的Filter链都差不多,Tomcat会不会对这些一样的链有一个处理,还是一个请求一条链调用完Servlet就把这个链上的Filter都释放掉?
    
    
  • 石妖
    2019-10-02
    李老师好,有个问题不太明白:每个Filter的doFilter调用Filter链的doFilter方法,那么这个调用是如何保证调用按照Filter链的顺序调用的?
    
    
  • 听雨
    2019-08-13
    这里感觉Filter是递归调用呀,网上为什么说是基于函数回调呢
    
    
  • 飞翔
    2019-07-23
    private Map<String, FilterDef> filterDefs = new HashMap<>();
    老师 您说 filter放在map里边,由context管理,然后我看 您后边永硕 filter是wrapper管理的 这个不是矛盾嘛

    作者回复: Map里存的是filterDef,filter定义,不是filter类实例

    
    
  • 飞翔
    2019-07-23
    话说 host engine 和context 都有pipline实现的责任链,wrapper没有pipline 而是用filter 实现的责任链是吧

    作者回复: wrapper其实也有pipeline,可以这样理解,pipeline是Tomcat内部的责任链,gei内部组件用,而filter是种扩展机制,filter可以是用户定义的。

    
    
  • 草戊
    2019-07-17
    filter是有wrapper管理的?servlet吧,是不是手误回答错了?
    
    
  • z.l
    2019-07-12
    反向推导猜下,生命状态变化都在单线程中,没有并发问题。属性变化有线程安全问题,但又不频繁。
    
    
  • 飞翔
    2019-07-09
    老师我需要手动加一个filter,不能用annotation或是xml、我是不是需要调用standardcontext里边的addfilterdef和addfiltermap这两个函数就行了?

    作者回复: 对的

    
    
  • 非想
    2019-07-09
    老师您好,看你的文章servlet容器中的三个组件servlet,filter,linstener都是由context容器管理的对吗?

    作者回复: filter是wrapper组件管理的

     2
    
  • Liam
    2019-07-09
    我记得pip-val是用单向链表实现的,filters chain是用数组实现的;另外,pipe节点自己负责调用下一个节点,而filter则是委派chain来调度
    
    
我们在线,来聊聊吧