본문 바로가기
728x90
반응형

스프링 메시지5

[Spring] 웹 애플리케이션에 스프링 메시지 적용하기 실제 웹 애플리케이션에 메시지를 적용해보자. 먼저 메시지를 추가 등록하자. messages.properties label.item=상품 label.item.id=상품 ID label.item.itemName=상품명 label.item.price=가격 label.item.quantity=수량 page.items=상품 목록 page.item=상품 상세 page.addItem=상품 등록 page.updateItem=상품 수정 button.save=저장 button.cancel=취소 타임리프 메시지 적용 타임리프의 메시지 표현식 #{...} 를 사용하면 스프링의 메시지를 편리하게 조회할 수 있다. 예를 들어서 방금 등록한 상품이라는 이름을 조회하려면 #{label.item} 이라고 하면 된다. 렌더링 전 렌더링.. 2023. 6. 28.
[Spring] 스프링 메시지 소스 사용 및 .properties 파일 인코딩 설정 MessageSource 인터페이스 public interface MessageSource { String getMessage(String code, @Nullable Object[] args, @Nullable String defaultMessage, Locale locale); String getMessage(String code, @Nullable Object[] args, Locale locale) throws NoSuchMessageException; } MessageSource 인터페이스를 보면 코드를 포함한 일부 파라미터로 메시지를 읽어오는 기능을 제공한다. 스프링이 제공하는 메시지 소스를 어떻게 사용하는지 테스트 코드를 통해서 학습해보자 test/java/hello/itemservice/m.. 2023. 6. 28.
[Spring] 스프링 메시지 소스 설정 스프링은 기본적인 메시지 관리 기능을 제공한다. 메시지 관리 기능을 사용하려면 스프링이 제공하는 MessageSource 를 스프링 빈으로 등록하면 되는데, MessageSource 는 인터페이스이다. 따라서 구현체인 ResourceBundleMessageSource 를 스프링 빈으로 등록하면 된다. 직접 등록 - ItemServiceApplication @Bean public MessageSource messageSource() { ResourceBundleMessageSource messageSource = newResourceBundleMessageSource(); messageSource.setBasenames("messages", "errors"); messageSource.setDefaultE.. 2023. 6. 27.
[Spring] 스프링 메시지, 국제화 개념 메시지 만약 시스템을 재기획 할 때, 하나의 문구를 바꿔야 하는 상황이라면?? 상품명이라는 단어를 모두 상품이름으로 고쳐달라고 하면 어떻게 해야할까? 여러 화면에 보이는 상품명, 가격, 수량 등, label 에 있는 단어를 변경하려면 다음 화면들을 다 찾아가면서 모두 변경해야 한다. 지금처럼 화면 수가 적으면 문제가 되지 않지만 화면이 수십개 이상이라면 수십개의 파일을 모두 고쳐야 한다 - addForm.html , editForm.html , item.html , items.html 왜냐하면 해당 HTML 파일에 메시지가 하드코딩 되어 있기 때문이다. 이런 다양한 메시지를 한 곳에서 관리하도록 하는 기능을 메시지 기능이라 한다. 예를 들어서 messages.properties 라는 메시지 관리용 파일을.. 2023. 6. 27.
[Spring] 스프링 메시지, 국제화를 위한 프로젝트 설정 https://drcode-devblog.tistory.com/524 [Spring] 스프링 타임리프 통합을 위한 프로젝트 설정 https://drcode-devblog.tistory.com/504 drcode-devblog.tistory.com 위 포스팅과 비슷하게 패키지와 url 이름만 바꿔서 사용할 것이다. item-service\src\main\resources\templates\basic → message\src\main\resources\templates\form 프로젝트명 변경 item-service → message templates 하위 폴더 basic → message 컨트롤러 상위 패키지 명 변경 basic → message message\src\main\java\hello\items.. 2023. 6. 27.
728x90
반응형