0

我有一个关于编码的问题。

我创建了一个包含一些文本的 MySQL 5.5 DB。我还创建了一个 Java Webservice,它创建由 Android 应用程序读取的 JSON。

我已经在数据库中存储了文本,它看起来不错,例如:

verwarm de bake voor op 210°C

但是当我在浏览器中检查 JSON 时,它看起来像这样(也在我的 Android 应用程序中)

{"gerechtId":"6","id":"13","laatsteUpdate":"2013-02-14T15:53:42+01:00","text":"verwarm de oven voor op 210°C ","title":"oven voorverwarmen","volgNr":"1"}

如您所见,温度显示出我不喜欢的字符;-)

我怎样才能避免这种情况?

我正在使用 Hibernate 3 来读取数据库。这是我的 persistence.xml :

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0"
    xmlns="http://java.sun.com/xml/ns/persistence"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence     http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd ">
    <persistence-unit name="LENGO" transaction-type="RESOURCE_LOCAL">
    <provider>org.hibernate.ejb.HibernatePersistence</provider> 
    <properties>

        <property name="hibernate.archive.autodetection" value="class, hbm"/>
        <property name="hibernate.connection.url" value="jdbc:mysql://62.213.197.17/lengotoo_autikoken?autoReconnect=true&amp;useUnicode=true&amp;characterEncoding=UTF-8"/>
        <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>

    </properties>
</persistence-unit>
</persistence>
4

1 回答 1

0

我通过这样做解决了这个问题:

@Produces(MediaType.APPLICATION_JSON + "; charset=UTF-8")

代替

@Produces(MediaType.APPLICATION_JSON)

在我的网络服务的资源中。

于 2013-05-06T11:37:39.127 回答