기본 객체

알파로그·2023년 3월 24일
0

Spring MVC 활용 기술

목록 보기
6/42
  • Controller 에서 Model 에 넘겨주지 않아도
    자주 사용하는 객체는 Thymeleaf 에서 기본적으로 제공해주고있다.

✏️ thymeleaf 로 기본 객체 사용하기

📍 Controller

  • session 을 생성하고 별도로 Model 로 넘겨주지 않아도 Web 계층에선 Session 을 사용할 수 있다.
  • Configuration 계층이 아니더라도 Bean 을 등록시킬 수 있다.
   @GetMapping("/basic-objects")
    public String basicObjects(){
        // 세션 생성
        session.setAttribute("sessionData", "Hello Session");
        return "basic/basic-objects.html";
    }

    //-- Controller 에서 Spring Bean 으로 등록하는 방법 --//
    @Component("helloBean")
    static class HelloBean {
        public String hello(String data) {
            return "hello" + data;
        }
    }

📍 Web

⚠️ 요청 url

  • /basic/basic-objects?paramData=HelloParam
  • locale
    • 프로그램을 언어와 국가에 최적화하기 위해서 사용하는 지역 / 언어 정보
    • 시스템 관리자가 설정한 locale 정보에 따라서 프로그램은 입출력 인코딩을 적용한다.
  • Request Parameter
    • Controller 가 요청받은 Param 을 model 에 전달하지 않아도 web 에서 사용 가능하다.
  • session
    • Controller 에서 생성한 Session 도 사용가능하다.
  • spring bean
    • Spring Container 에 등록된 Bean 도 별도의 전달작업 없이 사용가능하다.
<h1>식 기본 객체 (Expression Basic Objects)</h1>
<ul>
    <li>
        locale = <span th:text="${#locale}"></span> //ko_KR
    </li>
</ul>
<h1>편의 객체</h1>
<ul>
    <li>Request Parameter = <span th:text="${param.paramData}"></span></li>
    <li>session = <span th:text="${session.sessionData}"></span></li>
    <li>spring bean = <span th:text="${@helloBean.hello('Spring!')}"></span></li>
</ul>
profile
잘못된 내용 PR 환영

0개의 댓글