SpringBoot学习历程(一):简单入门

SpringBoot简单入门

Spring Boot好处: 。。。。。一大堆,本人就不罗列了。

1.1 准备工作

  1. JDK 1.8+
  2. Maven 3.2+ (3.6.1安装教程)
  3. IntelliJ IDEA(2019.2.2安装教程)
    注意:
    JDK 安装、Maven 安装、Git 安装和 IntelliJ IDEA 开发工具安装可参照对应教程链接。

1.2 创建一个Spring Boot工程

其实 Spring Boot 工程本质上就是一个 Maven 工程,这里说下两种不同的创建方式:

1.2.1 在线创建

这是官方提供的创建方法,使用http://start.spring.io/来构建一个简单的Spring Boot项目。

  1. 访问:http://start.spring.io/
  2. 选择构建工具 Maven Project、Java、Spring Boot 版本 2.1.8 以及一些工程基本信息,可参考下图所示:
    SpringInitializr
  3. 点击Generate Project下载项目压缩包
  4. 导入到你的工程,如果是IDEA,则需要:
    a.菜单中选择File–>New–>Project from Existing Sources...
    b.选择解压后的项目文件夹,点击OK。
    c.点击Import project from external model并选择Maven,点击Next到底为止。
    d.选择Java SDK为jdk1.8。

1.2.2 IDEA创建

菜单中选择File–>New–>Project,选择Spring Initializr,然后如下图操作:


1

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

1.2.3 项目结构

项目结构

这是默认的工程结构:
java 目录中是编写代码的源目录,test 目录是编写单元测试的目录。
resources 目录会有 application.properties 应用配置文件,还有默认生成的 static 和 templates 目录,static 用于存放静态资源文件,templates 用于存放模板文件。可以在 application.properties 中自定义配置资源和模板目录。
pom.xml:Maven构建说明文件。

1.3 解析pom.xml

1.3.1 spring boot 父级依赖


 
     org.springframework.boot
     spring-boot-starter-parent
     2.1.8.RELEASE
      
 

这是Spring Boot父级依赖,parent它继承自 spring-boot-dependencies,这个里边定义了依赖的版本,也正是因为继承了这个依赖,所以我们在写依赖时才不需要写版本号。

1.3.2 spring-boot-starter-xx 启动依赖


    org.springframework.boot
    spring-boot-starter-mail

Spring Boot提供了很多”开箱即用“的依赖模块,都是以spring-boot-starter-xx作为命名的,通过提供众多起步依赖降低项目依赖的复杂度。

1.3.3 Spring Boot Maven插件


    
        
            org.springframework.boot
            spring-boot-maven-plugin
        
    

把项目打包成一个可执行的jar。

1.4 应用类

1.4.1启动应用类

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}

@SpringBootApplication,这是一个组合注解,主要包含了:

  1. @SpringBootConfiguration(包含@Configuration),也是一个组合注解
    在Spring Boot项目中替代@Configuration
  2. @EnableAutoConfiguration,Spring Boot的强大之处,
    该注解会使spring boot根据项目的jar包进行自动配置,查看maven依赖
    可以看到有一个spring-boot-autoconfigure-xxx.jar,这里有很多spring配置类,
    如:我们添加了spring-boot-starter-web, 项目中自动引入SpringMVC 的相关jar,Spring Boot就自动配置tomcat和springMVC相关bean
  3. @ComponentScan,默认扫描@SpringBootApplication所在类目录及它的子目录

@SpringBootApplication的exclude属性:关闭配置,
如果我们在项目中引入了solrj的相关包,spring boot会自动为我们创建solr
的相关bean,但有时候我们希望自己配置bean,这时可以这样:
@SpringBootApplication(exclude={SolrAutoConfiguration.class})
这样就可以自己写java spring 配置类或xml,配置solr的相关bean了
同样的,如果你不想引入Spring Boot默认的依赖可以在pom.xml中使用标签,看下图:


在这里插入图片描述

1.4.2 Controller类

@RestController
@RequestMapping("/home")
public class EmailController {
    .....
}
  1. @RestController:提供实现了REST API,可以服务JSON,XML或者其他。
  2. @RequestMapping:提供路由映射信息。

你可能感兴趣的:(SpringBoot学习历程(一):简单入门)