使用Wicket的java URL分解
如何在Wicket中分解URL?我有以下网址:
http://www.example.com[:8080]/context/wicket/[bookmarkable/]WICKET-RELATED-URL
|---------------------------|-------|----------------------------------------|
A B C
我找到了获取完整URL的方法(a、B、C):
RequestCycle.get().getUrlRenderer().renderFullUrl(
RequestCycle.get().getRequest().getUrl())
以及一种获取上下文的方法(B):
RequestCycle.get().getRequest().getContextPath()
有没有类似的方法来获取URL的(a)部分?还是我必须使用子字符串
# 1 楼答案
不要使用正则表达式!;)
有一个
java.net.URL
对象,它解析url并允许单独访问它的任何部分。此外,您还可以将这些部分组合成一个新的url,并将其重新组合成url的字符串形式这取决于你在wicket中到底想要什么,也许有一种现成的方法可以用wicket来实现。你没有告诉我你的问题,只是告诉我一个可能的解决方案
# 2 楼答案
# 3 楼答案
你可以使用wickets
RequestUtil.toAbsolutePath(String relativePagePath)
根据JavaDoc,它“计算相对于另一个绝对url的url的绝对路径”
我一直在将其与“urlFor()”一起使用,以生成要放入邮件的链接,但只要您可以定义到目标的相对路径,这应该是您的解决方案
# 4 楼答案
Regular expressions可以满足您的要求