Veritabanı kurulum yada konfigurasyon farklılıklarından ötürü JDBC yada JPA ile Türkçe karakterleri doğru persist edemiyorsanız. Çözüm aşağıdadır.
Problem JDBC katmanında yaşanır. JDBC connection url'inize
useUnicode=true
characterEncoding=UTF-8
parametreleri eklemelisiniz.
Yani connection url'iniz
jdbc:mysql://address:port/database_name?useUnicode=true&characterEncoding=UTF-8
gibi olmalıdır.
JPA kullananlar persistence.xml içerisine
<property name="hibernate.connection.useUnicode" value="true" />
<property name="hibernate.connection.characterEncoding" value="UTF-8" />
ekleyerek problemi çözebilirler.
Seam Framework kullanlar ise ds.xml(Seam Data Source XML) dosyalarına "driver-class" tanımından hemen sonra aşağıdaki iki connection property'i eklemelidirler
<connection-property name="useUnicode">true</connection-property>
<connection-property name="characterEncoding">UTF-8</connection-property>
18 Nisan 2011 Pazartesi
Kaydol:
Kayıtlar (Atom)