我正在尝试在mysql数据库中插入阿拉伯字母,但是只存储“ ????”。我正在使用DBCP与mysql数据库连接,这是数据源:
<Resource name="jdbc/view_db" auth="Container" type="javax.sql.DataSource" username="root" password="" autoReconnect="true" testOnBorrow="true" validationQuery = "SELECT 1" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/view_db" maxActive="50" maxIdle="10"/>
如何在DBCP配置中设置UTF-8编码或如何使用(useUnicode = yes characterEncoding = UTF-8)?
根据DBCP文档,您需要使用connectionProperties带有value 的参数[propertyName=propertyValue;]*,因此在这种情况下,您应该使用类似以下内容的方法:
connectionProperties
[propertyName=propertyValue;]*
driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/view_db" connectionProperties="useUnicode=yes;characterEncoding=utf8;" maxActive="50"
(注意结束;!)
;