一些springboot小技巧、小知识点 初始化数据 我们在做测试的时候经常需要初始化导入一些数据,如何来处理呢?会有两种选择,一种是使用Jpa,另外一种是Spring JDBC。...使用Jpa 在使用 spring boot jpa的情况下设置 spring.jpa.hibernate.ddl-auto的属性设置为 create or create-drop的时候,spring boot...使用Spring JDBC 使用Spring JDBC 需要在配置文件中添加以下配置 spring: datasource: schema: database/data.sql...boot项目启动的时候会自动执行脚本。...不同点 第一种方式启动的时候Jpa会自动创建表,import.sql只负责创建表单后的初始化数据。第二种方式启动的时候不会创建表,需要在初始化脚本中判断表是否存在,再初始化脚本的步骤。
一些 Spring Boot 小技巧、小知识点 初始化数据 我们在做测试的时候经常需要初始化导入一些数据,如何来处理呢?会有两种选择,一种是使用 Jpa,另外一种是 Spring JDBC 。...Boot 启动时默认会扫描 classpath 下面(项目中一般是 resources 目录)是否有 import.sql,如果有机会执行 import.sql脚本。...使用 Spring JDBC 使用 Spring JDBC 需要在配置文件中添加以下配置 spring: datasource: schema: classpath:db/schema.sql...Boot 项目启动的时候会自动执行脚本。...不同点 第一种方式启动的时候 Jpa 会自动创建表,import.sql 只负责创建表单后的初始化数据。第二种方式启动的时候不会创建表,需要在初始化脚本中判断表是否存在,再初始化脚本的步骤。
文件导入初始化数据; 为update时,则执行的是 data.sql logging: level: root: info org: springframework:...: create,则再资源目录下,新建import.sql文件,来实现数据初始化 3....小结 使用Jpa的配置方式,总体来说和前面的介绍的spring.datasource的配置方式差别不大,jpa方式主要是基于@Entity来创建对应的表结构,且不会出现再次启动之后重复建表导致异常的问题.../create-drop 这两个取值时,再创建表之后执行import.sql文件导入测试数据;若取值为update,则会执行data.sql 本文作为数据初始化第二篇,推荐与前文对比阅读,收获更多的知识点.../master/spring-boot/161-schema-init
第一种方法是使用Hibernate提供的工具来创建表结构,该机制会自动搜索@Entity实体对象并创建对应的表,然后使用import.sql文件导入测试数据;第二种方法是利用旧的Spring JDBC,...通过schema.sql文件定义数据库的表结构、通过data.sql导入测试数据。...Note:个人建议是使用Hibernate的自动创建机制,当然这会少一点可定制性;最近更流行的是Mybatis,mybatis-spring-boot也可以使用,mybatis的可定制性更强。...data.sql的作用跟上一个方法的import.sql一样,用于存放数据导入的SQL语句。 考虑到这是Spring的特性,我们可以不只是全局定义数据库定义文件,还可以针对不同的数据库定义不同的文件。...如果你希望覆盖Spring Boot的自动推断,可以配置spring.datasource.platform属性。
关键字:商城系统 (后台、H5、手机端、微信小程序) linjiashop 是一个基于Spring Boot和Vue.js的web商城系统;包含了商城的后台管理系统,手机h5,小程序版本; 同时包含了app...eclipse;确保开发工具下载并安装了lombok插件,另外由于lombok有版本差异,如果出现问题,可以更新maven以来中lombok的版本来解决; 3、创建数据库:linjiashop 4、项目测试数据的图片...启动后台管理 1、启动后台管理api服务:linjiashop-admin-api/ 2、修改linjiashop-admin-api中数据库连接配置 注意: 首次启动需要设置下列配置项设置为create,spring.jpa.hibernate.ddl-auto...=create 以便系统可以自动创建表并导入..../import.sql测试数据文件; 如果下面配置无法自动建表并导入测试数据文件;则可以手动初始化数据库,手动使用的初始化文件文件位于:doc/database.sql 3、启动linjiashop-admin-api
--导入配置文件处理器,配置文件进行绑定就会有提示--> org.springframework.boot spring-boot-configuration-processor...Spring的配置文件,让配置文件里面的内容生效 SpringBoot里面没有Spring的配置文件,我们自己编写的配置文件,不能自动识别 想让Spring的配置文件生效,加载进来需要使用@ImportResource...标注在一个配置类(主配置类)上 //导入Spring的配置文件让其生效 @ImportResource(locations = {"classpath:beans.xml"}) @Bean:加载指定的配置文件...步骤: 系统出现4xx或者5xx之类的错误:ErrorPageCustomizer就会生效(定制错误的响应规则),就会来到/error请求;就会被BasicErrorController处理 响应页面:...:异常对象 message:异常消息 errors:JSR303数据校验的错误都在这里 没有模板引擎(模板引擎找不到这个错误页面),就会去静态资源文件夹下找 以上都没有错误页面,就是默认来到SpringBoot
URI #25768 16、ConfigData导入无法覆盖配置文件特定的导入 #25766 17、URI标记http.client.requests请求度量忽略REST模板的根URI #25765 18...#25987 7、修复文档中的拼写错误 #25947 8、在info endpoint示例中使用main作为分支名称 #25866 9、说明如何在不使用spring-boot-starter-parent...Boot应用程序时#25796 6、DefaultErrorWebExceptionHandler未删除元类型当出现质量值时 #25778 7、JVM退出时,未打包的JAR不会被删除 #25773 8...URI #25741 11、生成映像挂起配置中指定分类器时启动spring-boot:build-image #25736 12、EnvironmentAware FailureAnalyzer可能配置了错误的环境...#25621 7、修复自述文件中的拼写错误 #25597 8、突出显示参考文件中致动器API文件的链接 #25486 9、更正javadoc的ONŠPARAM以准确描述其行为 #25480 10、修复生成信息目标描述中的措辞错误
Spring Boot的自动配置给开发者带来了很大的便利,当开发人员在pom文件中添加starter依赖后,maven或者gradle会自动下载很多jar包到classpath中。...当Spring Boot检测到特定类的存在,就会针对这个应用做一定的配置,自动创建和织入需要的spring bean到程序上下文中。...在之前的文章中,我们只是在pom文件中增加各种starter的依赖,例如:spring-boot-starter-data-jpa, spring-boot-starter-web, spring-boot-starter-data-test...导入如果在pom文件中导入spring-boot-autoconfigure包,则GsonAutoConfiguration就会出现在classpath目录下,但是该配置类被@ConditionalOnClass...参考资料 Spring Boot实战:自动配置原理分析
Boot的配置类;标注在某个类上,表示这是一个Spring Boot的配置类; @Configuration: 配置类上来标注这个注解;配置类 ----- 配置文件;配置类也是容器中的一个组件;@Component...指定的值,将这些值作为自动配置类导入到容器中,自动配置类就生效,帮我们进行自动配置工作;==以前我们需要自己配置的东西,自动配置类都帮我们; J2EE的整体整合解决方案和自动配置都在spring-boot-autoconfigure...image.png 常见错误 如果出现Your ApplicationContext is unlikely to start due to a @ComponentScan of the default...package的错误, 解决方式 SpringBootApplication直接放在默认包src\main\java目录下,应该在src\main\java下建立包文件,例如src\main\java...\com\test,这样的话,代码就在com.test这个包下面了,这个错误也就不会再出现了。
随着Spring及Spring Boot的发展,基于Java的配置已经慢慢替代了基于xml的配置形式。本篇文章为大家整理和简介Spring Boot中常用的注解及其功能。...SpringBoot注解 @SpringBootApplication:开启Spring Boot自动配置的核心注解,相关等同于@Configuration,@EnableAutoConfiguration...是Spring Boot自动配置机制的核心注解之一。...Spring Boot中会扫描启动类所在包下以及子包下的使用了以上注解的类。...@ImportResource:用来导入一个传统的xml配置文件。 @Autowired:自动导入依赖的bean,可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。
的时候可以正常编译运行,但是正式上线时,需要切换到继承公司统一的插件集合 Parent POM (这里暂称为:common-plugin,该插件是为了方便执行一些持续集成编译自动化插件,例如 maven-deploy-plugin...、maven-docker-plugin 等等插件),然后问题就出现了,编译不通过,类似提示找不到类,找不到符号的错误消息。...因为一个 POM 文件中只能继承一个 Parent。当然肯定有人会说,我们可以把 spring-boot-starter-parent 依赖配置到 common-plugin 里面就可以啦!...首先这种方式是没有问题的,但是考虑到 common-plugin 作为一个公用 POM 自定义插件集合,配置后被公司所有项目组继承使用,且不说会不会出现各种 jar 版本依赖问题, 就 Spring 相关的...在修改完以上配置后,再次编译依旧卡在一个子项目的某个文件上,提示找不到类,找不到符号,错误信息类似如下: .....
/spring-boot-dependencies 管理SpringBoot应用里面所有的依赖版本,这样以后导入依赖默认不需要写版本号,可以统一管理开发版本...: springboot场景启动器 spring-boot-starter-web: 导入web模块正常运行所依赖的组件 SpringBoot将所有的功能场景都抽取出来,做成各个starter启动器,只需要在项目的...指定的值 将这些值作为自动配置类导入到容器中,自动配置类就会生效,进行配置工作。...J2EE的整体整合解决方案和自动配置都在spring-boot-autoconfigure-2.0.1.RELEASE.jar中 ---- 在SpringBoot项目中的resources文件夹: static...${app.name:默认值}来指定找不到属性值时的默认值 Profile 多Profile文件: 1.在写配置文件的时候,文件名可以是:application-{profile}.properties
而且,当前 spring boot 已经成了必备的 Java 开发框架,easyexcel 也没有进行整合。...由于 Excel 导入与导出样板式代码、校验问题与具体的业务逻辑无关,可以单独抽象出来,我这里在 EasyExcel 的基础上封装了一个 easyexcel-spring-boot-starter 的项目...Spring Boot Excel 导入与导出依赖引入首先需要引入依赖,坐标如下 com.zzuhkp easyexcel-spring-boot-starter...Excel 导入首先看下要导入的 Excel 内容吧。为了接收 Excel 文件内容,我们需要定义一个对应的 Model 类。...,使用体验如原生 spring boot 校验般顺滑。
: spring-boot-starter:spring-boot场景启动器;帮我们导入了web模块正常运行所依赖的组件; Spring Boot将所有的功能场景都抽取出来,做成一个个的starters...指定的值,将这些值作为自动配置类导入到容器中,自动配置类就生效,帮我们进行自动配置工作;==以前我们需要自己配置的东西,自动配置类都帮我们; J2EE的整体整合解决方案和自动配置都在spring-boot-autoconfigure...Spring的配置文件,让配置文件里面的内容生效; Spring Boot里面没有Spring的配置文件,我们自己编写的配置文件,也不能自动识别; 想让Spring的配置文件生效,加载进来;@ImportResource... error:错误提示 exception:异常对象 message:异常消息 errors:JSR303数据校验的错误都在这里 2)、没有模板引擎(模板引擎找不到这个错误页面...,\ 3、模式: 启动器只用来做依赖导入; 专门来写一个自动配置模块; 启动器依赖自动配置;别人只需要引入启动器(starter) mybatis-spring-boot-starter;自定义启动器名
,我们接着介绍Spring Boot 2.4.4 org.springframework.boot spring-boot-starter-parent...,ConfigurationMetadataRepository不正确 #25515 Layertools可以提取目标路径之外的条目 #25508 spring的默认fork值-启动:停止出现不一致情况...#25724 更正javadoc的ON参数,以准确描述其行为 #25603 修复自述文件中的拼写错误 #25600 文档Java 16支持 #25527 改进Mockito测试执行监听器的文档 #25513...突出显示参考文件中致动器API文件的链接 #25510 修复gradle插件文档中的属性名 #25454 修复文档中的语法错误 #25411 修复生成信息目标描述中的措辞错误 #25385 Polish...HTTP 客户端文档措辞优化 #25371 记录DataSourceBuilder支持的数据源实现 #25333 添加有关应用程序yml和属性文件优先级的注释 #25300 说明如何将Docker密码导入
app.yaml,那么我们可以在启动 jar 包的时候按照如下方式配置,此时系统会自动去上面提到的五个位置查找对应的配置文件: java -jar boot_config_file-0.0.1-SNAPSHOT.jar...如果不加这个前缀,那么当系统找不到指定的配置文件时,就会抛出 ConfigDataLocationNotFoundException 异常,进而导致应用启动失败。...导入外部配置 从 Spring Boot2.4 开始,我们也可以使用 spring.config.import 方法来导入配置文件,相比于 additional-location 配置,这个 import...导入更加灵活,可以导入任意名称的配置文件。.../dev.properties 甚至,这个 spring.config.import 还可以导入无扩展名的配置文件,例如我有一个配置文件,是 properties 格式的,但是这个这个配置文件没有扩展名
原因1: Application启动类的位置不对.要将Application类放在最外侧,即包含所有子包 原因:spring-boot会自动加载启动类所在包下及其子包下的所有组件....原因2: 在springboot的配置文件:application.yml或application.properties中关于视图解析器的配置问题: 当pom文件下的spring-boot-starter-paren...版本高时使用: spring.mvc.view.prefix/spring.mvc.view.suffix 当pom文件下的spring-boot-starter-paren版本低时使用: spring.view.prefix...而我的配置文件已经配置好了端口: 后来发现,竟然也是因为包放的位置问题,也就是上边的原因1:Application启动类的位置不对.要将Application类放在最外侧,即包含所有子包 ,原因:spring-boot...会自动加载启动类所在包下及其子包下的所有组件.
Spring Boot简介 采用约定大于配置,简化Spring开发步骤与复杂的部署流程 快速创立可独立运行的Spring项目以及集成主流框架 嵌入式Servlet容器,无需打war包 starter自动依赖与版本控制.../spring.factories中获取EnableAutoConfiguration的值(各种配置类的全限定类名),作为自动配置类导入容器中,那么自动配置类生效帮我们自动配置,其真正配置类也在这个包下...错误处理 1)错误页面 错误处理的自动配置:ErrorMvcAutoConfiguration 给容器添加了 DefaultErrorAttributes、 BasicErrorController:处理默认的.../error请求 ErrorPageCustomizer:系统出现错误来到error请求进行处理 步骤:一旦系统出现4xx或5xx的错误,ErrorPageCustomizer会生效(定制错误的相应规则...整合Mybatis 向导开发,自动导入依赖 org.mybatis.spring.boot mybatis-spring-boot-starter
官网地址:https://github.com/spring-projects/spring-boot 直接下载对于的压缩文件即可 下载后直接解压缩即可 2.本地源码编译 把解压缩的源码直接导入到...IDEA中,修改pom文件中的版本号。...pom文件中提示 disable.checks属性找不到,我们添加一个即可。...true 然后执行编译命令 mvn clean install -DskipTests 然后控制台出现如下错误...在执行编译命令就可以了 mvn clean install -DskipTests 3.源码环境使用 既然源码已经编译好之后我们就可以在这个项目中来创建我们自己的SpringBoot项目了,我们在 spring-boot-project
本次实战会用到Hibernate自动重新建表的功能,此功能会先删除库中已存在的同名表,因此,只有一个profile配置的时候,不要让此应用连接到生产环境 最安全的做法是使用profile功能将生产环境和测试环境的配置文件分开...,测试环境的配置文件中,是测试数据库,并且开启了自动重新建表的的功能,而生产环境的配置文件中,自动重新建表的功能是关闭的 先来看公共配置文件application.properties,此文件和profile...,从最核心的实体类开始 SQL文件 刚才的配置文件中配合的import.sql,其放置位置与applicatin.properites文件相同,内容如下,可见是往known_fruits表写入了三条记录...中导入的记录数量,这些是应用启动是导入的 */ private static final int EXIST_RECORDS_SIZE = 3; /** * import.sql...而是使用了前面list的缓存结果,验证是否使用了缓存很简单,将testGet和testGetSingle两个方法的执行顺序调换一下,再执行,就发现testGetSingle执行耗时也变长了,而且SQL日志也出现了
领取专属 10元无门槛券
手把手带您无忧上云