java - 从 servlet-name 获取 url-pattern

标签 java servlets jakarta-ee web.xml url-pattern

我的 Java EE Web 应用程序的 web.xml 文件中有此配置:

<servlet-mapping>
   <servlet-name>ChangeLanguageServlet</servlet-name>
   <url-pattern>/change</url-pattern>
</servlet-mapping>

我想要做的是使用 servlet-name 获取“url-pattern”的字符串,如下所示(伪代码):

// This would return "/change"
String pattern = getPatternByServletName("ChangeLanguageServlet"); 

我不知道该怎么做。

有什么帮助吗?

谢谢!

最佳答案

来自ServletContext您可以获得一个以 servlet 名称为键的 Map,其中包含在应用程序中注册的所有 servlet:

Map<String, ? extends ServletRegistration> registrations = 
        servletContext.getServletRegistrations();

然后使用ServletRegistration用于提取您需要的元数据的 API,包括:

关于java - 从 servlet-name 获取 url-pattern,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45999989/

相关文章:

java - 当我在 eclipse 中启动 tomcat 时显示错误 java.lang.reflect.InvocationTargetException

java - 用另一个索引映射存储一个映射 Java

java - Android 贪吃蛇游戏(如何添加音频)?

java - Maven多模块项目添加Axis2导致的依赖冲突如何解决

eclipse - 由于 servlet,Tomcat 服务器无法在 eclipse 中启动

java - 错误: option -Xbootclasspath/p: not allowed with target 13 with netbean 11. 3、jdk 13.0.1

java - 无法在 Tomcat 8 中使用 @Resource DI 连接到数据源

java - affable bean 购物车中同步方法的使用

java - 加载并连接到 mysql jdbc 驱动程序运行时

java - 如何在正则表达式中定义开关案例?