泽西岛提供了一个空的JSON

时间:2013-01-10 20:20:14

标签: java json 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()]);
    }
}

1 个答案:

答案 0 :(得分:6)

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

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

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