我试图将阿拉伯字母插入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"/>
Run Code Online (Sandbox Code Playgroud)
如何在DBCP配置中设置UTF-8编码或如何使用(useUnicode = yes characterEncoding = UTF-8)?
这是以下问题的后续问题:
答案(/sf/answers/2280199631/)对我有用。但是,我想将这些配置保存在与 url 配置分开的 application.properties 文件中。这些配置的名称是什么?
我试过了:
connection.useUnicode=true
connection.characterEncoding=utf8
然后我在我的配置类的属性中设置它们:
properties.put("connection.useUnicode", env.getRequiredProperty("connection.useUnicode"));
properties.put("connection.characterEncoding", env.getRequiredProperty("connection.characterEncoding"));
但它不起作用。