h2数据库是纯java的,方便编程,可以作为嵌入式数据库使用。
官方网址是http://www.h2database.com/html/main.html。
h2只有一个jar文件,放到工程的lib目录下面即可。客户端使用有命令h2..bat。下面主要谈工程中使用h2。
h2建表的主键自增需要使用sequence,类似于oracle。因此一张表对应一个sequence。
在使用hibernate配置的时候如下:
jdbc.url=jdbc:h2:tcp://localhost/~/h2
jdbc.username=sa
jdbc.password=
jdbc.driver=org.h2.Driver
hibernate.dialect=org.hibernate.dialect.H2Dialect
对于实体pojo对象的映射,我是用的annotation,关键是id主键的映射,如下:
@Column(name = "ID", nullable = false)
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "ABC_ID_SEQ")
@SequenceGenerator(name = "ABC_ID_SEQ", sequenceName = "ABC_ID_SEQ")
protected Long id;
注意这里的GeneratedValue和SequenceGenerator的使用,这属于JPA规范,全部来自javax.persistence包。
这样就可以使用hibernate操作h2了。