본문 바로가기

legacy/Spring

[Spring-Error] html 글자 깨짐, 메시지 국제화

 

연습 삼아 프로젝트를 만들어 보고 있는데 따로 메시지 파일(추후 국제화를 위한..)을 만들어서 html에 적용했는데 한글 적용이 안 됐다.

메시지 파일
메시지 파일을 적용한 html 한글 깨짐

오류 발생 코드

@SpringBootApplication
public class TestApplication {

	public static void main(String[] args) {
		SpringApplication.run(TestApplication.class, args);
	}

	@Bean
	public MessageSource messageSource() {
		ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
		messageSource.setBasenames("messages");
		return messageSource;
	}
}

 

오류 수정 코드

@SpringBootApplication
public class TestApplication {

	public static void main(String[] args) {
		SpringApplication.run(TestApplication.class, args);
	}

	@Bean
	public MessageSource messageSource() {
		ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
		messageSource.setBasenames("messages");
		messageSource.setDefaultEncoding("utf-8"); // 인코딩 정보 추가
		return messageSource;
	}
}

결론

인텔리 설정에서 인코딩을 손대고 있었는데 메시지 파일을 bean으로 등록할 때 utf-8을 안 해서 한글이 깨지던 것이었다.