zoukankan      html  css  js  c++  java
  • C3P0数据库连接池数据库插入中文乱码问题解决

    问题描述

    近期修改一个学生信息管理的JavaWeb项目,其数据库连接池使用了C3P0。在实际测试时,发现在学生信息模块添加中文学生信息会在数据库(MySQL)出现中文乱码问题。

    如图所示:
    在这里插入图片描述

    问题分析

    如果在Application本身数据不存在中文乱码的前提下,那么存在以下两种可能(严格来说是一种):

    1. 数据库字符集问题导致
    2. Application连接时没有指定字符集导致

    首先,我想到了是不是数据库字符集的问题,但我在数据库查看字符集的设置信息时,并没有发现问题。

    如图:
    在这里插入图片描述

    当然如果你在查看你的数据库字符集时发现存在不支持中文的字符集时,可以参考博文:https://blog.csdn.net/weixin_43670802/article/details/95230263 进行字符集修改。

    那么肯定是连接时没有指定字符集所致了。

    问题解决

    在JDBC URL 后面加上字符集参数即可。

    <?xml version="1.0" encoding="UTF-8"?>
    <c3p0-config>
    	<default-config>
    		<property name="driverClass">com.mysql.jdbc.Driver</property>
    		<property name="jdbcUrl">jdbc:mysql://localhost:3306/ssms?useUnicode=true&amp;characterEncoding=UTF-8</property>
    		<property name="user">root</property>
    		<property name="password">xxxx</property>
    	</default-config>
    </c3p0-config>
    

    注意

    C3P0连接池的配置文件为XML文件,所以某些特殊字符并不能直接键入,需要转义。
    在上述的JDBC URL中,需要特别注意键入的是&amp;而不是&

  • 相关阅读:
    单多文件上传
    C程序多项式加法器
    显示桌面回来了,太牛了
    Meta 方便搜索引擎排序
    数据结构(c)试验题目汇总
    dos 命令符
    两夜之后,停车场模拟告一段落
    php 搜索数据表 排序
    读取 Radio 的值
    JSF2.0/Richfaces/MiniOA开发入门视频教程
  • 原文地址:https://www.cnblogs.com/tfxz/p/12902911.html
Copyright © 2011-2022 走看看