comment utiliser (useUnicode=yes characterEncoding=UTF-8) avec DBCP
j'essaie d'insérer une lettre arabe dans la base de données mysql, mais elle ne stocke que "????". J'utilise DBCP pour me connecter avec la base de données mysql, voici la source de données:
<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"/>
comment configurer L'encodage UTF-8 en configuration DBCP ou comment l'utiliser (useUnicode=yes characterEncoding=UTF-8 ) ?
22
demandé sur
wandarkaf
2012-11-13 15:07:17
3 réponses
Selon documentation DBCP vous devez utiliser le paramètre connectionProperties
valeur
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/view_db"
connectionProperties="useUnicode=yes;characterEncoding=utf8;"
maxActive="50"
(la fermeture ;
!)
34
répondu
Mark Rotteveel
2012-11-13 11:46:36
j'ai essayé ce qui suit et cela a fonctionné pour moi en utilisant tomcat 7.0.40 et MySQL 5.5 sur Debian Wheezy box:
url="jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf8"
Notez que & doit être représentée comme &
assurez-vous également que votre mon.cnf pour votre serveur mysql a les lignes suivantes:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
9
répondu
Moneim Emad
2013-09-11 15:59:08
spécifiez - le dans le url
paramètre, comme ceci:
url="jdbc:mysql://localhost/view_db?useUnicode=yes&characterEncoding=utf8"
7
répondu
Slava Semushin
2017-02-22 21:22:04