依赖
<dependency>
<groupId>org.glassfish.hk2</groupId>
<artifactId>hk2</artifactId>
<version>3.0.3</version>
</dependency>
注:内置了JDBC
连接数据库
public static final String DRIVER_CLASS = "org.h2.Driver";
public static final String JDBC_URL = "jdbc:h2:D:/log/h2";
public static final String USER = "root";
public static final String PASSWORD = "root";
Class.forName(DRIVER_CLASS);
Connection connection = DriverManager.getConnection(JDBC_URL, USER, PASSWORD);
执行基本操作
public static final String DRIVER_CLASS = "org.h2.Driver";
public static final String JDBC_URL = "jdbc:h2:D:/log/h2";
public static final String USER = "root";
public static final String PASSWORD = "root";
public void simpleCase() {
try {
log.info("start");
Class.forName(DRIVER_CLASS);
Connection connection = DriverManager.getConnection(JDBC_URL, USER, PASSWORD);
Statement statement = connection.createStatement();
statement.execute("drop table if exists user_info");
statement.execute("create table user_info(id integer primary key, name VARCHAR(100), SEX varchar(2))");
statement.executeUpdate("insert into user_info values(1,'jsq','女')");
statement.executeUpdate("insert into user_info values(2,'ad','女')");
statement.executeUpdate("insert into user_info values(3,'sddf','男')");
statement.executeUpdate("insert into user_info values(4,'sfrfe','男')");
ResultSet resultSet = statement.executeQuery("select * from user_info");
while (resultSet.next()) {
log.info("id is {}, name is {}, sex is {}", resultSet.getInt("id"), resultSet.getString("name"), resultSet.getString("sex"));
}
statement.close();
connection.close();
} catch (ClassNotFoundException | SQLException e) {
log.info("have a exception, which is {}", e.getMessage());
}
}
创建数据库连接池
public static final String DRIVER_CLASS = "org.h2.Driver";
public static final String JDBC_URL = "jdbc:h2:D:/log/h2";
public static final String USER = "root";
public static final String PASSWORD = "root";
Class.forName(DRIVER_CLASS);
JdbcConnectionPool pool = JdbcConnectionPool.create(JDBC_URL, USER, PASSWORD);
Connection connection = pool.getConnection();
数据库连接池执行SQL语句
public static final String DRIVER_CLASS = "org.h2.Driver";
public static final String JDBC_URL = "jdbc:h2:D:/log/h2";
public static final String USER = "root";
public static final String PASSWORD = "root";
public void useConnectionPool() {
try {
log.info("start");
Class.forName(DRIVER_CLASS);
JdbcConnectionPool pool = JdbcConnectionPool.create(JDBC_URL, USER, PASSWORD);
Connection connection = pool.getConnection();
Statement statement = connection.createStatement();
statement.execute("drop table if exists user_info");
statement.execute("create table user_info(id integer primary key, name VARCHAR(100), SEX varchar(2))");
String[] inserts = {"insert into user_info values(1,'jsq','女')", "insert into user_info values(2,'ad','女')", "insert into user_info values(3,'sddf','男')",
"insert into user_info values(4,'sfrfe','男')"};
for (int i = 0; i < 4; i++) {
Connection conn = pool.getConnection();
conn.createStatement().executeUpdate(inserts[i]);
}
ResultSet resultSet = pool.getConnection().createStatement().executeQuery("select * from user_info");
while (resultSet.next()) {
log.info("id is {}, name is {}, sex is {}", resultSet.getInt("id"), resultSet.getString("name"), resultSet.getString("sex"));
}
} catch (ClassNotFoundException | SQLException e) {
log.info("have a exception, which is {}", e.getMessage());
}
}