読者です 読者をやめる 読者になる 読者になる

たま

技術的なメモ置き場。主にJava。

Spring BootでセッションIDを取得する

意外とセッションIDの取得方法が見当たらなかったのでメモ。
Controllerメソッドの引数に、HttpSessionかHttpServletRequestを使用することでセッションIDを取得することができる。

public class HogeController {

    // HttpSessionを使用する場合
    @GetMapping
    String index(HttpSession session) {
        String sessionId = session.getId();
        return "index";
    }

    // HttpServletRequestを使用する場合
    @GetMapping
    String index(HttpServletRequest request) {
        String sessionId;
        sessionId = request.getSession().getId();
        // もしくは↓
        sessionId = WebUtils.getSessionId(request);
        return "index";
    }
}