爲什麼使用H2?
有時候,做個簡單的Demo,需要連接數據庫,如果使用像mysql這樣的數據庫服務器,有點大題小做。 而使用H2正好滿足輕量級開發測試的需求。
1、如果是Maven項目導入下面的依賴
pom.xml
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.197</version>
<scope>runtime</scope>
</dependency>
2、在Spring的xml配置文件中加入下面的內容
<!--使用內存數據庫H2替換MySQL數據庫-->
<jdbc:embedded-database id="dataSource" type="H2">
<jdbc:script location="classpath:schema.sql" encoding="UTF-8"/>
<jdbc:script location="classpath:data.sql" encoding="UTF-8"/>
</jdbc:embedded-database>
3、創建表結構的schema.sql
drop table if exists t_user;
create table t_user(
id bigint identity, /*identity 表示自增*/
name varchar(50),
address varchar(50),
primary key (id)
);
4、測試數據data.sql
insert into t_user(name,address)values('tom','shanghai');
insert into t_user(name,address)values('kite','hangzhou');
5、Spring 基於Java的註解配置
@Bean
public DataSource dataSource() {
return new EmbeddedDatabaseBuilder()
.setType(EmbeddedDatabaseType.H2)
.setScriptEncoding("UTF-8")
.addDefaultScripts()
.build();
}