Как создать красивые URL-адреса (постоянные ссылки) для веб-сайта на Java? - PullRequest
5 голосов
/ 01 октября 2011

Я хотел бы создать красивые URL-адреса для своих веб-проектов на Java.

Например, у меня есть такие 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 / Владимир-Путин-Русский-Президент /

Можете ли вы помочь мне с этим?Как я могу получить это?

Можно использовать любые фреймворки или библиотеки Java, если это поможет.

Спасибо!

Обновление: Я нашелрешение - Spring MVC с аннотацией Controller s @RequestMapping("/Putin"), например.

1 Ответ

1 голос
/ 01 октября 2011

Context Framework позволяет вам сделать это.Например, приведенные вами примеры могут отображаться следующим образом:

@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
  }
}
...