gpt4 book ai didi

java - Jetty 中的 ServletHandler 和 ServletContextHandler 有什么区别?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:15:15 38 4
gpt4 key购买 nike

我正在尝试开始使用嵌入式 Jetty 服务器。我只是想根据请求路径将请求映射到不同的 servlet。

创建 ServletHandler 并向其添加 servlet 与创建 ServletContextHandler 并向其添加 servlet 有什么区别?

例如:

//how is this different...
ServletHandler handler = new ServletHandler();
handler.addServletWithMapping(MyServlet.class, "/path");

//from this?
ServletContextHandler contextHandler = new ServletContextHandler();
contextHandler.addServlet(MyServlet.class, "/path");

最佳答案

大多数 Servlet 需要 javax.servlet.ServletContext对象正常运行。

使用 ServletContextHandler 将为 ServletContextHandler 中的所有 Servlet、过滤器、 session 、安全性等创建和管理公共(public) ServletContext。这包括适当的初始化、加载顺序以及受 ServletContext 影响的组件的销毁。

另请注意,ServletHandler 被视为 ServletContextHandler 的内部类,并不意味着像 Jetty 那样“原始”使用。虽然这在技术上是可行的,但除了 Servlet 的最幼稚和最简单的实现之外,不鼓励使用它。

关于java - Jetty 中的 ServletHandler 和 ServletContextHandler 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30733910/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com