Я использую базу данных в памяти, которая поставляется с Play Framework, когда у меня есть db = mem
в файле конфигурации для разработки.
Как я могу подключиться к этой базе данных с помощью 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();
}
}
Но я получаю сообщение об ошибке, в котором мне нужно указать имя пользователя и пароль:
org.h2.jdbc.JdbcSQLException: Wrong user name or password [8004-149]
Если я захожу в Интернет -console на / @ db
используется имя пользователя sa
и нет пароля.
Теперь я вошел в систему через интерфейс / @ db
и создал таблицу пользователей
.
Затем я подключился к базе данных в методе контроллера и использовал эту строку jdbc: jdbc: h2: mem: play: sa
, а затем попытался вставить в table users
, но я получаю это сообщение об ошибке:
org.h2.jdbc.JdbcSQLException: Table "USERS" not found; SQL statement:
Как мне подключиться к базе данных H2 в памяти в Play Framework с помощью JDBC?