스프링으로 되어있다.
...
if (StringUtil.isNull(sInDataSet)) {
//오류메세지 - [공통서비스] 입력 데이터셋 정보가 유효하지 않습니다.
throw new BizException(-901, "err.admn.autosvc.indataset.invalid");
}
...
@ExceptionHandler(BizException.class)
public Object handleBizException(HttpServletRequest request, Exception e) throws Exception {
@Autowired
private MessageSource messageSource;
...
strMsg = messageSource.getMessage(msgCode, args, Locale.getDefault());
...
@Bean
public ReloadableResourceBundleMessageSource messageSource() {
ReloadableResourceBundleMessageSource reloadableResourceBundleMessageSource = new ReloadableResourceBundleMessageSource();
String classpath = System.getProperty("java.class.path");
reloadableResourceBundleMessageSource.setBasenames(
"classpath:/egovframework/message/com/message-common",
"classpath:/org/egovframe/rte/fdl/idgnr/messages/idgnr",
"classpath:/org/egovframe/rte/fdl/property/messages/properties");
reloadableResourceBundleMessageSource.setCacheSeconds(60);
return reloadableResourceBundleMessageSource;
}
@ExceptionHandler 는 오류가 발생했을때 낚아챈다.
ReloadableResourceBundleMessageSource 라는 구현체를 @bean으로 등록해 놓고 MessageSource 에서 @autowired로 bean을 주입(의존성주입) 받는다.
결합도를 낮추고 유연하게 쓰자.