ResourceBundle 을 이용한 MessageSource 구현
ResourceBundle 을 이용한 MessageSource 구현
message.1={0}고객님 안녕하세요. 오늘 날짜는 {1} 입니다.
import java.util.ResourceBundle;
public class MessageSourceUtils {
private ResourceBundle bundle;
private static MessageSourceUtils instance = new MessageSourceUtils();
private MessageSourceUtils() {
bundle = ResourceBundle.getBundle("messages");
}
public static MessageSourceUtils getInstance() {
return instance;
}
public String getMessage(String key) {
return bundle.getString(key);
}
public String getMessage(String key, String... replaceTexts) {
String message = getMessage(key);
if (replaceTexts == null) {
return message;
}
for (int i = 0; i < replaceTexts.length; i++) {
message = message.replace("{" + i + "}", replaceTexts[i]);
}
return message;
}
}
사용 방법
MessageSourceUtils messageUtils = MessageSourceUtils.getInstance();
String sendMessage = messageUtils.getMessage("message.1", "이상훈",LocalDate.now().format(DateTimeFormatter
.ofPattern("yyyy-MM-dd")));