springboot项目启动-自动创建数据表

匿名 (未验证) 提交于 2019-12-02 23:49:02

很多时候,我们部署一个项目的时候,需要创建大量的数据表。例如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)。当项目启动后,发现会自动创建数据表。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!