美文网首页
3.如何学习SpringBoot

3.如何学习SpringBoot

作者: 1只念旧的兔子 | 来源:发表于2019-03-21 00:15 被阅读0次

    1.Spring Boot是什么?

    Spring Boot 是由 Pivotal 团队开发的框架,其作用是用来简化新 Spring 应用的初始搭建以及开发过程。
    该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置,简单理解就是springboot并不是什么新型的框架,而是整合了spring,springmvc等框架,默认了很多配置,从而减少了开发者的开发时间。
    Spring Boot 简化了基于 Spring 的应用开发,通过少量的代码就能创建一个独立的、产品级别的 Spring 应用。 Spring Boot 为 Spring 平台及第三方库提供开箱即用的设置。
    Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。

    2.为什么会出现Spring Boot?

    (1)java项目开发复杂度极其高;
    (2)java项目的维护非常困难;
    (3)在云时代如何实现项目的快速部署一起快速启动;
    (4)即便使用了大量的开发框架,发现我们的开发也没有少很多;
    (5)当所有的人认为spring不再前进的时候,Spring退出了微架构实现的两个重要的开发框架:SpringBoot、SpringCloud。

    Spring Boot的优缺点

    优点
    1)配置 web.xml,加载 spring 和 spring mvc
    2)配置数据库连接、配置日志文件
    3)配置家在配置文件的读取,开启注解
    4)配置mapper文件
    缺点
    Spring Boot作为一个微框架,离微服务的实现还是有距离的。springboot 只是为了提高开发效率,是为了提升生产力的。
    没有提供相应的服务发现和注册的配套功能,自身的acturator所提供的监控功能,也需要与现有的监控对接。没有配套的安全管控方案,对于REST的落地,还需要自行结合实际进行URI的规范化工作。
    注意:
    将现有或传统的Spring Framework项目转换为Spring Boot应用程序是一个非常困难和耗时的过程。它仅适用于全新Spring项目。
    重点阐述
    简单、快速、方便地搭建项目;对主流开发框架的无配置集成;极大提高了开发、部署效率。

    3.Spring Boot快速搭建

    (1)新建项目
    选择 Spring Initializr ,然后选择默认的 url 点击【Next】:
    然后修改一下项目的信息:
    勾选上 Web 模板
    选择好项目的位置,点击【Finish】
    (2)自动生成模块
    SpringbootApplication: 一个带有 main() 方法的类,用于启动应用程序
    SpringbootApplicationTests:一个空的 Junit 测试了,它加载了一个使用 Spring Boot 字典配置功能的 Spring 应用程序上下文
    application.properties:一个空的 properties 文件,可以根据需要添加配置属性
    pom.xml: Maven 构建说明文件
    (3)HelloController
    在【com.springboot】包下新建一个【HelloController】:
    @RestController 注解: 该注解是 @Controller 和 @ResponseBody 注解的合体版
    (4)利用 IDEA 启动 Spring Boot
    我们回到 SpringbootApplication 这个类中,然后右键点击运行:
    注意:我们之所以在上面的项目中没有手动的去配置 Tomcat 服务器,是因为 Spring Boot 内置了 Tomcat
    等待一会儿就会看到下方的成功运行的提示信息:
    可以看到我们的 Tomcat 运行在 8080 端口,可以看到页面成功显示出我们返回的信息。

    4.Spring Boot注解大全

    @SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。
    @Configuration 等同于spring的XML配置文件;使用Java代码可以检查类型安全。
    @EnableAutoConfiguration 自动配置。
    @ComponentScan 组件扫描,可自动发现和装配一些Bean。
    @Component可配合CommandLineRunner使用,在程序启动后执行一些基础任务。
    @RestController注解是@Controller和@ResponseBody的合集,表示这是个控制器bean,并且是将函数的返回值直 接填入HTTP响应体中,是REST风格的控制器。
    @Autowired自动导入。
    @PathVariable获取参数。
    @JsonBackReference解决嵌套外链问题。
    @RepositoryRestResourcepublic配合spring-boot-starter-data-rest使用。

    5.学习心得

    springBoot集成了web容器,我们只需要运行一个主程序就可以实现一个wen项目的运行。
    需要添加springBoot这个父工程的依赖,才能对启动器的版本进行管理。springBoot里面已经帮助我们把我们需要启动器的版本管理好了,我们只需要引入需要的启动器就可以,不需要指明启动器的版本。
    父工程坐标
    启动器(我们并没有在这里指定版本信息。因为SpringBoot的父工程已经对版本进行了管理了。)
    启动器里面包括我们需要的各种jar包及其自动配置类(spring没有配置自动配置的),当我们引入这个启动器的依赖时,就会触发springBoot为其定义的自动配置,通过在application.yml里面配置属性值,就会被读取,然后在@ConfigurationProperties(prefix = “jdbc”)这样的属性读取类读取我们配置的属性,然后在@Configuration
    @EnableConfigurationProperties(JdbcProperties.class)这两个注解的类中进行注入属性,然后通过@bean注解的方法进行创建对象,放到ioc容器中。
    我们如果配置了启动器,就会被主方法里面识别我们需要做的事情,如果我们没有配置属性值,就会使用默认的属性值,一般不要乱引入启动器,只引入需要的即可。
    启动类(项目运行的主方法)
    启动类放的位置:一般放在我们创建的包的目录:比如放在cn.itcast.leyou的目录下,与pojo,service,controller在同一目录下,因为需要在包扫描创建对象放在ioc容器中,扫描的是启动类同级的包及其子包中的带注解的类(针对@controller,@service,@component注解),mapper接口需要在启动类上配置包扫描。
    springBoot默认配置生效原因
    springBoot帮助我们设置了默认配置,并且根据你引入的依赖来生效对应的默认配置

    1.png
    https://mubu.com/doc/pHFonCyPR0

    相关文章

      网友评论

          本文标题:3.如何学习SpringBoot

          本文链接:https://www.haomeiwen.com/subject/eoffvqtx.html