我使用Play Framework附帶的內存數據庫,當我在配置文件中使用db=mem
進行開發時。如何使用JDBC連接到Play Framework內存數據庫?
如何使用JDBC連接到此數據庫?而不是默認方式的JPA。
我試圖在我的控制器這個方法:
public static void addToDB() {
try {
Connection conn = DriverManager.getConnection("jdbc:h2:mem:play");
Statement stmt = conn.createStatement();
stmt.execute(sql);
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
,但我得到我需要提供用戶名和密碼的錯誤消息:如果我訪問web的
org.h2.jdbc.JdbcSQLException: Wrong user name or password [8004-149]
控制檯/@db
使用用戶名sa
並且沒有密碼。
現在我通過/@db
界面登錄並創建表users
。
然後我連接到數據庫中的一個控制器方法和使用該JDBC的字符串:jdbc:h2:mem:play:sa
,然後試圖插入到表users
但我收到此錯誤信息:
org.h2.jdbc.JdbcSQLException: Table "USERS" not found; SQL statement:
我應該如何連接到Play Framework中使用JDBC的內存中H2數據庫?
每次我打電話時都會返回一個新連接?還是我不應該關閉? – Jonas
它是從HibernateSession提供的連接。所以我會認爲你最好不要關閉它。 – niels