SpringBoot中配置起動時的資料庫初始化指令碼

2022-08-15 02:09:23 字數 2571 閱讀 8778

連線字串

spring:

datasource:

platform: mysql

url: jdbc:mysql://localhost:3306/gov_admin?useunicode=true&characterencoding=utf-8

username: root

password: 111111

driver-class-name: com.mysql.jdbc.driver

sql-script-encoding: utf-8

schema: classpath:schema.sql

data: classpath:data.sql

continue-on-error: true

initialization-mode: always

type: com.alibaba.druid.pool.druiddatasource

spring.datasource.schema=classpath:schema.sql

spring.datasource.data=classpath:data.sql

spring.datasource.sql-script-encoding=utf-8

spring.datasource.initialization-mode=always

因為springboot在啟動時,只有檢測到spring.datasource.initialization-mode=always配置,後再檢測spring.datasource.schema之後,且配置的sql角本命令不為空,才會去執行schema和spring.datasource.data。因此需要在scheme.sql中隨便寫一句sql語句

-- 系統組織表

create table if not exists `organization` (

`id` bigint(20) not null auto_increment,

`address` varchar(255) default null,

`coords` varchar(255) default null,

`email` varchar(255) default null,

`fax` varchar(255) default null,

`key_values` varchar(255) default null,

`level` int(11) default null,

`name` varchar(255) default null,

`org_code` varchar(255) default null,

`parent_id` bigint(20) default null,

`phone_number` varchar(255) default null,

`pinyin` varchar(255) default null,

`region_id` bigint(20) default null,

`sort` int(11) default null,

primary key (`id`)

) engine=innodb default charset=utf8;

-- 初始化系統組織

insert ignore into `organization` (`id`, `org_code`, `name`, `pinyin`, `parent_id`, `phone_number`, `fax`, `level`, `sort`, `region_id`, `address`, `key_values`) values

('1', 'ce6019d8', '系統組織', null, '0', null, null, '1', '1', null, null, '{}');

-- 初始化系統管理員角色

insert ignore into `sys_role` (`id`, `name`, `type`, `value`, `organization_id`) values

('1', '管理員', '0', null, '1');

-- 初始化系統選單資料

insert ignore into `sys_resource` (`id`, `description`, `icon`, `name`, `parent_id`, `res`, `sort`, `type`, `levels`,`organization_id`, `visible`) values

('1', '使用者', 'glyphicon glyphicon-user icon', '使用者', null, null, '1', '0', '1', '1', '1'),

('5', '日誌', 'glyphicon glyphicon-edit icon', '日誌', null, null, '8', '0', '1', '1', '1'),

('8', '設定', 'icon icon-settings icon', '設定', null, null, '10', '0', '1', '1', '1'),

SpringBoot中配置起動時的資料庫初始化角本

一 簡介 下面,我們將使用springboot2.0.4release版本做實驗 連線字串角配置 連線字串 spring.datasource.driver class name com.mysql.jdbc.driver spring.datasource.url jdbc mysql 172.1...

在SpringBoot中配置aop

aop作為spring的乙個強大的功能經常被使用,aop的應用場景有很多,但是實際的應用還是需要根據實際的業務來進行實現。這裡就以列印日誌作為例子,在springboot中配置aop 已經加入我的github模版中 經過那麼長時間的過程,我們也慢慢體會到,在spingboot專案中新增元素是非常方便...

SpringBoot中的預設配置

enableautoconfiguration會開啟springboot的自動配置,並且根據引入的依賴來生效對應的預設配置,那麼問題來了 webmvcautoconfiguration類中獲取配置類中的字首字尾,來獲取屬性 configuration type type.servlet condit...