c语言sscanf函数的用法是什么
284
2022-12-09
SpringBoot集成内存数据库hsqldb的实践
目录目标为什么操作步骤工程截图运行效果总结
目标
在SpringBoot中集成内存数据库hsqldb.
为什么
像H2、hsqldb、derby、sqlite这样的内存数据库,小巧可爱,做小型服务端演示程序,非常好用。最大特点就是不需要你另外安装一个数据库。
操作步骤
修改pom.xml文件
修改项目配置文件application.yml
spring:
datasource:
username: hsp
password: 123456
url: jdbc:hsqldb:mem://localhost/blogdb;shutdown=true
driver-class-name: org.hsqldb.jdbcDriver
schema: classpath:schema.sql
data: classpath:data.sql
initialization-mode: always
continue-on-errorjPVNU: 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"})
@SpringBootApplication
public class HspApplication {
public static void main(String[] args) {
SpringApplication.run(HspApplication.class, args);
}
}
Controller类:BlogController
@RestController
@RequestMapping("/blog")
public class BlogController {
@Autowired
private BlogMapper blogMapper;
@GetMapping(value="/query")
public List
{
return blogMapper.query();
}
}
Mapper类:BlogMapper
@Repository
public interface BlogMapper {
@Select(value = "select * from blog")
List
}
数据bean:Blog
@Data
public class Blog {
private int id;
private String title;
}
工程截图
运行
运行HspApplication即可
效果
总结
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
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~