zoukankan      html  css  js  c++  java
  • SpringBoot学习笔记1

    1.什么是SpringBoot

      用一些固定的方式来构建生产级别的spring应用。spring boot推崇约定大于配置的方式便于你能够快速的启动并运行程序。

    2.为什么要学spring boot

     java传统项目:复杂的配置,混乱的依赖管理。spring boot简化了基于spring的应用开发,只需要“run”就能创建一个独立的、生产级别的Spring应用。Spring Boot为Spring平台及第三方库提供开箱即用的设置(提供默认设置,存放默认配置的包就是启动器),这样我们就可以简单的开始。多数Spring Boot应用只需要很少的Spring配置。

    3.Spring Boot 主要目标是:

    • 为所有 Spring 的开发者提供一个非常快速的、广泛接受的入门体验

    • 开箱即用(启动器starter-其实就是SpringBoot提供的一个jar包),但通过自己设置参数(.properties),即可快速摆脱这种方式。

    • 提供了一些大型项目中常见的非功能性特性,如内嵌服务器、安全、指标,健康检测、外部化配置等

    • 绝对没有代码生成,也无需 XML 配置。

    4.常用注解:

    • @Configuration:声明一个类作为配置类,代替xml文件

    • @Bean:声明在方法上,将方法的返回值加入Bean容器,代替<bean>标签

    • @value:属性注入

    • @PropertySource:指定外部属性文件,

    5.@EnableConfigurationProperties vs @Value

      @EnableConfigurationProperties支持Relaxed binding和meta-data support

      Relaxed binding:松散绑定。不严格要求属性文件中的属性名与成员变量名一致。支持驼峰,中划线,下划线等等转换,甚至支持对象引导。比如:user.friend.name:代表的是user对象中的friend属性中的name属性,显然friend也是对象。@value注解就难以完成这样的注入方式。

      meta-data support:元数据支持,帮助IDE生成属性提示(写开源框架会用到)。

    6.spring boot 启动类

    • 注解:@SpringBootApplication

      • @SpringBootConfiguration

      • @EnableAutoConfiguration

      • @ComponentScan

    • run方法:SpringApplication.run()

        @SpringBootConfiguration:在这个注解上面,有一个@Configuration注解,这个注解的作用就是声明当前类是一个配置类,然后Spring会自动扫描到添加了@Configuration的类,并且读取其中的配置信息。而@SpringBootConfiguration是来声明当前类是SpringBoot应用的配置类,项目中只能有一个。所以一般我们无需自己添加。

        @EnableAutoConfiguration:开启SpringBoot的自动配置,并且根据你引入的依赖来生效对应的默认配置。

        @ComponentScan:配置组件扫描的指令。提供了类似与<context:component-scan>标签的作用。通过basePackageClasses或者basePackages属性来指定要扫描的包。如果没有指定这些属性,那么将从声明这个注解的类所在的包开始,扫描包及子包。而我们的@SpringBootApplication注解声明的类就是main函数所在的启动类,因此扫描的包是该类所在包及其子包。因此,一般启动类会放在一个比较前的包目录中

  • 相关阅读:
    构建之法阅读笔记06
    钢镚儿开发前会议
    构建之法阅读笔记05
    4.11第8周学习总结
    人月神话阅读笔记01
    构建之法阅读笔记04
    4.4日学习总结
    构建之法阅读笔记03
    3.28第六周学习内容总结
    二人团队项目增删改查
  • 原文地址:https://www.cnblogs.com/djdjfj/p/10710012.html
Copyright © 2011-2022 走看看