一、国际化类:
package com.mall;
import ............
public class MyLocaleResolver implements LocaleResolver {
@Override
public Locale resolveLocale(HttpServletRequest request) {
// 此处可以根据项目需要修改代码,比如使用session或cookie
String l = request.getParameter("l");
Locale locale = null;
if (StringUtils.isEmpty(l)) {
locale = Locale.getDefault();
} else {
String[] split = l.split("_");
if (split.length == 1) {
locale = new Locale(split[0]);
} else {
locale = new Locale(split[0], split[1]);
}
}
return new Locale("en");// 这里直接固定设置为 en 进行测试
}
@Override
public void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) {
}
}
二、ValidationConfig 类:
package com.mall.config;
import ............
@Configuration
public class ValidationConfig {
@Bean
public LocaleResolver localeResolver() {
return new MyLocaleResolver();
}
}
三、新增 ValidationMessages_en.properties 文件,内容如下:
user.username.notnull=UserName Not Null
user.password.notnull=Password Not Null
user.username.length=UserName Length IN(5-20)
user.password.length=Password Length IN(6-20)