首页 > 其他分享 >springBoot

springBoot

时间:2024-03-11 20:45:42浏览次数:26  
标签:启动器 springBoot spring 配置 boot 自动 springboot

**Spring boot **的主要优点:
为所有spring开发者更快的入门
开箱即用,提供各种默认配置来简化项目配置
内嵌式容器简化web项目
没有冗余代码生成和xml配置的要求

MVC MVVM 微服务架构

微服务是一种架构可以把原先是一个整体的模块进行拆分成小模块去进行操作,其不会对其整体模块进行修改。只需要改动相应模块就可以进行,
好处:
节省调用资源
每个功能元素的服务都是一个可替换的、可独立升级的软件代码。

在进行springboot项目中可以在application.properties中对项目的端口号进行修改,就可以进行默认端口号的修改

pom.xml
spring-boot-dependencies:核心依赖在父工程中!
在写或引入一些springboot依赖的时候,不需要指定版本,就是因为在配置中已经包含了这些版本仓库

spring-boot-starter启动器
在使用官方的spring-boot-io源是需要用到

org.springframework.boot
spring-boot-starter

启动器:说白了就是springboot的启动场景;
比如: spring-boot-starter-web ,他将能够帮我们自动导入web环境所有的依赖!
springboot会将所有的功能场景,都变成一个个的启动器。
我们想要使用什么功能,就只需要找到对应的启动器就可以。

//其本身就是spring的一个组件
//@SpringBootApplication 标注这个类是一个springboot的应用
//程序的主入口
@SpringBootApplication
public class DemoApplication {
// 通过SpringApplication
public static void main(String[] args) {
// 将springboot应用启动起来
SpringApplication.run(DemoApplication.class, args);
}

}
核心注解
@SpringBootConfiguration -- springboot的配置
@Configuration: spring配置类
@Component:说明这也是一个spring的组件

@EnableAutoConfiguration -- 自动导入配置
@AutoConfigurationPackage:自动配置包
@Import({Registrar.class}):自动配置‘包配置’

springboot中的所有自动配置都是在启动的时候扫描并加载:spring.factories 所有的自动配置类都在这里边,但是不是全部都生效,要判断条件是否成立,只要导入对应的是strat,就有对应的启动器了,有了启动器,我们自动装配就会生效,然后就配置成功了。

springboot在启动时,从类路径下/META-INF/spring.factories获取指定的值;
将这些自动配置的类导入容器,自动配置就会生效,帮我们进行自动配置;
在以前的开发过程中需要自己去配置东西,现在springboot帮我们做了;
整合之前学的javaEE,解决方案和自动配置的东西都在spring-boot-autoconfigure-XXX.RELEASE.jar这个包里
它会将所有需要导入的组件,以类名的方式返回,这些组件就会被添加到容器里;
容器中也会存在非常多的xxxAutoConfiguration的文件,就是因为这些类的存在给容器中导入了该场景下所需要的所有组件,并自动配置,@Configuration,javaConfig!
有了自动配置类的出现,免去了我们手动去编写配置文件的工作了。

关于springboot的理解:
自动分配
run(): 推断应用的类型是普通类型的项目还是Web项目
查看并加载所有可用初始化器。设置在initializers属性中
找出所有的应用程序监听器,设置到listeners属性中
推断并设置main方法的定义类,找到运行的主类

这将全面接管springMVC的配置!!!!!

标签:启动器,springBoot,spring,配置,boot,自动,springboot
From: https://www.cnblogs.com/yysskk/p/18066745

相关文章

  • k01创建第一个springboot程序
    创建springboot程序的方式有两种1、在spring官网创建,https://start.spring.io/2、使用idea程序创建。一般情况下我们都是使用idea软件创建的,因为这样会更方便1、使用spring官网创建(SpringInitializr)(初学使用)(一般不用)我们只需要在网站上输入(https://start.spring.i......
  • [springboot] SpringBoot启动成功后因actuator健康检测报:Redis health check failed/
    0序背景:项目中引入了spring-boot-starter-actuator健康检测模块<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency>1问题描述确认微服务刚启动后,因K8S集群周期性定时(默认每隔1......
  • SpringBoot自动配置原理解析
    一、什么是SpringBoot自动配置首先介绍一下什么是SpringBoot,SpringBoost是基于Spring框架开发出来的功能更强大的Java程序开发框架,其最主要的特点是:能使程序开发者快速搭建一套开发环境。SpringBoot能将主流的开发框架(例如SpringMVC,Dubbo,Mybatis,Redis等),做到像Maven导......
  • springboot初始化时执行方法
    参考:http://www.360doc.com/content/23/0303/15/81790262_1070284511.shtml监听容器刷新完成扩展点ApplicationListener<ContextRefreshedEvent>ApplicationContext事件机制是观察者设计模式实现的,通过ApplicationEvent和ApplicationListener这两个接口实现ApplicationContext......
  • 基于vue+springboot高校宿舍管理系统
    本项目是一款基于springBoot的高校宿舍管理系统。本系统主要功能包含:(1)基本信息管理基本信息分为学生信息和宿舍信息两部分,其功能是负责维护这些信息,对它们进行增删查改等操作。宿舍分配管理(2)根据给定的宿舍信息与学生信息,按照一定的规则自动地给还未分配宿舍的学生分配宿舍,......
  • SpringBoot3.x使用Druid
    SpringBoot3.x使用DruidBiliBili视频官网:druid/druid-spring-boot-starteratmaster·alibaba/druid参考文章SpringBoot3集成Druid连接池详解起步安装最新版本查询:https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-3-starter注意:Druid配......
  • java springboot拦截器的实现及用法
     1.前景,有时候我们在不同的地方需要使用用户的信息,我们可以使用threadLocal存储信息,这样我们在在这个线程随时使用用户信息了,不用自己在写一段冗余代码了,这时候使用拦截器就很不错 2.实现1.实现HandlerInterceptor2.重写实现方法  preHandle:在业务处理器处理请......
  • springboot3开发文档
    版本号jdk17springboot3mysql8.0mavenidea自带springboot依赖注入pom.xml命名规范:官方提供的场景:命名为:spring-boot-starter-*第三方提供场景:命名为:*-spring-boot-starter父工程坐标对各种常用依赖的版本进行了管理,我们的项目需要以这个项目为父工程,这样我们就......
  • springboot注册
    查询用户,判断用户名是否被占用。1.没有被占用,则注册2.被占用,则显示用户名已被占用!service:UserServiceimportcom.example.pojo.User;publicinterfaceUserService{//根据用户名查询用户UserfindByUserName(Stringusername);}mapper:UserMapper@Map......
  • springboot项目构建docker镜像
    springboot项目构建docker镜像springboot项目构建成docker镜像的两种方式手动方式:将springboot项目打成一个jar包,将jar包上次到服务器的指定目录下(具备docker环境),然后在同一目录下编写Dockerfile文件,通过dockerbuild命令构建镜像,之后把镜像发布到远程仓库中。半自动方式:......