![](https://img-blog.csdnimg.cn/20190918204827753.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
springboot基础
含江君
欲练英雄志,须明胜负多
展开
-
springboot新手脱坑之无法下载依赖包
1. Apache maven 3.39配置1.环境变量自己配置,2.配置阿里云镜像和本地仓库 <localRepository>D:\Apache\maven\repository</localRepository><mirror> <id>alimaven</id> <name...原创 2019-09-18 21:07:57 · 10410 阅读 · 7 评论 -
7_3.springboot2.x启动配置原理_3.事件监听机制
事件监听机制配置在META-INF/spring.factoriesApplicationContextInitializerSpringApplicationRunListenerioc容器中的ApplicationRunnerCommandLineRunner测试配置在META-INF/spring.factoriesApplicationContextInitializer...原创 2019-10-07 19:29:02 · 208 阅读 · 0 评论 -
08_springboot2.x自定义starter
概述starter:启动器1、这个场景需要使用到的依赖是什么?2、如何编写自动配置规则:@Configuration //指定这个类是一个配置类@ConditionalOnXXX //在指定条件成立的情况下自动配置类生效@AutoConfigureAfter //指定自动配置类的顺序@Bean //给容器中添加组件@ConfigurationPropertie结合相关xx...原创 2019-10-07 20:52:09 · 328 阅读 · 0 评论 -
2_1.springboot2.x配置之配置文件解析
1、配置文件1、Spring Boot使用一个全局的配置文件:•application.properties、application.yml2、配置文件放在src/main/resources目录或者类路径/config下3、yml是YAML(YAML Ain’t Markup Language)语言的文件,以数据为中心,比json、xml等更适合做配置文件YAML:以数据为中心,比jso...原创 2019-10-08 17:05:46 · 280 阅读 · 0 评论 -
03_springboot2.x日志处理
1、日志框架 市场上存在非常多的日志框架。JUL(java.util.logging),JCL(Apache Commons Logging),Log4j,Log4j2,Logback、SLF4j、jboss-logging等。Spring Boot在框架内容部使用JCL,spring-boot-starter-logging采用了slf4j+logback的形式,Spring Boot也能...原创 2019-10-08 20:59:04 · 503 阅读 · 0 评论 -
4_1.springboot2.xWeb开发使用thymeleaf
1、简介如果使用SpringBoot;1)、创建SpringBoot应用,选中我们需要的模块;2)、SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来;3)、自己编写业务代码;自动配置原理:xxxxAutoConfiguration:帮我们给容器中自动配置组件;xxxxProperties:配置类来封装配置文件的内容;2、静态资源的映射规...原创 2019-10-08 21:57:10 · 272 阅读 · 0 评论 -
4_2.springboot2.x配置之springmvc自动配置
1、Spring MVC auto-configuration查看官方文档:Spring Boot为Spring MVC提供了自动配置,适用于大多数应用程序。自动配置在Spring的默认值之上添加了以下功能:1、包含ContentNegotiatingViewResolver 和BeanNameViewResolver beans。自动配置了ViewResolver(视图解析器:根据...原创 2019-10-09 09:30:08 · 435 阅读 · 0 评论 -
4_3.springboot2.x之默认访问首页和国际化
1、默认访问首页1.引入thymeleaf和引入bootstrap<!--引入thymeleaf--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-sta...原创 2019-10-09 16:22:57 · 847 阅读 · 0 评论 -
4_4.springboot之Web开发登录和拦截器
1、登录处理1)、禁用模板引擎的缓存# 禁用缓存spring.thymeleaf.cache=false 2)、页面修改完用ctrl+f9:重新编译;LoginController@Controllerpublic class LoginController { @PostMapping(value = "/user/login") //@RequestMappi...原创 2019-10-09 17:30:09 · 164 阅读 · 0 评论 -
4_5.springboot2.x之Web开发RestfulCRUD操作
1)、RestfulCRUD:CRUD满足Rest风格URI: /资源名称/资源标识 HTTP请求方式区分对资源CRUD操作普通CRUD(uri来区分操作)RestfulCRUD查询getEmpemp—GET添加addEmp?xxxemp—POST修改updateEmp?id=xxx&xxx=xxemp/{id}—PUT...原创 2019-10-09 19:53:16 · 146 阅读 · 0 评论 -
4_6.springboot2.xWeb开发之错误处理机制
1、SpringBoot默认的错误处理机制默认效果:1)、浏览器,返回一个默认的错误页面浏览器发送请求的请求头: 2)、如果是其他客户端,默认响应一个json数据原理: 默认情况下,Spring Boot提供/error 映射,以合理的方式处理所有错误,并在servlet容器中注册为“全局”错误页面。对于计算机客户端,它会生成一个JSON响应,其中包含错误,HT...原创 2019-10-09 21:29:50 · 195 阅读 · 1 评论 -
7_2.springboot2.x启动配置原理_2.运行run方法
当创建完SpringApplication对象之后运行run方法public ConfigurableApplicationContext run(String... args) { StopWatch stopWatch = new StopWatch(); stopWatch.start(); ConfigurableApplicationContext context = ...原创 2019-10-07 18:50:44 · 253 阅读 · 0 评论 -
7_1.springboot2.x启动配置原理_1.创建SpringApplication对象
环境准备springboot2.1.9、idea2019、pom.xml解析几个重要的事件回调机制配置在META-INF/spring.factoriesApplicationContextInitializerSpringApplicationRunListener只需要放在ioc容器中ApplicationRunnerCommandLineRunner在主...原创 2019-10-07 17:48:25 · 236 阅读 · 0 评论 -
2_2.springboot2.x配置之自动配置原理
前言SpringBoot 自动配置原理:本文主要分为三大部分:SpringBoot 源码常用注解SpringBoot 启动过程SpringBoot 自动配置原理1. SpringBoot 源码常用注解这部分主要讲一下 SpringBoot 源码中经常使用到的注解,以扫清后面阅读源码时候的障碍。组合注解当可能大量同时使用到几个注解到同一个类上,就可以考虑将这几个注解到别的注解...原创 2019-09-21 11:50:29 · 370 阅读 · 0 评论 -
4_7.springboot2.x嵌入式servlet容器自动配置原理
概述Spring Boot对所支持的Servlet Web服务器实现做了建模抽象:Servlet容器类型 WebServer模型接口 WebServer工厂实现类 Tomcat TomcatWebServer TomcatServletWebServerFactory Jetty JettyWebServer Jett...原创 2019-09-28 11:31:45 · 755 阅读 · 1 评论 -
4_8.springboot2.x嵌入式servlet容器启动原理解析
问题描述:什么时候创建嵌入式的Servlet容器工厂?什么时候获取嵌入式的Servlet容器并启动Tomcat?*获取嵌入式的Servlet容器工厂:1)、SpringBoot应用启动运行run方法2)、refreshContext(context);SpringBoot刷新IOC容器【创建IOC容器对象,并初始化容器,创建容器中的每一个组件】;如果是web应用创建AnnotationC...原创 2019-09-28 17:03:55 · 158 阅读 · 0 评论 -
4_9.springboot2.x之使用外置servlet容器原理解析
问题概述嵌入式Servlet容器: 应用打成可执行的jar优点:简单、便携;**缺点:**默认不支持JSP、优化定制比较复杂(使用定制器【ServerProperties、自定义WebServerFactoryCustomizer】,自己编写嵌入式Servlet容器的创建工厂【ServletWebServerFactory】);如使用jsp:要配置外置的Servlet容器:外面安装Tom...原创 2019-09-28 18:43:28 · 337 阅读 · 0 评论 -
01_springboot2.x之springboot入门
1、简介Spring Boot来简化Spring应用开发,约定大于配置,去繁从简,just run就能创建一个独立的,产品级别的应用。优点:1、简化Spring应用开发的一个框架;2、整个Spring技术栈的一个大整合;3、J2EE开发的一站式解决方案*4、快速创建独立运行的Spring项目以及与主流框架集成5、使用嵌入式的Servlet容器,应用无需打成WAR包6、starte...原创 2019-09-30 19:32:09 · 250 阅读 · 0 评论 -
6_1.springboot2.x整合JDBC与数据源配置原理解析
1、引言对于数据访问层,无论是SQL还是NOSQL,Spring Boot默认采用整合Spring Data的方式进行统一处理,添加大量自动配置,屏蔽了很多设置。引入各种xxxTemplate,xxxRepository来简化我们对数据访问层的操作。对我们来说只需要进行简单的设置即可。2、步骤这里springboot版本是springboot2.181、引入starter ...原创 2019-10-04 19:09:25 · 922 阅读 · 0 评论 -
6_2.springboot2.x整合Druid和配置数据源监控
简介Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验。Druid是阿里巴巴开发的号称为监控而生的数据库连接池。 Druid是一个JDBC组件...原创 2019-10-04 21:49:40 · 670 阅读 · 0 评论 -
6_3.springboot2.x数据整合Mybatis(注解和非注解)
1、配置文件pom.xml导入mybatis提供的启动器 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> ...原创 2019-10-06 12:01:46 · 221 阅读 · 0 评论 -
6_4.springboot2.x数据整合springData介绍
介绍Spring Data 项目的目的是为了简化构建基于Spring 框架应用的数据访问技术,包括非关系数据库、Map-Reduce 框架、云数据服务等等;另外也包含对关系数据库的访问支持。spring官方简化数据访问的项目:如使用JPA简化关系型数据库、......Spring Data 包含多个子项目:–Spring Data Commons–Spring Data JPA...原创 2019-10-06 12:22:43 · 338 阅读 · 0 评论 -
6_5.springboot2.x数据整合springData JPA
1、配置文件pom.xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jdbc&l...原创 2019-10-06 13:18:57 · 162 阅读 · 0 评论 -
5.1_Spring Boot2.x安装Docker
1、简介Docker是一个开源的应用容器引擎;是一个轻量级容器技术;Docker 是一个开源的应用容器引擎,基于Go 语言并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。Docker支持将...原创 2019-10-10 08:04:26 · 130 阅读 · 0 评论