spring - 在 Spring Boot 中将 servlet 添加到管理端口

标签 spring servlets spring-boot

我想知道如何在 Spring Boot 的管理端口中添加(第三方)servlet?我知道我可以使用例如轻松添加一个servlet这种方法:

@Bean
public ServletRegistrationBean myServlet() {
    return new ServletRegistrationBean(new MyServlet(), "/myservlet");
}

但是这个 servlet 将暴露给外部/应用程序端口(默认为 8080),这不是我想要的。

最佳答案

您的目标是 @Bean类型 MvcEndpoint (用于 HTTP 支持)或 Endpoint (仅适用于 JMX)。 Spring MVC 有一些 Servlet包装你可以适应的东西(例如 ServletWrappingController )。您可以查看 Jolokia servlet 如何公开以获取特定详细信息:https://github.com/spring-projects/spring-boot/blob/master/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/mvc/JolokiaMvcEndpoint.java .

关于spring - 在 Spring Boot 中将 servlet 添加到管理端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24738607/

相关文章:

java - doFilter 调用了两次,预期的行为?

java - 使用 HttpServletRequestWrapper 请求中的自定义 header 不会出现在客户端

java - debug 未保存在 debug.log 下

mysql - Spring Boot JPA 从缓存

java - Spring Boot 测试 - 没有合格的 Bean 异常

java - 使用带有 Spring 依赖项的 Maven 插件运行可运行 Jar 时出现问题

java - 什么是 Spring 的注解对应物 <context :property-override>?

java - 为 org.springframework.core.io.Resource 对象分配名称

java - Spring导入看不到资源

angularjs - 如何使用 spring boot 允许 access-control-allow-origin