当前位置: 首页 > news >正文

提供一个springboot使用h2数据库是无法使用脚本并报错的处理方案

环境描述

springboot

2.6.2

mybatis-plus-boot-starter

3.5.1

mysql-connector-java

8.0.11

查阅了很多博客,说是使用spring.datasource.schema或者spring.sql.init.schema-locations指定脚本也均无效。不使用启动脚本,启动后在h2控制台,sql可以执行。

sql

create table tb_vc(id   bigint auto_incrementprimary key,name varchar(255)  null,data varchar(6400) null);

多次配置没有用后,最终决定使用类似于springboot加载时创建的方案,具体的mybatis的xml文件的写法

<update id="createTable">create table tb_vc(id   bigint auto_incrementprimary key,name varchar(255)  null comment,data varchar(6400) null comment);
</update>

添加配置类,使用配置类的注解+@PostConstruct解决

@Configuration
@Slf4j
public class InitConfig {@Resourceprivate VcMapper vcMapper;@PostConstructpublic void init() {// todo 你的其他业务逻辑vcMapper.createTable();}
}

其他方案:

当然,spring提供了一个接口CommandLineRunner,也可以通过类似的方案

@SpringBootApplication
public class VcApplication extends SpringBootServletInitializer implements CommandLineRunner {@Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder application) {return application.sources(VcApplication.class);}public static void main(String[] args) throws Exception {SpringApplication.run(VcApplication.class, args);}@Overridepublic void run(String... args) throws Exception {logger.info("Application Started !!");}
}

http://www.lryc.cn/news/207248.html

相关文章:

  • 【组合计数】CF1866 H
  • JavaSpringbootmysql农产品销售管理系统47627-计算机毕业设计项目选题推荐(附源码)
  • 一文5000字从0到1使用Jmeter实现轻量级的接口自动化测试(图文并茂)
  • 蓝桥杯每日一题0223.10.23
  • php危险函数及rce漏洞
  • 4. 寻找两个正序数组的中位数
  • Stable Diffusion AI绘图
  • MR混合现实情景实训教学系统在旅游管理专业中的应用
  • CentOS 使用线程库Pthread 库
  • #力扣:LCP 01. 猜数字@FDDLC
  • kafka丢数据的原因
  • 音视频编解码技术学习笔记
  • [C#基础训练]FoodRobot食品管理部分代码-1
  • YModem协议总结
  • ElasticSearch(ES)8.1及Kibana在docker环境下如何安装
  • 常用Win32 API的简单介绍
  • VM及WindowsServer安装
  • 操作系统【OS】调度算法对比图
  • 音视频开发常见问题(五):视频黑屏
  • 力扣 第 368 场周赛
  • 文件的常用操作(读取压缩文件、解压、删除)
  • Simulation Studio - TRNSYS
  • python实现串口通信
  • No module named ‘cv2’ 解决方法
  • 65、内网安全-域环境工作组局域网探针方案
  • C#:EXCEL列名、列序号之间互相转换
  • 云原生微服务实战 Spring Cloud Alibaba 之 Nacos
  • ubuntu gcc版本降级 Reset gcc version from 11.3 to 11.2 on Ubuntu 22.04
  • 基于机器视觉的二维码识别检测 - opencv 二维码 识别检测 机器视觉 计算机竞赛
  • Windows客户端下pycharm配置跳板机连接内网服务器