spring 插入mysql数据的中文编码问题

来源:互联网 发布:淘宝网店客服怎么设置 编辑:程序博客网 时间:2024/06/08 18:36

spring 插入mysql数据的中文编码问题 [问题点数:20分,无满意结帖,结帖人xvshj]

 收藏
本帖最后由 xvshj 于 2016-05-19 15:23:02 编辑
spring中文编码mysqljdbc.property
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.URL=jdbc:mysql://localhost:3306/bookstore?useUnicode=true&characterEncoding=UTF-8
user=root
password=root

XML/HTML code
?
1
2
3
4
5
6
7
8
9
10
11
12
 <context:property-placeholder location="classpath:jdbc.properties" /> 
        <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" 
        destroy-method="close" 
        <property name="driverClass"><value>${jdbc.driverClass}</value></property
        <property name="jdbcUrl"><value>${jdbc.Url}</value></property
        <property name="user"><value>${user}</value></property
        <property name="password"><value>${password}</value></property
        <property name="maxPoolSize"><value>40</value></property
        <property name="minPoolSize"><value>2</value></property
        <property name="initialPoolSize"><value>2</value></property
        <property name="maxIdleTime"><value>30</value></property
        </bean


以上的配置信息,我放在jdbc.property中,插入mysql的中文是乱码??
3 | ?? | 40bd001563085fc35165329ea1ff5c5ecbdbbeef | lisi@qq.com。

如果把配置信息放到spring applicationContext.xml中,就没有问题。
XML/HTML code
?
1
2
3
4
5
6
7
8
9
10
11
  <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" 
        destroy-method="close" 
        p:driverClass="com.mysql.jdbc.Driver" 
         
        p:jdbcUrl="jdbc:mysql://localhost:3306/bookstore?useUnicode=true&amp;characterEncoding=UTF-8"
        p:user="root" 
        p:password="root" 
        p:maxPoolSize="40" 
        p:minPoolSize="2" 
        p:initialPoolSize="2" 
        p:maxIdleTime="30" />

大神们,何解?
 
  •  
  •  
发表于: 2016-05-19 15:15:56 楼主
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
回复次数:9
官方推荐
  • AtCommands相关学习资料(中文+英文)
  • At Commands:从白痴到大师的修炼历程(一)
  • Delphi7高级应用开发随书源码
  • 聊天机器人2002
  • LTE AT指令
  • 迅捷全站功能模块
  • 封装了DAO对象用于直接操纵access数据库&nbsp;
  • Spring配置MySQL数据源2
  • Spring配置MySQL数据源
  • spring-batch+quartz处理mysql数据示例
编码参数这样设置的:characterEncoding=utf8
回复于: 2016-05-20 11:30:15#1 得分:0
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
建议,仅仅是建议。保证mysql插入中文有三个地方需要注意,第一个是客户端写入的时候的字符集,第二个是连接数据库指定的字符集,第三个是数据库服务器的字符集,如果确定统一了这三个字符集没问题,你想插入乱码估计很难哟。
回复于: 2016-05-20 12:55:17#2 得分:0
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
引用 1 楼 yys79 的回复:
编码参数这样设置的:characterEncoding=utf8
我看了好多例子都是utf-8。按照你的改成utf8,也还是同样的问题。
回复于: 2016-05-20 16:41:50#3 得分:0
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
引用 3 楼 xvshj 的回复:
Quote: 引用 1 楼 yys79 的回复:
编码参数这样设置的:characterEncoding=utf8
我看了好多例子都是utf-8。按照你的改成utf8,也还是同样的问题。
那估计是你库的编码问题了,mysql有实例,库,表,字段4个级别的编码可以指定,字段级别的优先级最高,你可以看看你的库表是否使用的是utf8的编码。比如新建库时应该使用utf8-default collation这种编码
回复于: 2016-05-23 10:10:41#5 得分:0
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
 

引用 5 楼 yys79 的回复:
Quote: 引用 3 楼 xvshj 的回复:
Quote: 引用 1 楼 yys79 的回复:
编码参数这样设置的:characterEncoding=utf8
我看了好多例子都是utf-8。按照你的改成utf8,也还是同样的问题。
那估计是你库的编码问题了,mysql有实例,库,表,字段4个级别的编码可以指定,字段级别的优先级最高,你可以看看你的库表是否使用的是utf8的编码。比如新建库时应该使用utf8-default collation这种编码
我再看看吧。
回复于: 2016-05-26 20:12:48#6 得分:0
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
同问。楼主解决了吗?但是看视频里面的,甚至没有添加?useUnicode=true&amp;characterEncoding=UTF-8 都不会有乱码
回复于: 2016-12-19 11:17:02#7 得分:0
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
关于乱码这个问题,后来没有发生了。
唯一做的就是myeclipse的整个项目属性设置为utf-8。另外myeclipse这个IDE的首选项中的有关jsp java文件的编码属性设置为统一的utf-8。
回复于: 2016-12-28 19:52:28#8 得分:0
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
&字符转义问题

配置文件 
jdbc.URL=jdbc:mysql://localhost:3306/bookstore?useUnicode=true&haracterEncoding=UTF-8

xml需要转义
jdbc.URL=jdbc:mysql://localhost:3306/bookstore?useUnicode=true&amp;characterEncoding=UTF-8

回复于: 2017-02-23 15:14:52
原创粉丝点击