springboot项目启动-自动创建数据表
很多时候,我们部署一个项目的时候,需要创建大量的数据表。例如mysql,一般的方法就是通过source
命令完成数据表的移植,如:source /root/test.sql
。如果我们需要一个项目启动后,就自动创建所需要的数据表,那么除了可以使用代码完成之外,还可以使用下面的方法。springboot的yml文件配置如下:
server:
port: 9137
tomcat:
uri-encoding: UTF-8
max-threads: 100 #最大并发数
max-connections: 200 #最大连接数
accepCount: 50 #等待数
spring:
profiles:
active: dev #切换开发环境和测试环境,dev为开发环境,prod为测试环境
application:
name: vslm
zipkin:
base-url: http://localhost:9917/
sleuth:
sampler:
probability: 1.0 #2.0后percentage改为probability
boot:
admin:
client:
enabled: true
url: "http://localhost:9905" #指定hi-admin 服务端地址
password: "admin"
username: "admin"
instance:
prefer-ip: true
datasource:
url: jdbc:mysql://localhost:3306/vslm?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=UTC&useSSL=false
driverClassName: com.mysql.jdbc.Driver
username: root
password: 123456
#项目启动后执行建表语句
schema:
- classpath:sql/vslm.sql
sql-script-encoding: utf-8
platform: mysql
initialization-mode: always
druid:
#监控统计拦截的filters
filters: stat
#配置初始化大小/最小/最大
initial-size: 1
min-idle: 1
max-active: 20
#获取连接等待超时时间
max-wait: 60000
#间隔多久进行一次检测,检测需要关闭的空闲连接
time-between-eviction-runs-millis: 60000
#一个连接在池中最小生存的时间
min-evictable-idle-time-millis: 300000
validation-query: SELECT 'x'
test-while-idle: true
test-on-borrow: false
test-on-return: false
#打开PSCache,并指定每个连接上PSCache的大小。oracle设为true,mysql设为false。分库分表较多推荐设置为false
pool-prepared-statements: false
max-pool-prepared-statement-per-connection-size: 20
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.hierway.vslm.domain # 注意:对应实体类的路径
management:
endpoints:
web:
exposure:
include: "*" #暴露所有的端点我们可以看到更多的服务实例相关信息,
endpoint:
shutdown:
enabled: true
sensitive: false
health:
show-details: ALWAYS #health endpoint是否必须显示全部细节
dataacess:
data-access-type: 0 # 0: 使用mybatis1: 使用data service
dataservice:
base-url: http://localhost:9763/services/reqm_dataservice
rest-client:
pool-size: 200
default-max-per-route: 100
connection-timeout: 5000
connection-request-timeout: 1000
socket-timeout: 65000
validate-after-inactivity: 2000
eureka:
instance:
lease-expiration-duration-in-seconds: 30
lease-renewal-interval-in-seconds: 10
prefer-ip-address: true
client:
registerWithEureka: true
fetchRegistry: true
#eureka服务端的地址
serviceUrl:
defaultZone: http://admin:admin@10.10.10.3:9909/eureka/
然后在resource下创建文件夹sql(自定义)以及vslm.sql文件,键入数据定义语言DDL(Data Definition Language)。当项目启动后,发现会自动创建数据表。
springboot项目启动-自动创建数据表的更多相关文章
- SpringBoot+Mybatis 自动创建数据表(适用mysql)
Mybatis用了快两年了,在我手上的发展史大概是这样的 第一个阶段 利用Mybatis-Generator自动生成实体类.DAO接口和Mapping映射文件.那时候觉得这个特别好用,大概的过程是这样 ...
- A.CTable 自动创建数据表
1.添加依赖 <!-- A.CTable 自动创建数据表 --> <dependency> <groupId>com.gitee.sunchenbin.mybati ...
- 【spring boot】spring boot 2.0 项目中使用mysql驱动启动创建的mysql数据表,引擎是MyISAM,如何修改启动时创建数据表引擎为【spring boot 2.0】
默认创建数据表使用的引擎是MyISAM 2018-05-14 14:16:37.283 INFO 7328 --- [ restartedMain] org.hibernate.dialect.Dia ...
- 学习笔记之--Navicat Premium创建数据表
1.打开Navicat Premium,点击连接,选择MySQL,创建新连接.输入安装MySQL是的用户名和密码.点击确定. 2.admin数据连接已经创建成功.下面为admin新建数据库,输入数据库 ...
- SpringBoot使用Hibernate,实现自动创建数据库表【博客数据库设计】
我们准备设计博客,那就要设计数据库. 我们可以使用Hibernate来自动生成数据库. 博客数据库的结构: 实体类: 博客 Blog 博客分类 Type 博客标签 Tag 博客评论 Comment 用 ...
- 关于springboot项目中自动注入,但是用的时候值为空的BUG
最近想做一些web项目来填充下业余时间,首先想到了使用springboot框架,毕竟方便 快捷 首先:去这里 http://start.spring.io/ 直接构建了一个springboot初始化的 ...
- hibernate中.hbm.xml和注解方式自动生成数据表的简单实例(由新手小白编写,仅适用新手小白)
绝逼新手小白,so 请大神指点! 如果真的错的太多,错的太离谱,错的误导了其他小伙伴,还望大神请勿喷,大神请担待,大神请高抬贵嘴......谢谢. 好了,正题 刚接触ssh,今天在搞使用.hbm.xm ...
- springboot项目启动报错Failed to configure a DataSource: 'url' attribute is not specified and no embedde
springboot项目启动报错Failed to configure a DataSource: 'url' attribute is not specified and no embedde 创建 ...
- PL/SQL创建数据表空间
创建数据表空间create tablespace stbss datafile 'E:\oracle\product\10.2.0\oradata\orcl\stbss_temp01.dbf' siz ...
随机推荐
- Python - requests发送请求报错:UnicodeEncodeError: 'latin-1' codec can't encode characters in position 13-14: 小明 is not valid Latin-1. Use body.encode('utf-8') if you want to send it encoded in UTF-8.
背景 在做接口自动化的时候,Excel作为数据驱动,里面存了中文,通过第三方库读取中文当请求参数传入 requests.post() 里面,就会报错 UnicodeEncodeError: 'lati ...
- 快速上手 Python 命令行模块 Click
关于Click? 说下 Click 模块是干啥的,简单说,它就是把我们的 Python 脚本的一些函数,通过 添加带有 Click 关键字的装饰器进行装饰进而将函数调用的形式转化为命令行传参的形式然后 ...
- 登录页面判断session退出登录清空session
1 2 3 4 5 6 if(empty($_POST)){ $_SESSION = array(); if(isset($_COOKIE[session_name()])){ ...
- 痞子衡嵌入式:恩智浦SDK驱动代码风格、模板、检查工具
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是恩智浦 SDK 驱动的代码风格. 上周痞子衡受领导指示,给 SE 同事做了一个关于 SDK 代码风格的分享.随着组内新人的增多,这样的培训 ...
- CSS 文本截断方案
单行截断 .ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } 此方法兼容到ie6过.不过只能单行 ...
- 原生的ajax,get post请求需要注意的地方
1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.o ...
- 群辉DS418play体验+经验分享
群辉DS418play体验+经验分享 群辉DS418play体验+经验分享 购买初衷 近期百度网盘到期,我又需要重复下载很多资源(游戏.电影.毛片),下载没速度&下完没空间怎么办? ...
- 计算广告中的CPM和eCPM
计算广告中的CPM和eCPM CPM和eCPM分别是什么? CPM(Cost per Mille ) : 千次展示付费.是针对广告主说的,你要花多少钱,购买一千次广告展示的机会.类似的还有CPC (C ...
- sql 语句系列(多表之链)[八百章之第三章]
新增连接查询而不影响其他连接查询 请看图: 这种情况我们一般会使用左连接的方式. select e.ENAME,d.LOC,eb.RECEIVED from emp e join dept d on( ...
- 欲善事先利器-IEAD插件篇
工欲善其事,必先利其器,好鞋踢好球是非常合乎逻辑的事情. --<长江七号> 同样的开场白,不一样的酒,不一样的故事. 上篇<欲善事先利器--系统篇>已经推荐了一些个人常用的效率 ...