SpringBoot集成内存数据库hsqldb的实践

目录

  • 目标
  • 为什么
  • 操作步骤
  • 工程截图
  • 运行
  • 效果
  • 总结

目标
在SpringBoot中集成内存数据库hsqldb.


为什么
像H2、hsqldb、derby、sqlite这样的内存数据库,小巧可爱,做小型服务端演示程序,非常好用。最大特点就是不需要你另外安装一个数据库。


操作步骤 修改pom.xml文件
org.hsqldbhsqldb

修改项目配置文件application.yml
spring:datasource:username: hsppassword: 123456url: jdbc:hsqldb:mem://localhost/blogdb; shutdown=truedriver-class-name: org.hsqldb.jdbcDriverschema: classpath:schema.sqldata: classpath:data.sqlinitialization-mode: alwayscontinue-on-error: true

添加初始化数据文件
建表脚本:schema.sql
CREATE TABLE blog (id INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 1) NOT NULL PRIMARY KEY,title varchar(255) DEFAULT NULL,);

导入数据脚本:data.sql
insert into blog(id,title) values(1,'花生皮编程博客');

启动类:HspApplication
@MapperScan({"cn.hsp.blog"})@SpringBootApplicationpublic class HspApplication { public static void main(String[] args) {SpringApplication.run(HspApplication.class, args); }}

Controller类:BlogController
@RestController@RequestMapping("/blog")public class BlogController {@Autowiredprivate BlogMapper blogMapper; @GetMapping(value="https://www.it610.com/query")public List query(){return blogMapper.query(); }}

Mapper类:BlogMapper
@Repositorypublic interface BlogMapper {@Select(value = "https://www.it610.com/article/select * from blog")List query(); }

数据bean:Blog
@Datapublic class Blog {private int id; private String title; }


工程截图 SpringBoot集成内存数据库hsqldb的实践
文章图片


运行
运行HspApplication即可


效果 SpringBoot集成内存数据库hsqldb的实践
文章图片


总结
1.当前的hsqldb在配置的时候一定要在url中添加shutdown=true;否者会出现错误:
org.hsqldb.HsqlException: user lacks privilege or object not found: USER(表不存在的错误)
2.当前的hsqldb中的实体类只需要@Entity注解,@Id和@GeneratedValue
3.dao层需要继承jpa的或者reposity即可

完整源代码
https://gitee.com/hspbc/springboot_memdb
【SpringBoot集成内存数据库hsqldb的实践】到此这篇关于SpringBoot集成内存数据库hsqldb的实践的文章就介绍到这了,更多相关SpringBoot集成hsqldb内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读