1

我正在为大学做一个项目,这让我很生气。我需要用 jersey 开发一个 web 服务,但每个请求都只向我发送这个空 JSON:

[{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}]  

数据库查询是测试并交付内容。我只是不知道它可能是什么。

爪哇:

@Path("/getFachbereiche")
public class GetFachbereiche {
    @GET
    @Produces("application/json")
    public Fachbereich[] getFachbereiche() {
        List<Fachbereich>fList = new ArrayList<Fachbereich>();
        Connection conn = MySQLConnection.getInstance();
        if (conn != null) {
            try {
                // Anfrage-Statement erzeugen.
                Statement query;
                query = conn.createStatement();

                // Ergebnistabelle erzeugen und abholen.
                String sql = "SELECT * FROM Fachbereich";
                ResultSet result = query.executeQuery(sql);

                //Ergebniss zurückliefern
                while (result.next()) {
                    fList.add(new Fachbereich(result.getInt(1), result.getString(2)));
                }
            } catch(SQLException e) {
                e.printStackTrace();
            }
        }
        return fList.toArray(new Fachbereich[fList.size()]);
    }
}
4

1 回答 1

5

您来自 Fachbereich 的属性是私有的,默认情况下,私有属性未序列化。你有两个解决方案:

  • 将 XmlElement 注释放在每个属性上,以便将其序列化

  • 或者为每个属性定义一个公共 getter。

于 2013-01-10T20:53:04.870 回答