天道酬勤,学无止境

自动创建数据库 springboot 和 mysql(Auto database creation springboot and mysql)

问题

我正在尝试在应用程序启动时创建 mysql 数据库。 我尝试了以下配置,但无法实现,如果有人对此有想法,请告诉我,

spring.jpa.hibernate.ddl-auto=none
spring.datasource.initialization-mode=always
spring.jpa.properties.hibernate.globally_quoted_identifiers=true
回答1

如果您正在寻找创建数据库(如果不存在),那么您可以在数据库配置文件中使用下面的内容。

jdbc:mysql://localhost:3306/dbname?createDatabaseIfNotExist=true

否则,请确保您的应用程序属性文件中有以下属性。

spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.hibernate.ddl-auto=update
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/dbname
spring.datasource.username=username
spring.datasource.password=password
回答2

您应该使用实际创建架构的值设置属性,例如:

spring.jpa.hibernate.ddl-auto=create-drop

您可以在此处找到更详细的参考。

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • 无法启动Spring以自动创建数据库架构(Unable to get spring boot to automatically create database schema)
    问题 我无法启动启动时自动启动数据库架构的Spring Boot。 这是我的application.properties: spring.datasource.url=jdbc:mysql://localhost:3306/test spring.datasource.username=test spring.datasource.password= spring.datasource.driverClassName = com.mysql.jdbc.Driver spring.jpa.database = MYSQL spring.jpa.show-sql = true spring.jpa.hibernate.ddl-auto = create spring.jpa.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect spring.jpa.hibernate.naming_strategy = org.hibernate.cfg.ImprovedNamingStrategy 这是我的Application.java: @EnableAutoConfiguration @ComponentScan public class Application { public static void main(final
  • springboot+mybatis/mybatis-plus根据实体类自动创建数据库表
    1、导入依赖 <!--mybatisplus启动器--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.3.2</version> </dependency> <!--创建表的插件--> <dependency> <groupId>com.gitee.sunchenbin.mybatis.actable</groupId> <artifactId>mybatis-enhance-actable</artifactId> <version>1.1.1.RELEASE</version> </dependency> <!--druid数据源--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.21</version> </dependency> 2、application.yml配置文件 #数据库配置 spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306
  • Spring Boot整合H2内存数据库配置及常见问题处理
    文章目录 H2 数据库简介内存数据库配置与控制台连接在内存中创建表以及插入数据SpringBoot整合H2内存数据查询常见问题及解决问题1: Database "mem:XXX" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-200] 90149/90149问题2: 初始化的表没有建立问题3: 添加实体类后,内存表中的记录没有了 示例代码地址 在Spring Boot项目中使用H2数据库,可以不需要安装独立的数据库程序,仅需要导入一个.jar 文件。数据库的数据可以保存在文件中,也可以通过的创建表和插入数据的SQL语句直接存放在内存中,这对于演示或是示例程序是非常便捷的。 H2 数据库简介 H2是一个开源的数据库,其使用Java语言开发,可以像MySQL、Oracle那样独立运行,也可以嵌入项目中使用。 所谓嵌入使用,就是不需要单独安装,只需要导入一个jar文件就可以。 使用H2数据库, 数据库的记录可以保存在文件中,也可以直接保存在内存中。对于演示或是教学项目使用内存数据库很方便,不需要独立安装数据库,只需要提供创建表和插入数据的.sql文件就可以。 Spring Boot对H2提供了很好的支持
  • 【Spring全家桶系列超全整理之SpringBoot框架】5 SpringBoot数据访问原理
    本文介绍SpringBoot相关内容。和【跨考菌】一起加油吧~ 如果你有收获,记得帮博主一键三连哦😊 1 简介 2 整合JDBC和数据源 mysql:数据库驱动 jdbc:帮我们自动配置数据源 mybatis:帮助我们方便的操作数据库 2.1 引入stater <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring‐boot‐starter‐jdbc</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql‐connector‐java</artifactId> <scope>runtime</scope> </dependency> 2.2 配置文件 spring: datasource: username: root password: 123456 url: jdbc:mysql://192.168.15.22:3306/jdbc driver‐class‐name: com.mysql.jdbc.Driver 效果: 默认是用org.apache.tomcat.jdbc.pool.DataSource作为数据源
  • SpringBoot:3.SpringBoot使用Spring-data-jpa实现数据库访问
    做Web开发,首先要能将数据渲染到网页中展示,其次是要获取数据库数据展示到视图层,在前面的文章SpringBoot整合Thymeleaf模板引擎渲染web视图,我们实现了从后端数据展示到视图层,那么下面我们通过使用Spring Data Jpa来实现简单的数据库增删改查功能。 1.pom.xml中引入依赖的jar包 <!--Web开发依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--junit测试依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!--jpa依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <!--
  • 【SpringBoot 02】SpringBoot整合常用框架Junit5、MyBatis、hikari、JPA、redis、Lombok的使用
    文章目录 SpringBoot集成Junit5SpringBoot集成MyBatisSpringBoot集成hikarihikari数据库连接池hikari的配置属性 SpringBoot集成JPAJPA的注解集成JPA生成数据库表步骤 Lombok的使用Idea安装Lombok插件,开启注解开启Lombok的注解支持 Lombok的注解Lombok的使用需要加入依赖 SpringBoot集成redisRedisTemplate介绍redisTemplate.boundValueOps()方法介绍 Redis配置属性参数 SpringBoot集成Junit5 SpringBoot默认集成Junit5,可以直接使用。通过在单元测试类上添加注解 @SpringBootTest 然后在方法方法上添加注解 Test 来实现单元测试。 测试类 @SpringBootTest class Demo01JunitApplicationTests { @Autowired IPersonService personService; @Test public void testPerson() { //new PersonServiceImpl().savePerson(); personService.savePerson(); } } service接口和对应的实现类 public
  • Auto database creation springboot and mysql
    I am trying create mysql database when application starts up. I have tried with bellow configuration but could not able to achieve, Please let me know if anybody have idea about this, spring.jpa.hibernate.ddl-auto=none spring.datasource.initialization-mode=always spring.jpa.properties.hibernate.globally_quoted_identifiers=true
  • SpringBoot自学好几天 中途开始写笔记 SpringBoot数据访问 Spring JPA 20190222
    一、 Spring Data1. SpringData特点 SpringData 为我们提供使用统一的API来对数据访问层进行操作;这主要是Spring Data Commons 项目来实现 SpringData Commons让我们在使用关系型数据库或者非关系型数据库访问技术时都基于Spring提供的统一标准,标准包含了CRUD(创建、获取、更新、删除)、查询、排序和分页的相关操作2. SpringData 统一的Repository3. SpringData 提供数据访问模板类xxxTememplate 例如:MongoTemplete RedisTemplete 等4. JPA与Spring Data有了Spring Data 我们就面向Soring Data编程了Spring JPA 是关系型数据库java持久化APIhttps://download.csdn.net/download/qq_36291682/10969562二、整合JPA 操作数据库创建项目pom.xml<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><dependency><groupId>org
  • SPRINGBOOT中如何运用JPA,简单例子
    SPRINGBOOT中如何运用JPA,简单例子 步骤 1 : JPA概念顶折 JPA(Java Persistence API)是Sun官方提出的Java持久化规范,用来方便大家操作数据库。 真正干活的可能是Hibernate,TopLink等等实现了JPA规范的不同厂商,默认是Hibernate。 本知识演示如何在Springboot中快捷方便地使用JPA。 步骤 2 : 创建数据库顶折 创建数据库,名称是 how2java create database how2java; 步骤 3 : 创建表顶折 创建个分类表,字段很简单,就id和name use how2java; CREATE TABLE category_ ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(30), PRIMARY KEY (id) ) DEFAULT CHARSET=UTF8; 步骤 4 : 准备数据顶折 插入4条数据 insert into category_ values(null,‘category 1’); insert into category_ values(null,‘category 2’); insert into category_ values(null,‘category 3’); insert into category_
  • Springboot登录会话过期,重定向到登录界面
    Springboot实现登录过期,重定向到登录页面 集成spring session 很多时候我们网站都会需要登录和验证. 试想: 如果我登录了网站后, 有事离开了电脑60分钟; 在这段时间内, 如果有人使用我的电脑, 那么我的账号是十分危险的. 因此需要一个浏览器与服务器之间的会话, 在没有一定时间内没有交互的话, 就让这次登陆状态过期, 如果过期后, 在页面上点击, 让它跳转回登陆页面. 这个会话就叫做session. spring支持很多种类的session. 如 Jdbc session, Redis session, MongoDB session 它们的原理都是将 会话信息: 会话id, 会话创建时间会话失效时间等 存在数据库 下面我会使用Spring Jdbc Session 来作为我的例子 添加jdbc session 依赖 <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-jdbc</artifactId> </dependency> 在application.properties里配置session 和 数据源 # 设置使用jdbc的方式存储session spring.session.store-type=jdbc # session
  • springboot入门
    一、SpringBoot简介 1.1 原有Spring优缺点分析 1.1.1 Spring的优点分析 Spring是Java企业版(Java Enterprise Edition,JEE,也称J2EE)的轻量级代替品。无需开发重量级的Enterprise JavaBean(EJB),Spring为企业级Java开发提供了一种相对简单的方法,通过依赖注入和面向切面编程,用简单 的Java对象(Plain Old Java Object,POJO)实现了EJB的功能。 1.1.2 Spring的缺点分析 虽然Spring的组件代码是轻量级的,但它的配置却是重量级的。一开始,Spring用XML配置,而且是很多XML配 置。Spring 2.5引入了基于注解的组件扫描,这消除了大量针对应用程序自身组件的显式XML配置。Spring 3.0引入 了基于Java的配置,这是一种类型安全的可重构配置方式,可以代替XML。 所有这些配置都代表了开发时的损耗。因为在思考Spring特性配置和解决业务问题之间需要进行思维切换,所以编 写配置挤占了编写应用程序逻辑的时间。和所有框架一样,Spring实用,但与此同时它要求的回报也不少。 除此之外,项目的依赖管理也是一件耗时耗力的事情。在环境搭建时,需要分析要导入哪些库的坐标,而且还需要 分析导入与之有依赖关系的其他库的坐标,一旦选错了依赖的版本
  • Java系统学习,最全路线。全面系统学习Java
    第一阶段 JavaSE Java编程语言概述Java基础语法Java数组计算机语言介绍流程控制语句的介绍static 修饰符Java语言的前世今生Java 编译器执行流程通类的成员之代码块Java技术体系平台if 分支结构静态代码块与非静态代码块Java核心机制与JVM运行原理switch 选择结构与相关规则单例 (Singleton) 设计模式搭建 Java开发环境循环结构final 修饰符JDK 的安装与配置for 循环包 (package) 的管理与作用开发第一个Java 应用程序while 循环DOS 命令行下编译器操作Java Code Styleswitch 选择结构与相关规则使用 jar 命令打包应用程序变量的声明与使用do-while 循环语句数组的创建与使用变量内存空间分配与原理各语句性能对比与应用场景数组的默认初始化与内存分析进制与位运算特殊流程控制语句数组的常见算法分析变量的数据类型方法的声明与使用操作数组的工具类 Arrays数据类型之间的转换方法调用的过程分析命令行参数变量的运算与底层运算原理跨类调用方法可变参数参数的值传递方法的重载 Overload 面向对象编程高级类特性Java API面向对象和面向过程的理解抽象类 (abstract) 实际应用举例Wrapper 包装类类和对象的理解接口(interface)
  • springboot2.3 整合mybatis-plus 高级功能
    springboot2.3 整合mybatis-plus 高级功能 —学习并使用mybatis-plus的一些高级功能的用法例如: AR模式、 乐观锁 、逻辑删除 、自动填充、数据保护等功能 为了方便演示,咱们还是新建一个全新的项目 引入mp依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.3.2</version> </dependency> yml配置 # 配置端口 server: port: 8080 spring: # 配置数据源 datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/mybatis-plus?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8 username: root password: root # mybatis-plus相关配置 mybatis-plus: # 以下配置均有默认值,可以不设置 global-config: db-config: #主键类型 auto:"数据库ID自增" id
  • springboot项目整合hibernate
    本文内容 最近找实习时发现很多公司要求掌握hibernate,所以我打算了解一下hibernate,了解后发现hibernate与我之前使用的Mybatis作用差不多,都是对数据库进行操作,所以我打算用hibernate实现一下基本的数据库增删改查操作。 自己怕忘记写个博客记录一下,在学习时参考了:快速整合hibernate这篇博客,在此表示感谢 使用感想 使用hibernate时不用自己建数据库,在mybatis中要建数据库的表结构再写代码。而hibernate是先写代码,自动生成表结构感觉便捷很多。hibernate的增删改查全部已经直接写好,只需要继承后使用,感觉好方便。 实现过程 1. pom.xml添加内容 <!-- 数据库部分 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> </dependencies> 2. application添加内容 #mysql spring
  • SpringBoot基础篇入坑-1
    文章目录 1. SpringBoot简介1.1 原有Spring的优缺点分析1.1.1 Spring的优点1.1.2 Spring的缺点 1.2 SpringBoot的核心功能1.3 SpringBoot的概述1.3.1 SpringBoot解决上述Spring的缺点1.3.2 SpringBoot的特点 2. SpringBoot快速入门2.1 代码实现(四步搞定)2.1.1 创建Maven工程,不用选择骨架创建2.1.2 添加SpringBoot起步依赖2.1.3 编写SpringBoot引导类2.1.4 编写Controller类 2.2 SpringBoot工程热部署2.3 使用IDEA快速创建SpringBoot项目 3. SpringBoot原理分析(深入源码)3.1 起步依赖原理分析3.1.1 spring-boot-starter-parent分析3.1.2 spring-boot-starter-web分析3.2 自动配置原理分析 4. SpringBoot配置文件4.1 SpringBoot配置文件类型4.1.1 SpringBoot配置文件类型和作用4.1.2 application.yml配置文件4.1.2.1 yml配置文件简介4.1.2.2 yml配置文件的语法4.1.2.2.1 普通字符串数据4.1.2.2.2 对象数据4.1.2.2.3 Map数据4
  • 超详细SpringBoot基础(复习)
    SpringBoot基础(复习) 一、SpringBoot简介 1.1 原有Spring优缺点分析 1.1.1 Spring的优点分析 Spring是Java企业版(Java Enterprise Edition,JEE,也称J2EE)的轻量级代替品。无需开发重量级的Enterprise JavaBean(EJB),Spring为企业级Java开发提供了一种相对简单的方法,通过依赖注入和面向切面编程,用简单的Java对象(Plain Old Java Object,POJO)实现了EJB的功能。 1.1.2 Spring的缺点分析 虽然Spring的组件代码是轻量级的,但它的配置却是重量级的。一开始,Spring用XML配置,而且是很多XML配置。Spring 2.5引入了基于注解的组件扫描,这消除了大量针对应用程序自身组件的显式XML配置。Spring 3.0引入了基于Java的配置,这是一种类型安全的可重构配置方式,可以代替XML。 所有这些配置都代表了开发时的损耗。因为在思考Spring特性配置和解决业务问题之间需要进行思维切换,所以编写配置挤占了编写应用程序逻辑的时间。和所有框架一样,Spring实用,但与此同时它要求的回报也不少。 除此之外,项目的依赖管理也是一件耗时耗力的事情。在环境搭建时,需要分析要导入哪些库的坐标,而且还需要分析导入与之有依赖关系的其他库的坐标
  • SpringBoot+mybatis+Druid 实现运行时数据源的动态创建管理
    参考文章:https://www.cnblogs.com/tswhq/p/11668078.html 话不多说,直入正题: 我这里是为了实现一个业务场景。Spring如何配置多数据源并整合Druid的方式网上已经一大片了。 但是那种方式适应场景是采用主从模式的数据库。 (做法)我们需要事先在配置文件配置好服务需要用到的多个数据源信息,并创建自定义注解,这里注解一般声明在Service层的方法上较为合理。然后不同的Service根据注解的value属性区分方法所用到的数据源 这里,我实现的是在项目运行时,根据参数传递或其他途径获取到数据库连接配置信息,进行动态的连接创建,切换,和销毁 pom依赖: <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.15</version> </dependency> <!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter -->
  • SpringBoot整合MyBatis框架快速入门
    MyBatis概述: mybatis是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statemenet等繁杂的过程。 在当今的互联网应用中项目,mybatis框架通常会由spring框架进行资源整合,作为数据层技术实现数据交互操作。 准备工作 1. 创建一个Spring Starter Project工程 2. 添加依赖 3. 修改版本 4. 创建后的工程项目结构 5.添加Maven依赖 <!-- 添加mybatis starter依赖(SpringBoot 工程下提供了mybatis的自动配置) --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.3</version> </dependency> 6.mysql表 复制下面内容,创建数据库和数据表: CREATE DATABASE db_user; use db_user; DROP TABLE IF EXISTS `emp`; CREATE TABLE `emp` ( `id` int(11) NOT NULL AUTO
  • SpringBoot持久层使用JPA开发简单例子
    步骤 1 : JPA概念JPA(Java Persistence API)是Sun官方提出的Java持久化规范,用来方便大家操作数据库。 真正干活的可能是Hibernate,TopLink等等实现了JPA规范的不同厂商,默认是Hibernate。 本知识演示如何在Springboot中快捷方便地使用JPA。步骤 2 : 创建数据库创建数据库,名称是 how2javacreate database how2java;步骤 3 : 创建表创建个分类表,字段很简单,就id和nameuse how2java;CREATE TABLE category_ ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(30), PRIMARY KEY (id)) DEFAULT CHARSET=UTF8;步骤 4 : 准备数据插入4条数据insert into category_ values(null,'category 1');insert into category_ values(null,'category 2');insert into category_ values(null,'category 3');insert into category_ values(null,'category 4');步骤 5 : 先运行,看到效果
  • jpa配置之ddl-auto属性
    jpa配置之ddl-auto属性 前言1、ddl-auto属性类别2、update自动创建表-举例2.1Admin实体类2.2、application.properties2.3、pom.xml依赖2.4、启动SpringBoot启动类 前言 提示:本文章是日常学习内容的总结,并非全部原创;仅供大家参考借鉴,并无其他商业用途。 1、ddl-auto属性类别 在jpa中,ddl-auto共分为四种: spring.jpa.hibernate.ddl-auto = create ----每次启动SpringBoot程序时,没有表会新建表格,表内有数据会清空; spring.jpa.hibernate.ddl-auto = create-drop ----每次启动SpringBoot程序时,会清空表数据; spring.jpa.hibernate.ddl-auto = update ---- 每次启动SpringBoot程序时,没有表格会新建表格,表内有数据不会清空,只会更新; spring.jpa.hibernate.ddl-auto = validate ---- 每次启动SpringBoot程序时,会校验实体类字段与数据库字段的类型是否相同,不同则会报错; 2、update自动创建表-举例 创建实体类Admin,启动SpringBoot后。 发现数据库根据Admin实体类