Commit 9d48661f authored by Quxl's avatar Quxl

修改国际化配置

parent aeaf543c
...@@ -2,6 +2,7 @@ package com.egolm.film.config.interceptor; ...@@ -2,6 +2,7 @@ package com.egolm.film.config.interceptor;
import java.util.Locale; import java.util.Locale;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
...@@ -9,6 +10,8 @@ import org.springframework.context.i18n.LocaleContextHolder; ...@@ -9,6 +10,8 @@ import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
import com.egolm.common.StringUtil;
@Component @Component
public class LocaleCookieInterceptor extends HandlerInterceptorAdapter { public class LocaleCookieInterceptor extends HandlerInterceptorAdapter {
...@@ -16,7 +19,7 @@ public class LocaleCookieInterceptor extends HandlerInterceptorAdapter { ...@@ -16,7 +19,7 @@ public class LocaleCookieInterceptor extends HandlerInterceptorAdapter {
@Override @Override
public boolean preHandle(HttpServletRequest req, HttpServletResponse resp, Object handler) throws Exception { public boolean preHandle(HttpServletRequest req, HttpServletResponse resp, Object handler) throws Exception {
String str = req.getParameter(language); String str = this.getParameterValue(req, language);
if(str == null || !str.matches("[a-z]{2}_[A-Z]{2}")) { if(str == null || !str.matches("[a-z]{2}_[A-Z]{2}")) {
str = "zh_CN"; str = "zh_CN";
} }
...@@ -25,4 +28,22 @@ public class LocaleCookieInterceptor extends HandlerInterceptorAdapter { ...@@ -25,4 +28,22 @@ public class LocaleCookieInterceptor extends HandlerInterceptorAdapter {
return super.preHandle(req, resp, handler); return super.preHandle(req, resp, handler);
} }
public String getParameterValue(HttpServletRequest request, String name) {
String value = request.getParameter(name);
if(StringUtil.isBlank(value)) {
value = request.getHeader(name);
}
if(StringUtil.isBlank(value)) {
Cookie[] cookies = request.getCookies();
if(cookies != null) {
for(Cookie cookie : cookies) {
if(cookie.getName().equals(name)) {
value = cookie.getValue();
}
}
}
}
return value;
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment