SpringBoot入门

SpringBoot的目录结构

/src/main 项目根目录
/java java源代码
/resources 资源目录
/resources/static 静态资源目录
/resources/templates 表示层页面目录
/resources/application.properties SpringBoot配置文件
/test 测试文件目录

使用Maven创建SpringBoot项目

  • 点击IDEA create new project 选择Maven 直接点击下一步
    SpringBoot入门_第1张图片
    create new project
  • 设置GroupIdArtifactId, 再点击next, 再点击Finish项目创建完成
    SpringBoot入门_第2张图片
    设置GroupId和ArtifactId
  • resource里创建static文件, templates文件夹和application.properties
    SpringBoot入门_第3张图片
    创建固定需要的目录结构
  • 添加SpringBoot的依赖, 在pom.xml里添加如下配置
    • 第一种
      
          
              
                  org.springframework.boot
                  spring-boot-maven-plugin
                  1.5.14.RELEASE
                  
                      
                      com.rui.springboot.MySpringBootAppliacation
                  
                  
                      
                          
                              repackage
                          
                      
                  
              
          
      
      
          
              org.springframework.boot
              spring-boot-starter-web
              1.5.14.RELEASE
          
    
          
              org.springframework.boot
              spring-boot-maven-plugin
              1.5.14.RELEASE
          
      
    
    • 第二种(注: 如果出现SpringBoot依赖的jar包下载不下来的情况, 请使用第一种)
        
          org.springframework.boot
          spring-boot-starter-parent
          1.5.14.RELEASE
      
      
          
              org.springframework.boot
              spring-booot-starter-web
          
      
      
          
              
                  org.springframework.boot
                  spring-boot-maven-plugin
              
          
      
    
  • 添加项目入口, 项目目录结构的MySpringBootApplication, 添加@SpringBootApplication注解以后, 点击右键run即可运行项目
// 说明这是一个SpringBoot的入口类
@SpringBootApplication
public class MySpringBootAppliacation {
    public static void main(String[] args) {
        SpringApplication.run(MySpringBootAppliacation.class);
    }
}
  • 项目运行成功


    SpringBoot入门_第4张图片
    项目运行成功

使用Spring Initializr构建Spring Boot应用

  • 创建新项目选择Spring Initializr,JDK选择1.8, 选择Default URL
    SpringBoot入门_第5张图片
    create new project
  • 点击next, 输入GroupArtifact
    SpringBoot入门_第6张图片
    输入项目信息
  • 左侧选择web, 右侧勾选Spring web, 点击next
    SpringBoot入门_第7张图片
    image.png
  • 输入项目名, 选择项目路径, 点击Finish完成创建


    SpringBoot入门_第8张图片
  • 会自动生成resource里的文件目录, pom.xml里的配置, 以及项目入口类, 不需要手动设置配置


    SpringBoot入门_第9张图片

SpringBoot启动流程与常用配置

  • SpringBoot的入口类
    • 入口类命名通常以*Application结尾
    • 入口类上增加@SpringBootApplication注解
    • 利用SpringApplication.run()方法启动应用
  • SpringBoot启动流程
    SpringBoot入门_第10张图片
    SpringBoot启动流程
  • SpringBoot中的常用配置
    配置名称 默认值 描述
    server.port 8080 端口号
    server.servlet.context-path / 设置上下文
    logging.file 日志输出路径
    logging.level info 最低日志输出级别
    debug false 开启/关闭调试模式
    spring.datasource.* 与数据库相关的设置
    application.properties中写入配置
      # 端口号
      server.port=80
      # 上下文
      server.servlet.context-path=/myspringboot
      # 日志
      logging.file=e:/myspringboot.log
      # 提高日志的输出级别 debug/info/warn/error/fatal(灾难级别, 服务器宕机)
      logging.level.root=error
      # debug 是否启动调试模式
      debug=false
      # spring.datasource.* 设置数据源. 设置jdbc的相关参数
      ## 设置JDBC的启动类
      spring.datasource.driver-class-name=com.mysql.jdbc.Driver
      ## 设置数据库的url
      spring.datasource.url=jdbc:mysql://localhost:3306/test
      ## 设置数据库的账号
      spring.datasource.username=root
      ## 设置数据库的密码
      spring.datasource.password=111111
    

SpringBoot配置文件

在日常开发中, 如果将配置都写在application.properties中, 太过于死板, 不利于运维修改配置信息

  • 在SpringBoot中支持两种配置文件
    • 属性文件: application.properties
    • YAML格式: application.yml
  • YAML语法简介
    • YAML是一种简洁的非标记语言, YAML以数据为中心, 使用空白, 缩进, 分行组织数据, 从而使得表示更加简洁易读.
  • YAML语法格式
    • 标准格式: key:(空格)value
    • 使用刻个代表层级关系, 以:结束
  • resources下创建application.yml文件, 即可实现和以上同样的配置
    debug: false
    # 在1.5.x的版本里logging
    #logging:
    #  level: info
    #  file: ./e/
    logging:
      level:
        root: info
      file: ./e/
    
    spring:
      datasource:
        driver-class-name: com.mysql.jdbc.Driver
        url: jdbc:mysql://localhost:3306/test
        username: root
        password: root
    
  • 自定义配置项
    SpringBoot允许我们自定义应用配置项, 在程序运行时允许动态加载, 这为程序提供了良好的可维护性
    在实际的项目开发中, 我们通常将项目的自定义信息放在配置文件中.
    debug: false
    
    logging:
      level:
        root: info
      file: ./e/
    spring:
      datasource:
        driver-class-name: com.mysql.jdbc.Driver
        url: jdbc:mysql://localhost:3306/test
        username: root
        password: root
    # 自定义配置
    course:
      config:
        name: 李四
        age: 14
        isStudent: true
    
    配置读取
    @Controller
    public class MyController {
        @Value("${course.config.name}")
        private String name;
        @Value("${course.config.age}")
        private Integer age;
        @Value("${course.config.isStudent}")
        private Boolean isStudent;
    }
    
  • 环境配置文件
    • SpringBoot可针对不同的环境提供不同的Profile文件
    • Profile文件的默认命名格式为application-{env}.yml
    • 使用spring.profiles.active选项来指定不同的profile
    • resources下创建三个yml文件, 名字格式固定
      SpringBoot入门_第11张图片
      在resources下创建三个yml文件, 名字格式固定
    • application-dev.yml为测试环境的配置文件
    debug: false
    
    logging:
      level:
        root: info
      file: ./e/
    
    spring:
      datasource:
        driver-class-name: com.mysql.jdbc.Driver
        url: jdbc:mysql://localhost:3306/test
        username: root
        password: root
    course:
      config:
        name: 李四
        age: 14
        isStudent: true
    
    • application-prd.yml为正式环境的配置文件
      debug: false
    
    logging:
      level:
        root: info
      file: ./e/
    spring:
      datasource:
        driver-class-name: com.mysql.jdbc.Driver
        url: jdbc:mysql://11.11.11:3306/test
        username: root
        password: root
    course:
      config:
        name: 张三
        age: 14
        isStudent: true
    server:
      port: 80
    
    • 项目的配置文件application.yml
      spring:
      profiles:
        active: prd # prd=>正式环境. dev=>测试环境, 改变active的值, 即可切换配置文件
    

打包与运行

  • 利用Mavenpackage命令, 生成可独立运行的jar
    SpringBoot入门_第12张图片
    利用`Maven`的`package`命令, 生成可独立运行的`jar`包

    运行即可生成jar
  • 利用java -jar xxx.jar命令启动Spring Boot应用
    • 进入jar包所在的文件内, 执行jar -jar myspringboot-0.0.1-SNAPSHOT.jar即可启动
  • jar包可自动加载同目录下的application配置文件
    • 如果已经启动还想切换环境, 将resources下的yml文件复制到和jar包同目录下, Spring Boot会优先加载同级目录下的yml文件, 切换完毕以后, 再次执行jar -jar myspringboot-0.0.1-SNAPSHOT.jar.

你可能感兴趣的:(SpringBoot入门)