在JSP中重写URL并从URL获取值
如何重写我的JSP URL,例如:在JSP中重写URL并从URL获取值,jsp,url,servlets,Jsp,Url,Servlets,如何重写我的JSP URL,例如: myhost/UserMVC/index.jsp?id=5&&name=tome 到 myhost/UserMVC/index/5/tome 然后在web.xml中获取5和tome?,您可以选择监听哪个URL模式。当您在WEB-INF/WEB.xml中定义映射时,您可以这样做: <servlet> <servlet-name>TestServlet</servlet-name> <servlet-cla
myhost/UserMVC/index.jsp?id=5&&name=tome
到
myhost/UserMVC/index/5/tome
然后在web.xml中获取
5
和tome
?,您可以选择监听哪个URL模式。当您在WEB-INF/WEB.xml
中定义映射时,您可以这样做:
<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>com.stackoverflow.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TestServlet</servlet-name>
<url-pattern>/test</url-pattern>
</servlet-mapping>
现在,您可以按自己喜欢的方式处理路径。正如@Tiny所建议的,您最好使用REST框架,比如。使用这个URLRewiteFilter,编写这样的规则
<urlrewrite>
<rule>
<from>^/UserMVC/index/(.*)/(.*)$</from>
<to>/UserMVC/index.jsp?id=$1&&name=$2</to>
</rule>
</urlrewrite>
^/UserMVC/index/(.*)/(.*)$
/UserMVC/index.jsp?id=$1&&name=$2
在某些情况下,您需要使用出站规则标记。UrlRewriteFilter有很好的文档。生成的URL是一个类似REST的URL。你应该像对待事情一样对待休息。
<urlrewrite>
<rule>
<from>^/UserMVC/index/(.*)/(.*)$</from>
<to>/UserMVC/index.jsp?id=$1&&name=$2</to>
</rule>
</urlrewrite>