按照以往經(jīng)驗(yàn)逐個(gè)排查,開發(fā)環(huán)境統(tǒng)一為utf-8編碼,服務(wù)器也配置了編碼過濾器。前臺(tái)頁(yè)面也是utf-8編碼的。
郁悶,到底哪里出錯(cuò)了呢?
排錯(cuò)1:開發(fā)者工具檢查請(qǐng)求,發(fā)現(xiàn)我的post請(qǐng)求體(表單)亂碼
排錯(cuò)2:感覺服務(wù)器應(yīng)該沒問題了,可是頁(yè)面怎么還是亂碼?
百度查有人說可能是文件編碼不對(duì),即文件編碼不是頁(yè)面中設(shè)置的utf-8,于是仔細(xì)檢查另存一下,發(fā)現(xiàn)依舊亂碼 ==|
排錯(cuò)3:既然前臺(tái)html沒問題,服務(wù)器也沒問題,那么自然而然的懷疑到了thymeleaf身上了
1:模板解析器設(shè)置編碼utf-8
1 @Bean 2 public ITemplateResolver templateResolver() { 3 ServletContextTemplateResolver templateResolver = new ServletContextTemplateResolver(); 4 templateResolver.setPrefix("/WEB-INF/templates/"); 5 templateResolver.setSuffix(".html"); 6 templateResolver.setTemplateMode("HTML5"); 7 templateResolver.setCharacterEncoding("utf-8"); 8 templateResolver.setCacheable(false); 9 return templateResolver;10 }
2:視圖解析器設(shè)置編碼utf-8
1 @Bean2 public ViewResolver springThymeleafViewResolver() {3 4 ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();5 viewResolver.setTemplateEngine(templateEngine());6 viewResolver.setOrder(1);7 viewResolver.setCharacterEncoding("utf-8");8 return viewResolver;9 }
OK,解決問題。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注