0

我正在使用Play 2.1.0开发一个 Web 应用程序并使用 Java 对其进行编程,我需要访问已经保存在数据库中的数据来修改它们。

我试图在没有new操作符的情况下创建一个新实例并将其引用到我保存在数据库中的对象,但即使没有指针错误,它也不会更改属性值。我不知道为什么,所以我决定直接输入 SQL 查询。

同样的事情,它似乎没有任何错误,但它不会改变任何东西......我认为这来自与数据库的错误链接:

这是我的代码application.java

public static Result modifyQuestionnaire(Long id) throws SQLException {
    Statement stmt = null;
    Connection con = DB.getConnection();

    try {
        stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
        String query = "SELECT * FROM WOQ.questionnaire WHERE id=id";
        ResultSet uprs = stmt.executeQuery(query);
        uprs.updateString("name", "baba");
        uprs.updateRow();
    } catch(Exception e) {
        e.printStackTrace();
    } finally {
        if (stmt!=null) {
            stmt.close();
        }
    }
return redirect(routes.Application.questionnaire(id));
}

而且我也尝试直接输入UPDATE查询,还是一样..

我到处寻找,没有找到任何解决方案(Anorm 除外,但它似乎适用于 Scala 语言)

顺便说一句,如果有人知道具有引用同一对象的第二个实例的解决方案(这似乎是可能的,但正如我所说,没有错误但也没有任何操作),这对我来说很好。

4

1 回答 1

0

嗯,你表明你正在尝试创建全新的连接,所以我想,你不想使用 Ebean,但如果你已经在使用它,你可以使用它的方法来完成任务:

(复制) Ebean的API中有一些选项,所以你应该检查它并选择一个:

于 2013-07-04T14:47:43.653 回答