이제 메시지와 @Beans 애너테이션을 구현했으므로 메시지 리소스를 호출하도록 컨트롤러나 서비스에서 코드를 업데이트할 수 있다. 코드 3-9에서 이 작업을 살펴보자.
코드 3-9 MessageSource 메시지를 검색하는 서비스(LicenseService.java) 코드 변경하기
@Autowired
MessageSource messages;
public String createLicense(License license,
String organizationId,
Locale locale) { ➊
String responseMessage = null;
if (!StringUtils.isEmpty(license)) {
license.setOrganizationId(organizationId);
responseMessage = String.format(messages.getMessage(
"license.create.message", null, locale),
license.toString()); ➋
}
return responseMessage;
}
public String updateLicense(License license, String organizationId) {
String responseMessage = null;
if (!StringUtils.isEmpty(license)) {
license.setOrganizationId(organizationId);
responseMessage = String.format(messages.getMessage(
"license.update.message", null, null),
license.toString()); ➌
}
return responseMessage;
}
➊ 메서드 매개변수로 로케일을 전달받는다.
➋ 특정 메시지를 조회하기 위해 전달된 로케일로 설정한다.
➌ 특정 메시지를 조회하기 위해 NULL 로케일을 전달한다.