日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

tomcat+SSH中遇到中文乱码的解决方法

發布時間:2025/5/22 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 tomcat+SSH中遇到中文乱码的解决方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近開始又轉向J2EE的開發。很久沒用,重新熟悉。

本地環境ubuntu 12.13,mysql5.x,tomcat7.x,struts2.3.15.x,spring3.1.0,hibernate4.1.x

之前一直連線上服務器上測試數據庫,沒有發現有中文亂碼問題。

現在在本地搭建此環境,使用本地數據庫,便于調試,但是發現每次對數據庫操作,有中文就會出現????亂碼。

那現在一步步排除什么原因引起:

  • 前端jsp或者html界面:

  • 對于在頁面中顯示出現亂碼,這個問題比較簡單,便是檢查你的JSP文件里是不是出現了中文要處理,因為JSP默認的編碼格式為“ISO-8859-1”,當JSP中出現要處理的中文時,其顯示就出現亂碼了,這種情況一般出現在手寫JSP,或修改時。

    <%@?page?language="java"?contentType="text/html;?charset=utf-8"pageEncoding="UTF-8"%>

    2、傳參數過程中亂碼

    傳遞參數出現的亂碼,參數的內容為中文。無論是post或者get。

    需要關注的位置:

    • ?tomcat 配置,位置 tomcat->conf->server.xml,加入URIEncoding="utf-8"

    <Connector?port="8080"?protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443"?URIEncoding="utf-8"/>
    • web.xml中加入過濾器filter

    <filter><filter-name>encodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param></filter><filter-mapping><filter-name>encodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>

    上面項目中用的spring帶的web字符過濾器

    • tomcat 配置,位置 tomcat->conf->web.xml ? ? 放開注釋的過濾器

    <!--?A?filter?that?sets?character?encoding?that?is?used?to?decode?--><!--?parameters?in?a?POST?request?--><filter><filter-name>setCharacterEncodingFilter</filter-name><filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param><async-supported>true</async-supported></filter>
    • 編寫過濾器Filter (這個沒用到)

    3、后臺部分

    主要是關注:hibernate和mysql(我項目用的mysql數據庫)

    • ?hibernate注意:

    連接mysql,如果用hibernate.cfg.xml加上屬性.

    <property name="connection.useUnicode">true</property>?

    <property name="connection.characterEncoding">UTF-8</property>?

    如果用spring配置文件:

    有兩種方法,1、直接寫到applicationContext.xml中;2、寫到database-config.properties中,由applicationContext.xml調用

    database-config.properties:

    mydata.driverClass=com.mysql.jdbc.Driver #mydata.url=jdbc:mysql://localhost:3306/sdk?useUnicode=true&characterEncoding=UTF-8 mydata.url=jdbc:mysql://localhost:3306/sdk?useUnicode=true&characterEncoding=UTF-8 mydata.username=root wshouyouDB.password=xxxx

    (我遇到的問題是出現上段代碼中)

    applicationContext.xml:

    <!--?讀取jdbc.properties配置文件?--><beanclass="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property?name="locations"><value>classpath:database-config.properties</value></property></bean><bean?id="dataSource"?destroy-method="close"class="com.mchange.v2.c3p0.ComboPooledDataSource"><property?name="driverClass"?value="${mydata.driverClass}"?/><property?name="jdbcUrl"?value="${mydata.url}"?/><property?name="user"?value="${mydata.username}"?/><property?name="password"?value="${mydata.password}"?/>
    • mysql部分

    創建數據庫表中,注意:

    show create table gamepad_model;看一下創建表的語句

    CREATE?TABLE?`gamepad_model`?(`edit_id`?varchar(50)?NOT?NULL,`filedata`?text,`gamepad_type`?varchar(100)?NOT?NULL,`pic_url`?varchar(255)?DEFAULT?NULL,`sdk_version`?varchar(50)?NOT?NULL,`update_date`?timestamp?NOT?NULL?DEFAULT?CURRENT_TIMESTAMP?ON?UPDATE?CURRENT_TIMESTAMP,PRIMARY?KEY?(`edit_id`) )?ENGINE=InnoDB?DEFAULT?CHARSET=utf8

    需要加上: CHARSET=utf8

    排除是不是mysql的問題,可以手動插入一條含有中文的數據,看看表中是否有亂碼;

    ?

    insert?into?gamepad_model(edit_id,filedata,gamepad_type,sdk_version)?values('test3_測試','ttt','testtt_你好','1');

    如果沒有問題,則排除mysql問題

    一步一步排除

    1、前臺,是否有亂碼,不是,傳遞參數層

    2、傳遞參數,到java中,看到傳遞過來的中文,debug下是否有中文亂碼,如果沒有,排除之

    3、前兩步排除后,就應該是后臺問題,hibernate或者mysql問題,

    4、可以先看上邊提到的,手動插入一句有中文內容的語句,看數據庫中是否有亂碼,如果沒有,排除之

    5、到這一步,就只剩下hibernate問題了。在上文中,提到注意的地方,檢查。

    我的問題就在這一步,

    mydata.url=jdbc:mysql://localhost:3306/sdk?useUnicode=true&characterEncoding=UTF-8

    一般不在xml中,連接數據庫需要加上

    useUnicode=true&characterEncoding=UTF-8

    但是如果在xml中,需要轉意一下

    mydata.url=jdbc:mysql://localhost:3306/sdk?useUnicode=true &amp; characterEncoding=UTF-8

    其他方面沒有研究,有的話,請多指教!

    • 相關文章推薦:

    • Tomcat在Linux上使用Native Library

    • apache+3tomcat+jk+memcached集群環境搭建

    • Linux(ubuntu12.04)下搭建Nginx+Tomcat

    • 本文來自:愛好Linux技術網

    • 本文鏈接:http://www.ahlinux.com/tomcat/9253.html



    轉載于:https://blog.51cto.com/9626185/1579052

    總結

    以上是生活随笔為你收集整理的tomcat+SSH中遇到中文乱码的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: wwwxxx日韩| 国产伦精品一区二区三区视频孕妇 | 欧美囗交做爰视频 | 欧美 日韩 国产 一区 | 亚洲视频精品在线观看 | 神马久久久久久久久久久 | 久久人人爽人人 | 性猛交╳xxx乱大交 偷偷操不一样的久久 | 日本三级中文字幕在线观看 | 欧美自拍亚洲 | 成人无码精品1区2区3区免费看 | 成人av18 | 人人妻人人藻人人爽欧美一区 | 国产又粗又猛视频免费 | 黄色免费在线观看网站 | 人人干在线 | 国产成人在线精品 | 免费色片网站 | 婷婷爱爱| 爱爱免费小视频 | 欧美人与牲动xxxx | 毛片毛片毛片毛片毛片毛片毛片毛片 | 777亚洲 | 久久天| 丰满人妻一区二区三区53号 | exo妈妈mv在线播放高清免费 | 亚洲精品97 | 草草影院国产第一页 | 一二三四区在线 | 综合免费视频 | 久久99精品国产.久久久久久 | 岛国色图| 精品国产乱码久久久久久影片 | 亚洲男人天堂网 | 国产91精品久久久久 | 自拍偷拍国产 | 亚洲最大福利 | 91国在线| 久久久无码精品亚洲无少妇 | 公侵犯人妻一区二区三区 | 午夜不卡影院 | 激情高潮呻吟抽搐喷水 | 国内精品一区二区三区 | 色综合天天综合 | 澳门色网 | 男女草逼 | 99热这里只有精品1 亚洲人交配视频 | 日本wwwxxx | 成人在线一区二区三区 | 色婷婷综合五月 | 天天操狠狠干 | asian日本肉体pics | 男生和女生一起差差差视频 | 大尺度一区二区 | 少妇又紧又深又湿又爽视频 | 在线播放小视频 | 成人资源站 | 亚洲乱熟女一区二区三区小说 | 日韩高清久久 | 亚洲欧美成人网 | 中文字幕av网 | 97国产在线播放 | 干极品美女 | 天天干天天操天天碰 | 天天摸天天干 | 欧美大白bbbb与bbbb | 成年人黄色免费视频 | 国产精品夜夜爽张柏芝 | 成人夜间视频 | 六月丁香激情综合 | 国内免费毛片 | 伊人老司机| 日韩乱码人妻无码中文字幕久久 | 国产伦精品一区二区三区四区视频 | 日人视频 | 亚洲AV无码成人精品国产一区 | 蕾丝视频污 | 男插女视频在线观看 | 一本高清dvd在线播放 | 日韩欧美高清一区 | 色综合视频网 | 丰满少妇一区二区三区专区 | 日本乱偷中文字幕 | 性渴老太作爱 | 日韩中文字幕一区二区三区四区 | 久草免费福利 | 亚洲av无一区二区三区 | 欧美91精品久久久久国产性生爱 | 依人成人网 | 日本免费一二区 | 久久久久不卡 | 中文字幕在线亚洲 | 美女又黄又爽 | 亚洲一级影院 | 青青草原av | 国产又色又爽无遮挡免费动态图 | www日日| 免费色网址 | 久色精品视频 |