java 在spring引导中通过语言环境进行i18n国际化的messages.properties文件中的验证消息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 在spring引导中通过语言环境进行i18n国际化的messages.properties文件中的验证消息相关的知识,希望对你有一定的参考价值。
user.login.invalid.id=0
user.login.invalid=Your user name or password was invalid
@RestController
@RequestMapping("/user")
public class UserControler {
@Autowired
UserService userService;
@Autowired
MessageByLocaleService messageByLocaleService;
@RequestMapping(value = "/userlogin", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<User> login(
@RequestBody UserCred userCred)
throws UnsupportedEncodingException {
String invalidLogin = messageByLocaleService.getMessage("user.login.invalid");
}
}
@Component
public class MessageByLocaleServiceImpl implements MessageByLocaleService {
@Autowired
private MessageSource messageSource;
@Override
public String getMessage(String id) {
Locale locale = LocaleContextHolder.getLocale();
return messageSource.getMessage(id,null,locale);
}
}
public interface MessageByLocaleService {
public String getMessage(String id);
}
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@RequestMapping("/")
@ResponseBody
String home() {
return "
}
@Bean
public LocaleResolver localeResolver() {
SessionLocaleResolver slr = new SessionLocaleResolver();
slr.setDefaultLocale(Locale.US);
return slr;
}
@Bean
public ReloadableResourceBundleMessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("classpath:locale/messages");
messageSource.setCacheSeconds(3600); //refresh cache once per hour
return messageSource;
}
}
以上是关于java 在spring引导中通过语言环境进行i18n国际化的messages.properties文件中的验证消息的主要内容,如果未能解决你的问题,请参考以下文章
Spring Cloud项目中通过Feign进行内部服务调用发生401407错误无返回信息的问题
如何在spring security java config中通过jsp表单更新用户详细信息
如何在引导程序中通过ajax调用显示数据表中的数据
Spring中通过java的@Valid注解和@ControllerAdvice实现全局异常处理。
Spring 3.1 中通过 IP 地址进行身份验证:最聪明的方法是啥?
如何在 Meteor 1.3 中通过 NPM 使用引导程序?