2013-09-30 3 views
4

Когда я запускаю свое приложение, eclipselink устанавливается на автоматическое падение и создает таблицу в базе данных. Я установил его для создания механизма InnoDB с использованием суффикса создания таблицы. Тем не менее, я хотел бы, чтобы кодировка текста была utf8_unicode_ci. Как настроить файл xml для этого. В настоящий момент по умолчанию используется utf8_general_ci.Eclipselink auto создает utf8_unicode_ci

<?xml version="1.0" encoding="UTF-8" ?> 
<persistence xmlns:xsi="http://www.w3.org/2001/XMLSc...> 
    <persistence-unit name="Data"> 

    <class>com.core.objects.StandardObject</class> 

    <properties> 
    <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" /> 
    <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/data" /> 
    <property name="javax.persistence.jdbc.user" value="username" /> 
    <property name="javax.persistence.jdbc.password" value="password" /> 

    <!-- EclipseLink should create the database schema automatically --> 
    <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> 
    <property name="eclipselink.ddl-generation.output-mode" value="database" /> 
    <property name="eclipselink.ddl-generation.table-creation-suffix" value="engine=InnoDB " /> 
    </properties> 
    </persistence-unit> 
</persistence> 

ответ

4

Это было время, так как вы задали этот вопрос, во всяком случае я вывешиваю этот ответ случайно если кто-то хочет знать.

Изменить "javax.persistence.jdbc.url" свойства значение из

"jdbc:mysql://localhost:3306/data" 

в

"jdbc:mysql://localhost:3306/data?useUnicode=yes&amp;characterEncoding=UTF-8". 

Это включит поддержку юникода для вашей базы данных.
Надеется, ты понял это сейчас;)

0

при автоматическом создании таблицы вы можете сконфигурировать этот параметр:

<prop key=eclipselink.ddl-generation.table-creation-suffix>ENGINE=InnoDB DEFAULT CHARSET=utf8</prop> 
Смежные вопросы