쓰기 국제 문서
7 월
7 월
국제 비 연결 구성 페이지는 필요합니다
spring.messages.basename = i18n.login
1 : 긴 다이 오늘 FOUND의 구성 방법 1.5 배 버전
링크 구성
클래스가 구현을 작성 LocaleResover
공공 클래스 LocaleSetting의 구현 LocaleResolver의 { @보수 공공 로케일 resolveLocale (HttpServletRequest의 요청) { / ** 연결 문자열을 획득하기 위해 L * = ( 'ko 페이지) * / 문자열 LSTR = request.getParameter ( "L" ); 로컬 지역 = 경우, Locale.getDefault (); 만약 (! StringUtils.isEmpty (LSTR)) { 문자열 [] 스플릿 = lstr.split ( "_" ); 로케일 = 새로운 로케일 (분할 [0], 분할 [1 ]); } 반환 로케일을; } @보수 공용 무효 로 setLocale (HttpServletRequest의 요청에 응답하고 HttpServletResponse 로케일 로케일) {} }
봄 부팅 승계 WebMvcConfigurationSupport의 존재를 필요하므로이 클래스에서 구성됩니다
여기에 다음과 같은 구성에서 # 공공 클래스 appconfig가이 확장 WebMvcConfigurationSupport / ** * 구성 국제화 * / @콩 공공 LocaleResolver의 initLocale () { 반환 새 ) (LocaleSetting을; }
2 : 구성의 2.X 버전
/ ** * 인터셉터지도 * / @보수 보호 무효 addInterceptors (InterceptorRegistry 레지스트리) { registry.addInterceptor (localeChangeInterceptor ()); 슈퍼 .addInterceptors (레지스트리); } / ** * 구성 국제화 * / @콩 공공 LocaleResolver의 LocaleResolver의 () { SLR SessionLocaleResolver는 = 새로운 새로운 SessionLocaleResolver을 (); // 기본 언어 사용 , slr.setDefaultLocale (Locale.SIMPLIFIED_CHINESE) 반환 SLR을; } @콩 공공 LocaleChangeInterceptor localeChangeInterceptor () { 협회는 LocaleChangeInterceptor는 = 새로운 새로운 하며 LocaleChangeInterceptor을 () // 매개 변수 이름은 언어의 종류를 구분하는 데 사용 / ** * <a class="btn btn-sm" th:href="@{index.html(l='en-US')}"> 中文 </a>를 * <a class="btn btn-sm" th:href="@{index.html(l='zh-CN')}"> 영어 </a>를 * / lci.setParamName ( "L" ); 돌아 협회를; }