springboot 사용자 정의 LocaleResolver 전환 언어 구현
저 희 는 사용자 정의
springboot
중의LocaleResolver
를 통 해 간단 한 국제 화 처 리 를 할 수 있 습 니 다.다음은 간단 한 Demo 를 통 해 국제 화 를 간단하게 이해 할 수 있 습 니 다.아래 데모 에서 저 는 thymeleaf 템 플 릿 엔진 라벨 형식 으로 국제 화 를 평가 합 니 다.
1.pom 에 thymeleaf 템 플 릿 엔진 도입
// thymeleaf
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
저 는 로그 인 화면 을 예 로 들 면...2.resources 아래 i18n 폴 더 를 만 든 다음 login.properties 를 만 듭 니 다.
login.propertie:
login.button=
login.password=
login.remember=
login.tip=
login.username=
login_en_US.properties: ( )
login.button=Sign In
login.password=PassWord
login.remember=Remember Me
login.tip=Please sign in
login.username=UserName
login_zh_CN.properties:
login.button=
login.password=
login.remember=
login.tip=
login.username=
3.로그 인 페이지 에서 thymeleaf 라벨 을 통 해 국제 화 도입메모:input 탭 은[[]]로 값 을 추출 해 야 합 니 다.
4.프로젝트 를 실행 하고 브 라 우 저 언어 를 영어(미국)또는 중국어 로 설정 하면 우리 페이지 는 언어 를 전환 합 니 다.
그러나 브 라 우 저 언어 를 수 동 으로 설정 해 야 중 영문 전환 이 가능 합 니 다.최종 효 과 는 페이지 의 중국어 와 영 어 를 클릭 하여 언어 를 전환 하 는 것 입 니 다.다음은 이 기능 을 실현 하 는 것 입 니 다.
1.SpringBoot 는 우리 에 게
LocaleResolver
구성 요 소 를 자동 으로 설정 해 주 었 습 니 다.국제 화 를 실현 하려 면 사용자 정의LocaleResolver
가 필요 합 니 다.코드 는 다음 과 같 습 니 다.
**
* Describe:
* Copyright: ITfxsen
* Date: 2019/10/17
* Time: 16:18
* @author fu.qiang
* @version 1.0
*/
@Configuration
public class MyLocaleResolver implements LocaleResolver {
@Override
public Locale resolveLocale(HttpServletRequest httpServletRequest) {
String l = httpServletRequest.getParameter("l");
if (StringUtils.isEmpty(l)){
Locale locale = Locale.getDefault();
return locale;
}else {
String[] split = l.split("_");
return new Locale(split[0],split[1]);
}
}
2.사용자 정의 Locale Resolver 를 spring 용기 에 주입 합 니 다.
/**
* Describe: LocaleResolver
* @param
* @return
* @Time: 2019/10/18 9:38
* @autho: fu.qiang
* @version 1.0
*/
@Bean
public LocaleResolver localeResolver(){
return new MyLocaleResolver();
}
3.페이지 에 Thymeleaf 템 플 릿 엔진 을 사용 하여 영어 로 전환 한 a 태그 의 href 속성 을 덮어 씁 니 다.
<a class="btn btn-sm" th:href="@{/login(l='zh_CN')}" rel="external nofollow" > </a>
<a class="btn btn-sm"th:href="@{/login(l='en_US')}" rel="external nofollow" >
English</a>
4.최종 효 과 를 살 펴 보 겠 습 니 다(왼쪽 상단 주소 의 변화 에 주의 하 세 요).총결산
위 에서 말 한 것 은 소 편 이 소개 한 springboot 사용자 정의 Locale Resolver 가 언어 전환 을 실현 하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
만약 당신 이 본문 이 당신 에 게 도움 이 된다 고 생각한다 면,전 재 를 환영 합 니 다.번 거 로 우 시 겠 지만 출처 를 밝 혀 주 십시오.감사합니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin Springboot -- 파트 14 사용 사례 REST로 전환하여 POST로 JSON으로 전환前回 前回 前回 記事 の は は で で で で で で を 使っ 使っ 使っ て て て て て リクエスト を を 受け取り 、 reqeustbody で 、 その リクエスト の ボディ ボディ を を 受け取り 、 関数 内部 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.