我想在Java Web应用程序中使用这种模式:

<url-pattern>/*/test.html</url-pattern>


然后解析servlet中的URL以获取星形的值,然后使用该值查询数据库中的另一个表。

但是,这对于Tomcat似乎是非法的模式。
有什么方法可以实现这一目标而不必对斜线之间的位进行硬编码?

(该示例在您想知道上下文是什么的情况下使用:/vancouver-hotel/rooms.html/seattle-hotel/rooms.html

最佳答案

最好的方法是将URL结构重新排列为/hotels/<cityname>,并让HotelServlet监听/hotels/*,并使用<cityname>request.getPathInfo()用作路径信息。您可以使用通常的java.lang.String方法进一步解析pathinfo。例如split("/"),然后将零件存储为请求属性或可以由业务/域对象访问的其他内容。

10-07 19:33
查看更多