【第4回】画面遷移②
パスの管理をまとめる
前回は、一通りの画面遷移ができるよう Controllerとhtmlファイルを作成しました。
その時に気になるのがパスです。
パスは開発中に変更がある可能性が高いので
管理しやすいように一つのクラスにまとめておきましょう。
poi ├─ src/main/java │ └─ poi │ ├─ constant │ │ └─ UrlConstant.java (省略)
constant(定数)パッケージを作り、
その中に"UrlConstant.java"を作成しました。
主に「画面」「コントローラ」で分けて、
さらに一般用・会員用・エラー用に分けています。
一部抜粋です。
public final class UrlConstant { /** 画面. */ public static class Page { private static final String MEMBER = "member"; private static final String GENERAL = "general"; /** 会員. */ public static class Member { /** ログイン画面. */ public static final String LOGIN = MEMBER + "/login"; /** TOP画面(検索). */ public static final String TOP = MEMBER + "/top"; /** 一般. * ・・・ (省略) /** コントローラー. */ public static class Controller { public static final String MEMBER = "/member"; public static final String GENERAL = "/general"; /** 会員. */ public static class Member { /** ルート */ public static final String ROOT = MEMBER + "/"; /** ログイン画面. */ public static final String LOGIN = MEMBER + "/login"; /** 一般. */ ・・・ (省略)
このようにまとめておくと、
Controllerの記述が変わります。
【前回のRegisterController】
@Controller public class RegisterController { @RequestMapping(value = "/general/register", method=RequestMethod.POST) public String register() { return "general/register"; }
↓
【今回のRegisterController】
@Controller public class RegisterController { @RequestMapping(value = UrlConstant.Controller.General.REGISTER, method = RequestMethod.POST) public String register() { return UrlConstant.Page.General.REGISTER; }
定数の部分にカーソルを当てると、
該当のパスが表示されます。
修正したい時は、
「command + クリック」でUrlConstant.javaに飛んで
修正すればスムーズです。
コンテキストパスの設定
話が飛びますが、
コンテキストパスを、プロパティファイルに設定しておきます。
前回までは初期表示(index.htmlの表示)する"GeneralIndexController.java"のパスは
@RequestMapping("/poi")
となっていて、
アクセスする時は「localhost:8080/poi/」にアクセスしていました。
コンテキストパスも変更がある可能性があるので、
コードの外に出しておくとよいでしょう。
application.propertiesに、以下のように記述します。
server.port=8080 server.session.timeout=900 server.contextPath=/poi
ここにコンテキストパスを設定し、
先ほどの"GeneralIndexController.java"のパスは
@RequestMapping(value = UrlConstant.Controller.General.ROOT, method = RequestMethod.GET)
に変更します。
先ほどのUrlConstantで、一般のルートを/general/ に設定したので、
アクセスする時は「localhost:8080/poi/general/」にアクセスしましょう。
設定ファイルの書き方はこちらを参考に。
https://meihaogit.github.io/java/2016/09/01/Spring-boot.html
https://www.slideshare.net/makingx/grails-30-spring-boot
さて、次回は新規登録画面の作成です。
DBの設定の話になるかもしれません。
では今回はこの辺で。