Servlet的doFilter方法中的StringBuffer或StringBuilder?
这个问题在这里已经有了答案:
局部变量是线程安全的,在doFilter()
方法中声明的变量将是线程安全的。 为了您的目的使用StringBuilder
,因为您不应该不必要地招致在StringBuffer
使用的同步开销。
而且,Servlet请求和响应对象是为每个新请求和响应重新创建的,因此它们本质上是线程安全的。 doFilter()
方法将在每个请求的独立线程中执行。
推荐阅读:
由于它将是一个局部变量并且不被线程共享,所以可以使用StringBuilder。
StringBuilder是一个更好的选择,因为它的非同步性更快。 每个请求的ServletFilter doFilter运行在它自己的线程中,因此您不需要同步的数据结构。 如果它只是一个本地varibale,那么StringBuilder是您的选择。
链接地址: http://www.djcxy.com/p/72337.html上一篇: StringBuffer or StringBuilder in Servlet's doFilter method?