spring Boot笔记啊


springboot入口类:

1. 入口类命名通常以*Application结尾,前缀使用项目的名称进行命名
2. 在入口类上添加@SpringBootApplication注解:注明当前类为入口
3. 在main方法中使用SpringApplication.run() 方法启动应用

springboot的启动流程:

springboot中的常用配置


在application.properties进行修改端口号

常用配置项:

配置端口号

server.port=80
#设置应用上下文来区分不同的访问路径
server.servlet.context-path=/myspringboot
#将日志写入到文件当中去
logging.file=E:/myspringboot.log

只打印错误信息,修改级别debug->info->warn->error->fatal以此提高,默认是info

logging.level.root=info
debug=true
#设置数据源
spring.datasource.xa.data-source-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=root

修改级别之后不是info后可以看到没有info信息

springboot中支持两种配置文件

* 属性文件:application.properties
* YAML格式:application.yml
* 简介:json格式
* 格式:key:(空格)value
* 使用空格代表层级关系,以“:”结束

开启debug

debug: true
# logging.level.root
# loggin.file
logging:
level:
root: info
file: E:/myspringboot.log
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/test
data-username: root
data-password: root

springboot自定义配置项

通常放在yml文件中

  1. 在yml文件中书写属性

    自定义属性

    mall:
    config:
    name: 爱美商城
    description: 这是一家化妆品特卖网站
    hot-sales: 20
    show-advert: true

  2. 在控制器中进行书写信息

    package com.imooc.myspringboota.controller;

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

    /**
    * Created by Intellij IDEA.
    * User: 陈亚萌
    * Date: 2019/9/1
    */
    @Controller
    public class MyController {
    //value注解是在启动时,自动扫描yml文件,将key值注入进来
    @Value("${mall.config.name}")
    private String name;
    @Value("${mall.config.description}")
    private String description;
    @Value("${mall.config.hot-sales}")
    private Integer hosSales;
    @Value("${mall.config.show-advert}")
    private Boolean showAdvert;

    @RequestMapping("/out")
    @ResponseBody
    public String out(){
    return "success";
    }
    @RequestMapping("/info")
    @ResponseBody
    public String info(){
    return String.format("name:%s,description:%s,hot-sales:%s,show-advert:%s",
    name,description,hosSales,showAdvert
    );

    }
    }

环境配置文件

  • springboot可针对不同的环境提供不同的profile文件
  • profile的默认命名格式为:application-{env}.yml
  • 使用spring.profiles.active选项来指定不同的profile。
    • 解决的问题:

      • 解决线上线下的配置问题,在多个环境下开发,就有可能需要多个配置文件。
    • 步骤:

      • 首先你得有个总的配置文件,比如application.yml——表示总配置文件,在这个文件里面可以指定当前的配置文件是哪个文件

      • 分别书写两个配置文件,分别是application-dev.yml和application-prd.yml,里面的配置如下:

        • 在dev中:

          开启debug

          debug: true
          # logging.level.root
          # loggin.file
          logging:
          level:
          root: info
          file: E:/myspringboot.log

          spring:
          datasource:
          driver-class-name: com.mysql.jdbc.Driver
          url: jdbc:mysql://localhost:3306/test
          data-username: root
          data-password: root

          自定义属性

          mall:
          config:
          name: 爱美商城
          description: 这是一家化妆品特卖网站
          hot-sales: 20
          show-advert: true

        • 在prd.yml文件中:

          开启debug

          debug: false
          # logging.level.root
          # loggin.file
          logging:
          level:
          root: info
          file: /local/user/app-prd.log

          spring:
          datasource:
          driver-class-name: com.mysql.jdbc.Driver
          url: jdbc:mysql://114.123.11.1:3307/test
          data-username: root
          data-password: root

          自定义属性

          mall:
          config:
          name: 优美商城
          description: 这是一家化妆品特卖网站
          hot-sales: 20
          show-advert: true
          server:
          port: 80

      • 在主配置文件中:

        主配置文件

        下面有俩配置文件,一个是application-dev.yml,apolication-prd.yml

        当前环境为dev

        spring:
        profiles:
        active: prd

        开启debug

        debug: true

        logging.level.root

        loggin.file

        logging:

        level:

        root: info

        file: E:/myspringboot.log

        spring:

        datasource:

        driver-class-name: com.mysql.jdbc.Driver

        url: jdbc:mysql://localhost:3306/test

        data-username: root

        data-password: root

        自定义属性

        mall:

        config:

        name: 爱美商城

        description: 这是一家化妆品特卖网站

        hot-sales: 20

        show-advert: true

        其中active是指的不同配置文件的环境。

      测试结果:

当文件是prd的时候:

当文件是dev的时候:

打包与运行

1. 利用maven的package命令,生成可独立运行的jar包
2. 利用java -jar xxx.jar命令启动springboot应用
3. jar包可自动加载同目录的application配置文件

  • 步骤
    • 点击edit configuration->添加->选择maven->


      打包成功


成功部署

如果想切换开发环境:
将所有的配置文件复制到同jar包一起的文件夹下:

 posted on 2019-09-01 16:43  ben跑的换行符  阅读(976)  评论(0)    收藏  举报