sscom 中文显示 乱码_解决SSM框架使用过程中的中文乱码问题
在使用搭建的SSM框架進(jìn)行數(shù)據(jù)的CRUD操作時(shí),出現(xiàn)了中文字符無法正確傳遞至后臺(tái),并寫入數(shù)據(jù)庫中的數(shù)據(jù)為“???”的形式。經(jīng)過查詢資料與試驗(yàn),可以用如下方法來解決:
1、前端輸入的中文字符正確,而傳遞至后臺(tái),中文字符變?yōu)?#xff1f;??:
是因?yàn)閟pringMVC采用默認(rèn)的編碼方式(ISO-8859-1)對(duì)參數(shù)進(jìn)行解析,而前端頁面采用的編程方式為UTF-8,此時(shí)需要在web.xml中增加過濾器:
CharacterEncodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingUTF-8forceRequestEncodingtrueforceResponseEncodingtrueCharacterEncodingFilter/*
同時(shí),也可以考慮到web服務(wù)器的編解碼方式,該項(xiàng)目部署在了tomcat服務(wù)器上面,因此對(duì)tomcat的配置進(jìn)行更改,在相應(yīng)的端口處增加URIEncoding="UTF-8":
URIEncoding="UTF-8"/>
2、當(dāng)解決了前端傳入后臺(tái)的中文字符正常顯示后,也可能會(huì)出現(xiàn)后臺(tái)寫入數(shù)據(jù)庫中的數(shù)據(jù)出現(xiàn)中文字亂碼的情況,即在數(shù)據(jù)庫中文變?yōu)?#xff1f;??的形式:
這是因?yàn)閿?shù)據(jù)庫的編碼方式也需要進(jìn)行修改:
在配置的數(shù)據(jù)庫連接處做如下修改即可:
id="datasource"class="org.apache.commons.dbcp.BasicDataSource">name="driverClassName"value="com.mysql.jdbc.Driver">name="url"value="jdbc:mysql://127.0.0.1:3306/yanxj?useUnicode=true&characterEncoding=UTF-8">name="username"value="root">name="password"value="root">name="initialSize"value="1"/>name="maxActive"value="5"/>
經(jīng)過查看資料,找到了一篇更全的解決中文亂碼問題的文章,可參照:
https://blog.csdn.net/zhangzuyuanbest/article/details/53453792
總結(jié)
以上是生活随笔為你收集整理的sscom 中文显示 乱码_解决SSM框架使用过程中的中文乱码问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蚊香和液体蚊香有什么区别?
- 下一篇: 湖南国网电力职能部门有哪些