参考了很多相关博客:
springboot怎么学? - 知乎
如何解读springboot 中约定大于配置、JPA是什么、咋用_打豆豆。的博客-CSDN博客
SpringBoot约定大于配置到底是什么意思?_zhupanlinch的博客-CSDN博客
SpringBoot约定大于配置的特性解读 & SpringBoot快速入门_星河_赵梓宇的博客-CSDN博客
SpringBoot-基于spring的约定优于配置_木子松的猫的博客-CSDN博客
目录
Spring是什么? spring有什么缺点呢 ?
什么是SpringBoot 呢 ?
为什么要有SpringBoot 呢 ?
Spring Boot 有什么优点呢 ?
Spring Boot支持哪些内置的Servlet容器呢 ?
SpringBoot 与 Spring 的区别是什么呢 ?
创建SpringBoot项目
Spring项目创建失败解决办法
什么情况算是创建好一个Spring Boot的项目呢 ?
输出 Hello,Spring Boot
简单看一下Spring的项目目录
相关路径的问题
SpringBoot 的核心设计思想
那么SpringBoot中有哪些约定呢?
Spring是一种重量级企业的开发框架,Spring框架是为了简化企业级Java开发的.再具体来说,Spring,Spring就是包含了众多方法的IOC容器.
虽然Spring的组件代码是轻量级的,但是它需要大量的XML进行配置,Spring注解数量越来越多,被大量使用,尤其是相同的多个注解会被大量重复的用到各个类或者方法中,这就会导致繁琐的配置及大量冗余代码
为了减少配置做了以下工作 :
在 Spring2.5引入了基于注解的组件扫描,消除大量针对应用程序自身组件显示XML配置,Spring3.0引入了基于java的配置,一种类型安全的可重构配置方式,可以替代XML
但是当我们使用Spring的时候,开启它的某些特性的时候,比如事务管理和SpringMVC,还是需要XML或者java进行显示配置,启用第三方库也要显式配置,如Thymeleaf和Web视图.配置Servlet和过滤器同样是需要web.xml和Servlet初始化代码进行显式配置,组件减少了配置量,java配置也减少很多,但是Spring还需要很多配置,
再比如还会有一些相关库的依赖,不同库的版本冲突.....
对于SpringBoot它是Spring的脚手架,用来简化Spring框架本身的繁琐配置,达到快速的集成和开发.最典型的减少配置,开箱即用.
SpringBoot它是Spring的脚手架,用来简化Spring开发的.最典型的减少配置,开箱即用.
快速集成框架,Spring Boot 提供了启动添加依赖的功能,⽤于秒级集成各种框架。
内置运⾏容器,⽆需配置 Tomcat 等 Web 容器,直接运⾏和部署程序 (不需要向Spring,那样还要在Tomcat容器里面使用,Spring boot自身内置了Tomcat容器,不需要进行配置,可以直接运行和部署)
快速部署项⽬,⽆需外部容器即可启动并运⾏项⽬
可以完全抛弃繁琐的 XML,使⽤注解和配置的⽅式进⾏开发。
⽀持更多的监控的指标,可以更好的了解项⽬的运⾏情况
Spring Boot 提供了很多种插件,可以使用内置工具(Maven,Gradle)进行开发和测试Spring Boot应用程序
可以将 Spring 引导应用程序部署到任何 Servlet3.1 + 兼容的Web容器中
spring和spring boot就是同一家公司的两种产品,spring是很早起的框架,有很大的社区,庞大的用户
更具体的来说,Spring就是包含了众多方法的IOC容器.而对于Spring Boot来说,Spring Boot就是Spring的一个脚手架,只是对Spring本身的扩展,用来简化Spring框架本身的繁琐配置,使得开发,测试和部署更加的方便
首先先要下载好Spring boot Helper 这个插件,下载后重新新建一个Spring boot的项目
出现这种错误就是Maven的jar包没有下载完成.导致失败,所以这个时候,我们应该先要配置好国内源
有可能你会发现一点开这两个设置就会弹出一大堆Maven下载失败,这就是国内源的问题.
首先先要配置好国内源-->也就是settings.xml-->配置好国内的镜像.
******
******
******
******
alimaven
aliyun maven
http://maven.aliyun.com/nexus/content/repositories/central/
central
junit
junit Address/
http://jcenter.bintray.com/
central
有可能你配置我的这个也可能不好使,那就去网上找找,就好了我发现多配置几个就会好使.
然后重新创建出项目-->同时也要保证网络是良好的... 然后进行下载,初次下载可能会很慢,慢慢来就行.
当然,我们也可以运行一下,看是否能够成功
这可能是我们学习一门新技术的时候,最熟悉的给新技术招手了,发誓一定要学好它哈哈哈....
package com.example.demo; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class TestController { @RequestMapping("/hello")//加上路由 public String sayHello(){ return "hello, Spring Boot"; } }
如果不放在同级目录下就会报错-->否则SpringBoot项目就不会将Bean注入到Spring容器中.
如何理解Springboot的核心思想 -- > "约定大于配置" 呢 ?
我们可以用Spring与SpringBoot进行对比,以前我们基于Spring框架实现的Web应用都需要做一些与业务无关的并且只需要做一次的配置 比如 web.xml,管理jar包的依赖,将应用部署到Web容器中......
对于SpringBoot我们不需要在进行这些繁琐的配置,这些SpringBoot已经帮我们实现好了.我们只需要实现我们所实现的业务代码即可..这就是约定大于配置的思想..
使用这种约定大于配置的思想,在进行使用SpringBoot开发的时候,使用框架提供的默认值,但是如果提供的默认值与我们的需求不匹配的情况下,我们就可以进行自己进行配置比如 : properties或者yml来重写框架的默认值来满足我们的需求.
用自己的话来理解 : 就是别人已经帮我们把该做的事情做好了,我们只需要做自己的事情就行了,如果别人以前做的事情不符合我们的需求,我们修改一下或者添加一下自己需要的东西就好了呗,变成自己的就行了(哪有什么岁月静好,只不过是有人为你负重前行)