반응형
다국어 처리에 대한 값을 지정할 수있다.
예를 들면, Session에 로케일 정보를 넣을수 있는데
이런식으로 사용할 수 있다.
스프링 5부터는 LocaleResolver이라는 인터페이스를 사용할 수 있다.
구현체로는 SessionLocaleResolver 가 있는데 이는 httpsession에 locale정보를 저장한다.
컨트롤러에서 직접 세션에 로케일 정보를 넣어줄 수도있지만
인터셉터로 이를 구현할 수 도있다.
단, 인터셉터로 이를 구현할때는, 파라미터로 언어값을 넘겨줘야한다.
이런식으로 인터셉터에 대한 빈 선언과, 인터셉터에 추가를 해준다.
메시지 파일은
이렇게 basenames라는 이름으로, message.messageSource로 하게되면, 기본 이름이 된다.
이는 다국어에 필요한 파일이 50개라면, xml에서 50개를 다 등록해줘야하는 삽질을 방지해준다.
앵간하면 요청할떄 http 헤더에 locale정보가 담겨서 요청이 가게 된다.
스프링은 LocaleResolver를 통해 해당 정보를 읽어서 메시지 파일을 매핑하여 보여주게 된다.
SessioLocaleResolver 를 제일 많이 사용 디폴트는 accept어쩌고 저쩌고, 기본이다. 구현 한게 없으면 자동으로 해당 리졸버가 사용된다.
url에 파라미터 값을 받아서 해주는 인터셉터도있던거 알쥬?
무튼 해당 두개를 정해진 빈이름으로 id를 잡고 사용하면 바로 사용된다.
반응형
'Develop > [Spring]' 카테고리의 다른 글
Spring Camp 1 (0) | 2022.06.14 |
---|---|
[Spring] initBinder (0) | 2022.05.11 |
[Spring] HandlerInterceptor (0) | 2022.05.10 |
[Springboot] logging 전략 관련 주저리... (0) | 2022.05.09 |
[Spring] HandlerInterceptor (0) | 2022.05.03 |