Spring应用开发流程

springboot配置软件 springboot项目配置_配置文件

SpringBoot应用开发流程

springboot配置软件 springboot项目配置_jar包_02

SpringBoot的核心特新

极低的学习成本。可独立运行的Spring项目。“习惯优于配置”,极大的提高了开发效率。极简的组件依赖,自动发现与自动装配。提供运行时的应用监控。与分布式架构和云计算的天然集成。

环境准备

安装 JDK 8 以上版本
安装Intellij IDEA Ultimate (旗舰版)

SpringBoot目录结构

/src/main

项目根目录

/java

Java源代码目录

/resources

资源目录

/resources/static

静态资源目录

/resources/templates

表示层页面目录

/resources/application.properties

Spring Boot配置文件

/test

测试文件目录

创建工程

springboot配置软件 springboot项目配置_jar包_03

新建文件夹和文件

springboot配置软件 springboot项目配置_jar包_04

在pom.xml中进行配置

配置parent

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
    </parent>

spring-boot-stater-parent帮我们引入了springboot的所有核心的组件,所以其他的springboot组件都要依赖于他。

配置dependency

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

配置build

<build>
        <plugins>
            <!--该插件的作用是将springboot打成一个独立的可以发布的jar包-->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

因为我使用的是MacOs,所以刚开始创建的工程,所要存放jar包的目录的格式可能 不是规范的,所以在External library中没有找到jar包,所以需要进行设置,更改存放jar包的位置。

springboot配置软件 springboot项目配置_springboot配置软件_05

重新设置存放jar包的位置

springboot配置软件 springboot项目配置_spring_06

这是就可以在External library中找到jar包了。在程序当中也可以直接使用了。

编写controller

package com.imooc.springmvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class MyController {

    @RequestMapping("/out")
    @ResponseBody
    public String out(){
        return "success";
    }
}

编写启动类

package com.imooc.springmvc;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class MySpringBootApplication {
    public static void main(String[] args) {
        //启动SpringBoot应用
        SpringApplication.run(MySpringBootApplication.class);
    }
}

启动应用

2019-04-22 15:07:24.381  INFO 986 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2019-04-22 15:07:24.386  INFO 986 --- [           main] c.i.springmvc.MySpringBootApplication    : Started MySpringBootApplication in 18.943 seconds (JVM running for 25.528)
2019-04-22 15:08:54.242  INFO 986 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring FrameworkServlet 'dispatcherServlet'
2019-04-22 15:08:54.243  INFO 986 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization started
2019-04-22 15:08:54.262  INFO 986 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization completed in 19 ms

进行访问url   :  http://localhost:8080/out

springboot配置软件 springboot项目配置_springboot配置软件_07

第二种搭建spring boot应用的方式,使用spring initializr

springboot配置软件 springboot项目配置_配置文件_08

springboot配置软件 springboot项目配置_jar包_09

springboot配置软件 springboot项目配置_springboot配置软件_10

然后下一步,直到finish

SpringBoot启动流程

springboot配置软件 springboot项目配置_spring_11

spring boot常用配置

springboot配置软件 springboot项目配置_springboot配置软件_12

application.properties是spring boot的默认配置文件,用于修改spring boot的默认配置项。

最常用的spring boot配置项,在application.properties中进行配置

springboot配置软件 springboot项目配置_jar包_13

spring boot支持的两种配置文件

springboot配置软件 springboot项目配置_配置文件_14

yaml语法

springboot配置软件 springboot项目配置_配置文件_15

可见,使用yml格式的application文件时,代码的结构性强,不太容易混淆配置信息。可读性高,更便捷。

自定义配置项

springboot配置软件 springboot项目配置_jar包_16

在yml配置文件中自定义配置信息

springboot配置软件 springboot项目配置_springboot配置软件_17

在controller中设置对应的属性

springboot配置软件 springboot项目配置_springboot配置软件_18

@Value("${key_name.key1_name2}")可以取出yml配置文件中对应key所关联的value,然后注入到@Value注解下方的私有的Controller的成员变量中。

springboot配置软件 springboot项目配置_spring_19

spring可以针对不同的环境提供不同的profile,profile可以理解为环境配置文件

springboot配置软件 springboot项目配置_jar包_20

springboot配置软件 springboot项目配置_jar包_21

打包与运行

springboot配置软件 springboot项目配置_配置文件_22

springboot配置软件 springboot项目配置_配置文件_23

application.yml是主配置文件,它起到调度的作用。通过把yml配置文件放在和使用maven打成的jar包放在同级的目录下,来更改使用配置文件,也就是说,在application.yml中进行相应的配置,来使得jar包运行是决定是读取application-dev.yml还是读取application-prd.xml,从而完成在开发环境和生产环境之间的切换。

springboot配置软件 springboot项目配置_spring_24