私のアプリケーションのユーザーが新しいページを作成すると、他の詳細の中で「ページ タイトル」を入力するように求められます。(たとえば、彼女は「Page Title by Megan」と入力しました) アプリケーションはインスタンスを db に保存します。
今私の要件は、誰かがそのページにアクセスしようとすると、URL が次のようになることです。
www.websitename.com/pages/page-title-by-megan
Spring MVC を使用すると、次のようなものを使用して「page-title-by-megan」の部分を簡単に取得できることを理解しています。
@RequestMapping("/pages/{pageTitle}")
public String getPage(@PathVariable String pageTitle, Model model) {
List<Pages> pages = pageService.getPages(pageTitle);
model.addAttribute("pages", pages);
return "pages";
}
しかし、問題は
Q1:関連するページを取得するには、DB に実際のデータと共に pageTitle "page-title-by-megan" を格納する必要がありますか? これを行うための唯一のトリックですか?それとももっと良い方法がありますか?
Q2:それが唯一の方法である場合、"Page Title by Megan" から "page-title-by-megan" のような文字列を効果的に形成するにはどうすればよいですか? 繰り返しますが、より良いアプローチはありますか?
よろしくお願いします。とても感謝しています。