JavaDemo——java使用H2db

maven导入:

<dependency>
	    <groupId>com.h2database</groupId>
	    <artifactId>h2</artifactId>
	    <version>1.4.199</version>
	</dependency>

嵌入数据库Demo:

/**
 * 2019年4月22日下午10:16:05
 */
package testH2db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * @author xinwenfeng
 *
 */
public class TestH2db {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		try {
			Connection conn = DriverManager.getConnection("jdbc:h2:./mydb");//当前项目下
//			Connection conn = DriverManager.getConnection("jdbc:h2:~/mydb");//“系统盘:\Users\用户名”文件夹下
			Statement state = conn.createStatement();
			state.executeUpdate("create table games (id INTEGER PRIMARY KEY AUTO_INCREMENT,name VARCHAR(100))");
			state.executeUpdate("insert into games (name) values ('Devil May Cry5'),('Crysis3'),('Far cry4')");
			state.close();
			
			PreparedStatement pstate = conn.prepareStatement("select * from games where name like ?");
			pstate.setString(1, "%Cry%");
			ResultSet resultSet = pstate.executeQuery();
			while(resultSet.next()) {
				System.out.println("id:"+resultSet.getInt("id")+" name:"+resultSet.getString(2));
			}
			pstate.close();
			
			conn.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

}

结果:

内存数据库Demo:

/**
 * 2019年4月22日下午10:40:15
 */
package testH2db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * @author xinwenfeng
 *
 */
public class TestH2dbMem {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		try {
//			Connection conn = DriverManager.getConnection("jdbc:h2:mem:");//内存模式
			Connection conn = DriverManager.getConnection("jdbc:h2:mem:db1");//指定内存数据库
			Statement state = conn.createStatement();
			state.executeUpdate("create table animals (id INT,name VARCHAR(100))");
			state.executeUpdate("insert into animals (id,name) values (1,'dog'),(2,'cat'),(3,'rabbit'),(4,'fish'),(5,'duck'),(6,'tiger')");
			state.close();
			
			PreparedStatement pstate = conn.prepareStatement("select name from animals where id between ? and ?");
			pstate.setInt(1, 2);
			pstate.setInt(2, 4);
			ResultSet rset = pstate.executeQuery();
			while(rset.next()) {
				System.out.println(rset.getString("name"));
			}
			pstate.close();
			
			conn.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

}

结果:

 

h2网站有张数据库比较图扣下来,maven里这类数据库h2好像用的很多,其他还有hsqldb、derby等等;

 

参考:

https://blog.csdn.net/wulong710/article/details/62422347

http://www.h2database.com/html/main.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值