常见问题03:SpringBoot项目启动初始化数据(执行sql文件)

这篇具有很好参考价值的文章主要介绍了常见问题03:SpringBoot项目启动初始化数据(执行sql文件)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、类ResourceDatabasePopulator介绍

使用外部资源中定义的 SQL 脚本填充、初始化或清理数据库。

  1. 调用addScript(org.springframework.core.io.Resource)以添加单个 SQL 脚本位置。
  2. 调用addScripts(org.springframework.core.io.Resource…)以添加多个 SQL 脚本位置。
  3. 请参阅此类中的 setter 方法以获取更多配置选项。
  4. 调用populate(java.sql.Connection)或execute(javax.sql.DataSource)使用配置的脚本初始化或清理数据库。

2、方法总结

常见问题03:SpringBoot项目启动初始化数据(执行sql文件),一、Java,六、架构,九、工作及问题,spring boot,sql,java
常见问题03:SpringBoot项目启动初始化数据(执行sql文件),一、Java,六、架构,九、工作及问题,spring boot,sql,java

3、通过注解@PostConstruct实现

package com.shucha.deveiface.web.config;

import com.sdy.common.utils.DateUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator;

import javax.annotation.PostConstruct;
import javax.sql.DataSource;
import java.util.Date;

/**
 * @author tqf
 * @Description 项目启动初始化数据
 * @Version 1.0
 * @since 2022-04-13 09:29
 */
@Configuration
@Slf4j
public class DataInitializationConfig {

    @Autowired
    DataSource dataSource;

    @PostConstruct
    public void init() {
        // 项目启动初始化基本数据
        log.info("数据初始化开始: " + DateUtil.dateToString(new Date(),"yyyy-MM-dd HH:mm:ss"));
        // 通过直接读取sql文件执行
        Resource resources = new ClassPathResource("sql/client_api_auth.sql");
        ResourceDatabasePopulator resourceDatabasePopulator = new ResourceDatabasePopulator();
        resourceDatabasePopulator.addScripts(resources);
        resourceDatabasePopulator.execute(dataSource);
        log.info("数据初始化结束: " + DateUtil.dateToString(new Date(),"yyyy-MM-dd HH:mm:ss"));
    }
}

常见问题03:SpringBoot项目启动初始化数据(执行sql文件),一、Java,六、架构,九、工作及问题,spring boot,sql,java文章来源地址https://www.toymoban.com/news/detail-640409.html

到了这里,关于常见问题03:SpringBoot项目启动初始化数据(执行sql文件)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PHPStudy(小皮)安装启动常见问题

    AH00526: Syntax error on line 5 of D:/Network Security/phpstudy_pro/Extensions/Apache2.4.39/conf/vhosts/0localhost_80.conf: Wrapper D:/Network cannot be accessed: (720002)xcfxb5xcdxb3xd5xd2xb2xbbxb5xbdxd6xb8xb6xa8xb5xc4xcexc4xbcxfexa1xa3 路径中存在空格,比如上述路径中\\\"Network Security\\\"。 方法一 修改路径 先将phps

    2024年02月11日
    浏览(51)
  • 常见PXE启动芯片出错问题归类

    一、初始化/引导/载入Bootstrap错误代码: PXE-E00: Could not find enough free base memory. PXE主代码和UNDI运行时模块从闪存或上位内存拷贝至基本内存顶部480K(78000h)至640K(A0000h)的剩余空间位置,这段内存必须被系统BIOS填零,如果这些内存没有填零,PXE ROM里的重布置代码将认为这些内存已

    2024年02月12日
    浏览(98)
  • Flink本地集群部署启动&常见问题的解决方法

    [zhangflink@9wmwtivvjuibcd2e software]$ vim flink/conf/flink-conf.yaml [zhangflink@9wmwtivvjuibcd2e software]$ vim flink/conf/workers [zhangflink@9wmwtivvjuibcd2e software]$ xsync flink/conf/ 启动集群在jobmanager那台机器启动 [zhangflink@9wmwtivvjuibcd2e-0001 flink]$ bin/start-cluster.sh 启动成功jobmanager会出现如下进程 启动成功taskm

    2024年02月02日
    浏览(53)
  • SpringBoot常见问题

    告诉idea,这是一个maven项目 1.如果右侧有Maven选项,刷新一下 2.项目右键,添加Maven框架支持 注意事项:创建项目时,右下角会弹窗:load maven project 尽量下载,如果实在下不下来,就直接删掉 使用的是jdk17 springboot超过3.X 默认使用jdk17 修改jdk版本 一共三个地方 ----------------

    2024年02月06日
    浏览(46)
  • Zookeeper启动报错常见问题以及常用zk命令

    Zk常规启动的命令如下 启动过程如果存在失败,是没办法直接看出什么问题,只会报出来 Starting zookeeper … FAILED TO START 可以用如下命令启动,便于查看zk启动过程中的详细错误  Invaild config, exiting abnormally 需要检查zoo.cfg配置文件 使用client port端口是否被占用或者未配置 #找到

    2024年01月17日
    浏览(42)
  • Stable Diffusion web UI 安装、启动脚本、常见问题、插件(linux)

    Stable Diffusion本身是一个模型,对于大多数想试试的人来说,使用这个web ui版本最合适 建议先看完再动手,虽然不难但是有门槛(主要要解决网络问题),如果深入需要会python 如果只是想试试的,建议直接下载别人打好的包,自己搭建确实很麻烦 2023.12.4更新教程 1.6.1版本,

    2024年02月13日
    浏览(45)
  • Stable Diffusion web UI 脚本安装、启动脚本、常见问题(linux)

    Stable Diffusion本身是一个模型,对于大多数想试试的人来说,使用这个web ui版本最合适 建议先看完再动手,虽然不难但是有门槛(主要要解决网络问题),如果深入需要会python 如果只是想试试的,建议直接下载别人打好的包,自己搭建确实很麻烦 2023.12.4更新教程 1.6.1版本,

    2024年02月13日
    浏览(46)
  • 项目经理岗面试常见问题

    一、注意事项   ·电面邀约确认(避免hr刷KPI): 请问贵司招聘的是什么岗位,是新建团队还是原有团队? 这边面试流程是怎样的,是 leader 直接面,还是?   ·面试前铺垫: 如果您对某部分感兴趣,请随时打断我。   ·面试中发挥: 尽量采用 STAR 原则回答,即 情境( Si

    2024年02月05日
    浏览(47)
  • SpringBoot —— 整合RabbitMQ常见问题及解决方案

    企业中最常用的消息中间件既不是RocketMQ,也不是Kafka,而是RabbitMQ。 RocketMQ很强大,但主要是阿里推广自己的云产品而开源出来的一款消息队列,其实中小企业用RocketMQ的没有想象中那么多。 至于Kafka,主要还是用在大数据和日志采集方面,除了一些公司有特定的需求会使用

    2023年04月12日
    浏览(90)
  • 面试前端常见项目问题回答参考

    目录 问题一:描述一个你在前端项目中遇到的挑战,并说明你是如何解决。 问题二:如何保证前端项目代码质量和可维护性? 问题三:如何进行跨浏览器测试,确保一致的用户体验? 问题四:请描述你在前端项目中进行性能优化的经验。 问题五:请描述一个你在前端项目

    2024年04月14日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包