当前位置: 首页 > 面试题库 >

每个请求都访问相同的servlet对象吗?

萧树
2023-03-14
问题内容

每个HTTP请求是否在不同的线程中访问相同的servlet对象?还是创建一个新的线程和新的Servlet实例?


问题答案:

如果您的servlet未实现,则容器将使用相同的servlet实例SingleThreadModel。否则,不能保证Servlet击中相同的物体。如果认为必要,容器可以自由创建更多的servlet实例。但是请求来自不同的线程,不一定是新创建的(如Sanjay所述)。

根据Servlet 3.0规范:

对于未在分布式环境中托管的servlet(默认设置),每个servlet声明中servlet容器必须仅使用一个实例。但是,对于实现SingleThreadModel接口的servlet,该servlet容器可以实例化多个实例以处理繁重的请求负载并序列化对特定实例的请求。

通常,Web容器通过在不同线程上并发执行service方法来处理对同一servlet的并发请求。



 类似资料:
  • 问题内容: 是否可以使用client_credentials或每个请求的密码授予类型来生成多个有效的访问令牌? 使用以上授权类型生成令牌仅在每个请求当前令牌过期时才提供一个新令牌。 我可以使用密码授予类型来生成刷新令牌,然后生成多个访问令牌,但是这样做会使以前的所有访问令牌无效。 知道如何更改以允许对/ oauth / token端点的每个请求生成访问令牌,并确保以前的所有令牌都不会无效吗? 以下

  • 问题内容: 是否可以在JAX-RS下以REST方法访问Request对象? 我刚刚发现 问题答案: 在JAX- RS上,必须使用@Context注释Request参数: 您也可以选择注入: UriInfo HttpHeaders 安全上下文 HttpServletRequest

  • 我不明白在spring mvc中使用dispatcher servlet只创建了一个bean对象,还是每个请求都创建了一个新对象? 控制器代码:- 在代码中,我在LoginBean对象中设置数据,并在方法abc中的modelandview对象中设置它。 然后,在jsp中,我没有为usename输入任何值,在这种情况下,当我提交表单并调用处理程序方法(initform)时,我试图打印相同的lb.ge

  • 问题内容: 好的,这是一个新手问题,但我在任何地方都找不到答案。在Symfony2中的控制器中,我想从我的一个表单中访问POST值。在控制器中,我有: 不幸的是没有返回任何东西。我究竟做错了什么?谢谢! 问题答案: 此解决方案从2.3开始弃用,并将在3.0中删除,请参阅文档 给你一个数组的形式参数 摘自symfony2书第162页(第12章:表格) […]有时,您可能只想使用没有类的表单,并取回已

  • 也许问题的标题写得不好,但我不明白我还能写些什么。 我想了解,为什么下面两个案例中的第一个能起作用,以及在总体实现相同的情况下,如何让第二个也能起作用。 从代码的角度来看,什么样的原则使第一个按原样工作,也就是说,扩大了可以使用的变量的范围,所以我可以了解更多。 我想访问onclick侦听器中的'obj'变量。 案例1 案例2 我的onclicklistener只接受带有onClick方法的接口,

  • 我在项目中使用drools 6.3.0。我有大约3000条规则,分为两类。比如,类别1有1500条规则,类别2有1500条规则。有2万份订单具有不同的数据。每个订单都有一组不同的属性。现在,为每个请求创建kiesession需要时间,而且速度非常慢。因此,计划使用相同的kiesession执行所有订单,订单将使用多线程处理。 以下是我目前的做法。 这就是我创建kiesession的方式,我想将此k