[Spring] URI Template


今日は、URIで固定値と可変値をテンプレートとして指定し、それらを使用する方法について説明します。



1.URI Templateとは?


URIテンプレートを識別することは、URIを決定する前に置換しなければならないパラメータを含むURIを指定する方法である.
ネットサーフィンをしていると、
私のidのように他の人と繰り返すのではなく、urlに自分の値が含まれている場合があります.
たぶんそうでしょう.

これらの値は可変要素であり、場合によっては異なる値を持つことができます.
では、urlに可変要素を含めるにはどうすればいいのでしょうか.
Web開発の実践でページ間移動を開発した経験を思い出す.
あるページから別のページに移動すると、開発者は移動URLを指定したようです.<a href="main/login">LOG IN</a><a href="main/logout">LOG OUT</a>です

もしそうなら、


開発者は、各メンバーid値を含むURLを1つずつ接続していますか?



もちろんそうはいかない!
固定部分と可変部分を別々に作成するURIテンプレートがあるため、これは可能である.

2.URI Templateの使用


まずuriはウェブページの固有の区切り記号です.
可変要素を追加して、これらのユニークなリソースをclientのより細かいuriのみに構成します.
例としてurlが3つあるとします.
https://geesueshop.com/main/geesuee
https://geesueshop.com/main/jisubae
https://geesueshop.com/main/geesueebae
最後のユーザid部分を除いて、3つのurlはいずれも固定値(https://geesueshop.com/main/)を有する.
最後のユーザidセクションは、接続アカウントに依存します.
新しいアカウントを追加すると、新しいid値を含むurlが必要になります.

URI Templateを使用します。


📍 URI Template形式
http://ip:port/project/固定表示法/{可変表示法}
http://ip:port/project/固定表示法/{可変表示法}/固定表示法/{可変表示法}/... .

URIテンプレートは、URIの長さ、固定表現、可変表現の順序に関係なく使用できます。


  • 上記の形式でURI Templateを作成します.
    テンプレートがコントローラ内部の方法の上部@RequestMapping()のパラメータとして使用される場合.
    変数式の位置の値に関係なく、URI Templateをチェックしてマッピングされたコントローラロジックを実行できます.
  • @PathVariableのプレゼンテーションを使用して、
    可変表現の位置に入る値を変数として、メソッドで使用することもできます.
    =アドレス値の一部をデータ化
  • @RequestMapping("main/{userId}")
    public String exampleMethod(@PathVariable String userId) {
    	System.out.println("exampleMethod() 실행 " + userId); //console에 가변적인 userId를 찍어 확인할 수 있음
    	
     	return "nextPage.jsp";
    }