我想为我的 Java 网络项目制作漂亮的 URL。
例如,我有这样的 URL:
- www.mysite.com/web/controller?command=showNews&newsId=1
- www.mysite.com/web/controller?command=showNews&newsId=2
- www.mysite.com/web/controller?command=showNews&newsId=3
或
- www.mysite.com/web/user.do?action=start
- www.mysite.com/web/user.do?action=showCategory&category=videoGames§ion=AboutGames
但它不是那么漂亮和用户友好...
我想做这样的链接:
- www.mysite.com/web/2011/10/04/Steve-Jobs-iPhone-5/
- www.mysite.com/web/2011/10/23/Facebook-Timeline/
- www.mysite.com/web/2012/05/25/Vladimir-Putin-Russian-President/
你能帮我解决这个问题吗?我怎样才能得到它?
如果有帮助,可以使用任何 Java 框架或库。
谢谢!
更新:我找到了解决方案 - Spring MVC以 Controller
的 @RequestMapping("/Putin")
注释为例。
最佳答案
Context Framework让你做到这一点。例如,您提供的示例可以在 View 中像这样映射:
@View(url="regex:/web/<year:\\d{4}>/<month:\\d{2}>/<day:\\d{2}>/<specifier>")
@PageScoped
public class ArticleView extends Component implements ViewComponent {
@PathParam
private long year;
@PathParam
private long month;
@PathParam
private long day;
@PathParam
private String specifier;
@Override
public void initialize(ViewContext context) {
System.out.println(year+"/"+month+"/"+day+"/"+specifier);
// Then do something
}
}
关于java - 如何在 Java 上为网站创建漂亮的 URL(永久链接)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7618978/