如何使用play 2和java在控制器中输入SQL指令
我正在用Java开发一个web应用程序,并用Java编程,我需要访问数据库中已经保存的数据来修改它们 我尝试在没有如何使用play 2和java在控制器中输入SQL指令,java,sql,playframework,playframework-2.1,Java,Sql,Playframework,Playframework 2.1,我正在用Java开发一个web应用程序,并用Java编程,我需要访问数据库中已经保存的数据来修改它们 我尝试在没有new操作符的情况下创建一个新实例,并将其引用到数据库中保存的对象,但即使没有指针错误,也不会更改属性值。我不知道为什么,所以我决定直接输入SQL查询 同样的事情,它似乎没有任何错误,但它不会改变任何事情。。。我认为这是因为与数据库的链接不正确: 这是我在application.java中的代码: public static Result modifyQuestionnaire(Lo
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));
}
我还尝试直接输入一个更新查询,仍然是一样的
我找遍了所有地方,没有找到任何解决方案(除了Anorm,但它似乎与Scala语言一起工作)
顺便说一句,如果有人知道一个解决方案的第二个实例引用了同一个对象(这似乎是可能的,但正如我所说,没有错误,但也没有操作),这对我来说很好。嗯,你表明你正在尝试创建一个全新的连接,所以我想,你不想使用Ebean,但是,如果您已经在使用它,您可以使用它的方法执行任务:
()Ebean的API中有一些选项,因此您应该检查并选择一个:
- -在示例中签入
@NamedUpdates
注释
- -您只需执行原始SQL更新,无需提供实体类型
你没有考虑使用递送<代码> eBe</代码> ORM吗?它有用于选择和更新DB的rowsHello的原始查询的方法,我正在使用ebean来创建我的表(以inventory.java为例),但我不知道使用ebean ORM是什么意思。。你能告诉我吗?你知道创建一个属性为其他对象列表的对象的最佳方法吗,以便通过SQL请求访问该列表?因为使用oneToMany,我在任何地方都看不到我的列表,所以我不能对它执行任何sql请求…这个关系不是为关系创建了联接表吗?(我现在不记得了)在这种情况下,您可以使用公共SQL连接收集数据。