回覆列表
-
1 # 使用者9581233299198
-
2 # 使用者566759068971
在application.properties中填寫中文資訊,在讀取該檔案時會出現中文亂碼問題。
比如:application.properties內容:
student.name=小康
student.age=15
解決方法:我用的是IDEA,首先File->settings->Code style->File Encoding
把所有的編碼都設為UTF-8就好了。
再次執行,得出正常結果:
你好,
可以編寫一個Filter
public class EncodingFilter implements Filter {
/** 編碼 */
String encoding = null;
/** 銷燬編碼 */
public void destroy() {
this.encoding = null;
}
/**
* 執行過濾鏈,對請求和相應設定編碼
*/
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if (encoding != null) {
// 對請求進行編碼設定
request.setCharacterEncoding(encoding);
response.setCharacterEncoding(encoding);
}
// 將處理權轉交給下一個處理器
chain.doFilter(request, response);
}
/**
* 初始化編碼,從配置檔案中獲取編碼的值
*/
public void init(FilterConfig filterConfig) throws ServletException {
this.encoding = filterConfig.getInitParameter("encoding");
}
}
需要再Web.xm中註冊攔截器
EncodingFilter
com.sato.filter.EncodingFilter
encoding
GBK