Spring Boot 基础入门解释

一,Spring Boot 入门

1.Spring Boot 简介

​ 简化Spring应用级开发的一个框架,整个Spring技术栈的一个大整合

​ J2EE开发的一站式解决方案。

2.微服务

​ 微服务:其实一种架构风格

​ 一个应用应该是一组小型服务,个服务之间可以通过HTTP的方式进 行互通,每一个服务元素最终都是一个可独立替换和独立升级的软件 单元

3.SpringBoot Hello Word
1.创建一个maven工程
2.导入springboot相关依赖
<parent>    
    <groupId>org.springframework.boot</groupId>    			<artifactId>spring-boot-starter-parent</artifactId>    	   <version>1.5.9.RELEASE</version>
</parent>
<dependencies>    
    <dependency>        							           <groupId>org.springframework.boot</groupId>	             <artifactId>spring-boot-starter-web</artifactId>         </dependency>
 </dependencies>
3.编写一个主程序:启动spring boot 应用
/** * @author lzq 
* @date 2019/11/21 - 21:30 
* * SpringBootApplication 来标注一个主程序类,说明这是一个springboot应用 */
@SpringBootApplication
public class HelloWorld {    
    public static void main(String[] args) {        
        //spring应用启动起来        
        SpringApplication.run(HelloWorld.class ,args);    
    }}
4.编写相关的Controller Service
@Controller
public class HelloController {
    @ResponseBody
    @RequestMapping("/hello")
    public String hello(){
    return "Hello World";
    }
}
5.运行主程序测试
6.简化部署
 <!--这个插件,可以将应用打包成一个可执行的jar包-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

​ 将这个应用达成jar包,直接使用Java -jar命令执行 ,在没有Tomcat情况 下也可以运行,因为jar包自带运行环境

​ [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wYXWAbue-1589979140910)(E:\文档\图片\spring boot\springboot.PNG)]

4.Hello Word 探究
1.对POM文件探究
1.父项目
 <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.9.RELEASE</version>
</parent>
     
  它的父项目是
     <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.9.RELEASE</version>
        <relativePath>../../spring-boot-dependencies</relativePath>
</parent>
     它是真正管理spring boot应用里面的所有依赖版本
     它是Spring Boot的版本仲裁中心
     以后我们导入依赖默认是不需要写版本的(没有在dependencies里面的管理的依赖自然要写版本)
2.导入的依赖
 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
 </dependencies>

spring-boot-starter-web

spring-boot-starter : spring-boot场景启动器:帮我们导入了web模块正常运行所依赖的组件

Spring Boot将所有的功能场景都会抽取出来,做成一个个的starters(启动器),只需要在项目里面引入这些starter相关场景的所用依赖都会导进来,需要什么功能就导入什么场景的启动器

2.主程序类,主入口
@SpringBootApplication

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z8PFwOa2-1589979140913)(E:\文档\图片\spring boot\SpringBootApplication.png)]

@SpringBootApplication

Spring Boot应用把它标注在某个类上面说明这些类是SpringBoot的主配置类,springboot就应该运行这类的main方法来启动SpringBoot应用

@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(excludeFilters = {
		@Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
		@Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })
public @interface SpringBootApplication {

@SpringBootConfiguration SpringBoot的配置类:

​ 标注在某类上,表明这是一个SpringBoot的配置类

​ 配置类上用@Configuration来标注这个注解

​ 配置类就是配置文件:配置类也是一个容器的组件;@Component

@EnableAutoConfiguration 开启自动配置功能

​ 以前需要配置的东西,Spring Boot帮我们自动配置

​ @EnableAutoConfiguration告诉SpringBoot开启自动配置,这样自动配置才能生效

@AutoConfigurationPackage
@Import(EnableAutoConfigurationImportSelector.class)
public @interface EnableAutoConfiguration {

@AutoConfigurationPackage :自动配置包

@Import(AutoConfigurationPackages.Registrar.class)在AutoConfigurationPackage注解上标注

​ Spring的底层注解@import,给容器导入一个组件,导入的组件AutoConfigurationPackages.Registrar.class将主配置 @SpringBootApplication标注的类)的所在包及其下面所有子包里面的所有组件扫描到spring容器

@Import(EnableAutoConfigurationImportSelector.class)

​ 给容器中导入EnableAutoConfigurationImportSelector(一些的组件选择器)将所有需要的组件一全类名的 方式返回,这些组件就会被添加到容器内

​ 最终会给容器中导入非常多的自动配置类(xxxAutoConfiguration);就是给容器中导入这个场景需要的所有 配件,并配置好这些组件。

​ 有了自动配置类我们就免去了手动编写配置注入功能等工作

5.使用Spring Initializer快捷创建SpringBoot项目

​ 主程序已经帮我们生成了,我们只需按照逻辑开发项目

​ resources文件夹中目录结构

​ static:保存所有的静态资源:js css images

​ templates:保存所有的模板页面(Spring Boot默认jar包使用嵌入式的Tomcat,默认不支持jsp 页面);可以使用模板引擎(freemarker,thymeleaf)

​ application.properties:SpringBoot应用的配置文件;可以修改一些默认设置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Unknown To Known

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值