SpringBoot
文章平均质量分 95
SpringBoot学习过程记录
天黑黑~
博客记录自己的学习过程,享受写博客的过程~
展开
-
Spring Boot(二十六)日志详解!
Springboot版本:2.1.1日志输出内容Spring Boot 的默认日志输出类似于以下示例:2021-06-05 15:58:02.532 INFO 168344 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/boot] : Initializing Spring embedded WebApplicationContext2021-06-05 15:58:02.533 INFO 168344 --- [原创 2021-07-05 18:21:17 · 1411 阅读 · 2 评论 -
Spring Boot(二十五)打包成可执行war
前言:SpringBoot版本:2.1.1在第一篇入门案例中,父pom添加了一个插件spring-boot-maven-plugin,但是前面博客一直没讲到过,这个插件可以将项目打包成可执行jar或者war。项目上右键-->Properties-->点击箭头来到项目的根目录-->在地址栏选中以后直接输入cmd,然后回车。进入cmd界面以后输入命令:mvn ...原创 2020-01-14 13:54:23 · 210 阅读 · 0 评论 -
SpringBoot(二十四)集成Swagger2
SpringBoot版本:2.1.1拿前面这篇博客做测试,有现成的接口(传送门),记得前面接口写好了是用postman测试,今天写完就不需要用postman进行测试了。直接用Swagger2来生成在线接口文档和测试服务。先截图观摩一下,我个人觉得这个还是可以的,因为我就是处于前后分离的开发模式,要写接口文档。废话不多说了1、先添加依赖 <!--swagger...原创 2019-06-27 15:58:09 · 271 阅读 · 0 评论 -
SpringBoot(二十三)自定义starter
SpringBoot版本:2.1.1目录自定义Starter使用测试代码自从使用SpringBoot以来,我就爱了,相对于Spring,繁琐的xml配置,SpringBoot是开箱即用,当然主要是因为它的自动配置,也就是@EnableAutoConfiguration,注解原理前面已经解析过了(传送门),并在此基础上自定义了一个注解实现bean装配(传送门)。自定义Star...原创 2019-06-13 15:34:53 · 1132 阅读 · 0 评论 -
SpringBoot(二十二)整合Mybatis,使用SqlSessionTemplate实现增删改查
在之前这篇基础上进行改造使用JdbcTemplate实现增删改查。SpringBoot版本:2.1.1目录结构如下:pom文件添加依赖,如下:<!-- 添加依赖以后Mybatis就自动配置好了,可以直接使用,具体自动配置代码到mybatis-spring-boot-autoconfigure包下查看 --><!-- 上一篇博客里添加的spring-boot...原创 2019-06-11 18:44:58 · 5946 阅读 · 0 评论 -
SpringBoot(二十一)ApplicationRunner和CommandLineRunner实现开机自启
目录ApplicationRunnerCommandLineRunner总结SpringBoot版本:2.1.1SpringBoot应用启动成功以后就会callRunners方法,方法中调用ApplicationRunner和CommandLineRunner接口的run方法,只在启动成功以后调用一次。所以,在这基础上就可以实现相当于开机自启的一个操作,具体执行的逻辑代码就看在...原创 2019-05-30 15:23:17 · 9476 阅读 · 0 评论 -
SpringBoot(二十)使用JdbcTemplate实现增删改查
SpringBoot版本:2.1.1目录准备工作1、建表2、建立项目测试1、查询2、添加3、修改4、删除准备工作今天偷闲来更新一下,哈哈哈~1、建表先来简单建个表,sql贴下面了。create table DEPT( deptno NUMBER(2) not null, dname VARCHAR2(50), loc ...原创 2019-06-11 17:49:22 · 2240 阅读 · 0 评论 -
SpringBoot(十九)Servlet,Filter和listener自动装配解析
目录注解方式@ServletComponentScan注解ServletComponentScanRegistrar类ServletComponentRegisteringPostProcessorhandle()方法配置类方式ServletContextInitializerBeansSpringBoot版本:2.1.1注解方式@ServletComp...原创 2019-04-29 10:02:50 · 871 阅读 · 2 评论 -
SpringBoot(十七)静态资源处理源码解析及配置
目录流程分析EnableWebMvcConfigurationWebMvcAutoConfigurationAdapter实践是检验真理的唯一标准准备工作使用url直接访问静态资源自定义静态资源路径SpringBoot版本:2.1.1流程分析先看下SpringBoot的MVC自动配置类WebMvcAutoConfiguration,位于spring-b...原创 2019-04-25 16:32:59 · 1268 阅读 · 0 评论 -
SpringBoot(十八)异常统一处理及异常处理解析
目录默认异常处理BasicErrorController返回页面+数据:errorHtml()自定义统一异常处理静态异常处理页面动态异常处理(模板引擎)页面自定义异常数据SpringBoot版本:2.1.1默认情况下,Spring Boot异常页面显示如下:下面第一句:此应用程序没有针对/error的显式映射。默认异常处理Spring ...原创 2019-04-22 22:32:59 · 1877 阅读 · 0 评论 -
SpringBoot(十六)自定义事件监听
SpringBoot版本:2.1.1相信走完SpringBoot2.1.1启动流程分析以后,对事件应该是很熟悉了。监听实现方式1、在SpringApplication的构造方法中就会从META-INF/spring.factories得到ApplicationListener的实现类对象集合。2、在发布ApplicationEnvironmentPreparedEvent事件时De...原创 2019-04-20 14:09:38 · 2353 阅读 · 0 评论 -
SpringBoot(十五)启动流程分析最后阶段ApplicationStartedEvent、ApplicationReadyEvent事件发布、callRunners()
SpringBoot版本:2.1.1 ==》启动流程分析汇总接上篇博客Spring Boot 2.1.1(十四)启动流程分析之refreshContext()public ConfigurableApplicationContext run(String... args) { .... try { //本篇内容从本行开始记录 ...原创 2019-04-15 17:34:48 · 5013 阅读 · 0 评论 -
SpringBoot(十四)启动流程分析之refreshContext()
SpringBoot版本:2.1.1 ==》启动流程分析汇总接上篇Spring Boot 2.1.1(十三)启动流程分析之准备应用上下文目录流程分析1、准备刷新子类prepareRefresh()方法父类prepareRefresh()方法2、通知子类刷新内部bean工厂3、准备bean工厂4、允许上下文子类对bean工厂进行后置处理5、调用已注...原创 2019-04-12 17:39:27 · 5756 阅读 · 0 评论 -
SpringBoot启动流程分析
SpringBoot启动流程分析,版本:2.1.1链接汇总:(一)SpringApplication对象创建(二)ApplicationStartingEvent事件的发布监听流程(三)命令行参数args的封装解析(四)ApplicationEnvironmentPreparedEvent事件发布(五)设置系统属性spring.beaninfo.ignore、自定义bann...原创 2019-04-09 16:05:13 · 3720 阅读 · 0 评论 -
SpringBoot(十三)启动流程分析之准备应用上下文
SpringBoot版本:2.1.1 ==》启动流程分析汇总接上篇博客Spring Boot 2.1.1(十二)启动流程分析之创建应用上下文AnnotationConfigServletWebServerApplicationContext目录流程分析1、应用上下文后置处理2、调用initializers3、发布ApplicationContextInitializ...原创 2019-04-09 15:54:53 · 1156 阅读 · 0 评论 -
SpringBoot(十二)启动流程分析之创建应用上下文AnnotationConfigServletWebServerApplicationContext
SpringBoot版本:2.1.1 ==》启动流程分析汇总接上篇博客Spring Boot 2.1.1(十一)启动流程分析之设置系统属性spring.beaninfo.ignore、自定义banner图目录流程分析1、AbstractApplicationContext2、GenericApplicationContext2.1、DefaultListable...原创 2019-04-08 17:20:37 · 31940 阅读 · 0 评论 -
SpringBoot(十一)启动流程分析之设置系统属性spring.beaninfo.ignore、自定义banner图
SpringBoot版本:2.1.1 ==》启动流程分析汇总接上篇博客Spring Boot 2.1.1(十)启动流程分析之ApplicationEnvironmentPreparedEvent事件发布。目录流程分析1、设置spring.beaninfo.ignore属性2、Banner图2.1、输出banner图3、自定义banner图public Co...原创 2019-04-04 11:33:19 · 5649 阅读 · 0 评论 -
SpringBoot(十)启动流程分析之ApplicationEnvironmentPreparedEvent事件发布
SpringBoot版本:2.1.1 ==》启动流程分析汇总接上篇博客 Spring Boot 2.1.1(九)启动流程分析之args参数的封装解析。目录构建环境1、创建ConfigurableEnvironment对象2、配置环境2.1、配置属性源2.2、配置配置文件3、发布ApplicationEnvironmentPreparedEvent事件4、将...原创 2019-03-30 17:35:18 · 8563 阅读 · 0 评论 -
SpringBoot(九)启动流程分析之命令行参数args的封装解析
SpringBoot版本:2.1.1 ==》启动流程分析汇总接上篇博客Spring Boot 2.1.1(八)启动流程分析之ApplicationStartingEvent事件的发布监听流程目录流程分析1、DefaultApplicationArguments构造方法2、参数解析3、测试验证流程分析发布ApplicationStartingEvent后就是封...原创 2019-03-29 19:00:48 · 3979 阅读 · 0 评论 -
SpringBoot(八)启动流程分析之ApplicationStartingEvent事件的发布监听流程
SpringBoot版本:2.1.1 ==》启动流程分析汇总接上篇博客SpringApplication对象创建目录流程分析1、getRunListeners(String[] args)1.1、SpringApplicationRunListener接口1.2、创建SpringApplicationRunListeners对象2、发布ApplicationSt...原创 2019-03-29 17:08:09 · 5740 阅读 · 2 评论 -
SpringBoot(七)启动流程分析之SpringApplication对象创建
SpringBoot版本:2.1.1 ==》启动流程分析汇总能力有限,没解释到或解释不正确的地方忘谅解,欢迎评论指正,持续更新。目录准备工作流程分析1、SpringApplication的构造方法1.1、推断应用程序类型1.2、设置Initializers1.2、设置Listener1.3、推断main方法所在类准备工作新建子项目Spring...原创 2019-03-26 18:23:02 · 2134 阅读 · 3 评论 -
SpringBoot(六)基于ImportSelector接口和@Import注解自定义注解实现Bean装配
SpringBoot版本:2.1.1前言上一篇博客讲了@EnableAutoConfiguration注解的工作原理,在上篇博客的基础上自定义注解,实现Bean的装配。准备工作在SpringBoot_EnableAutoConfiguration项目中新建两个bean,ImportBean、UserBean。里面啥都没有,什么也不用加,建好就行了。再建个配置类ImportConfi...原创 2019-03-21 18:04:42 · 2126 阅读 · 0 评论 -
SpringBoot(五)@EnableAutoConfiguration注解的工作原理
目录Demo源码解析1、isEnabled()方法:2、loadMetadata()方法:3、getAutoConfigurationEntry()方法3.1、getAttributes()方法3.2、getCandidateConfigurations()方法3.3、getExclusions()方法3.4、返回值AutoConfigurationEntry对...原创 2019-03-22 13:32:09 · 2658 阅读 · 0 评论 -
SpringBoot(四)Conditional 基于条件的自动装配
SpringBoot版本:2.1.1前言上篇文章讲了使用EnvironmentPostProcessor 加载外部配置,这里继续Spring Boot中的@Conditional。Spring Boot中有一个@EnableAutoConfiguration注解,开启自动配置,位于在spring-boot-autoconfigure.jar中,在这个jar中,大量使用了@Condit...原创 2019-03-18 17:12:59 · 974 阅读 · 0 评论 -
SpringBoot(三)使用EnvironmentPostProcessor接口加载外部配置文件
SpringBoot版本:2.1.1接上一篇博文。编写EnvironmentPostProcessor接口实现,重写postProcessEnvironment方法。@Componentpublic class MyEnvironmentPropertySource implements EnvironmentPostProcessor { @Override public ...原创 2019-03-15 17:06:07 · 7848 阅读 · 0 评论 -
SpringBoot(二)application.properties配置文件详解
目录新建子工程.properties配置文件@Value方式@ConfigurationProperties方式配置文件的位置使用 spring.profiles.active来分区配置SpringBoot版本:2.1.1前言在上篇入门教程中,一点配置文件的影子都没见到,因为Spring Boot使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置...原创 2019-03-15 15:41:06 · 20839 阅读 · 0 评论 -
SpringBoot(一)入门案例(Hello World)五分钟带你入门!
SpringBoot版本:2.1.1简单的介绍下SpringBoot,以下介绍内容来源于官网:官网文档一、介绍:Spring Boot可以轻松创建能独立运行的,生产级的基于Spring的应用程序。大多数Spring Boot应用程序只需要很少的Spring配置。Spring Boot的目标:为所有Spring开发从根本上提供更快的入门体验。 提供大型项目(例如嵌入式服务器,安...原创 2019-03-14 15:41:54 · 5522 阅读 · 1 评论