美文网首页
Spring Boot的配置文件

Spring Boot的配置文件

作者: 蘑菇姐夫 | 来源:发表于2018-03-28 15:25 被阅读0次

    Spring Boot使用一个全局的配置文件application.properties或者application.xml,配置文件放在src/main/resources目录下。properties是我们常见的一种配置文件,Spring Boot不仅支持properties这种类型的配置文件,也支持xml语言的配置文件,我这里以properties类型的配置文件为例来看几个案例。

    1. 修改Tomcat默认端口和默认访问路径

    Tomcat默认端口是8080,我将之改为8081,默认访问路径是http://localhost:8080,我将之改为http://localhost:8081/helloworld
    下面通过application.properties文件中添加如下代码实现:

    server.context-path=/helloworld
    server.port=8081
    

    在Controller层,代码如下:

    @RestController
    public class Example {
        @RequestMapping("/hello")
        String hello() {
            return "Hello World! Test!";
        }
    }
    

    启动Project,在未修改端口和默认访问路径时,直接http://127.0.0.1:8080/hello访问,修改后在浏览器中就得这样来访问了http://127.0.0.1:8080/helloworld/hello

    默认端口和默认路径修改.png

    2. 属性配置

    在配置文件application.properties中定义属性,然后在代码中直接使用@Value注入即可。
    一般我们基于类型安全的配置方式,就是将properties属性和一个Bean关联在一起,这样使用起来会更加方便。我么来看看这种方式怎么实现。

    • 首先,我们在src/main/resources文件夹下新建一个config文件夹,该文件夹一般放一些对象的配置文件,这里我们创建文件book.propertites文件,内容如下:
    #定义book的属性
    book.name=Python
    book.author=David
    book.price=28
    
    • 然后,创建Book Bean,并注入properties文件中的值:
    import lombok.Data;
    import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.stereotype.Component;
    
    /**
     * Created by 蘑菇姐夫 on 2018/3/28.
     * 举例使用配置注入
     */
    @Data
    @Component
    @ConfigurationProperties(prefix = "book",locations = "classpath:config/book.properties")
    public class BookConfig {
        private String name;
        private String auth;
        private String price;
    
    }
    

    其中,prefix是指前缀,location指定要注入文件的位置。

    • 最后,上接口端代码:
    import com.mogujie.dianaTest.domain.BookConfig;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.core.env.Environment;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class Example {
    
        //注入Book Bean
        @Autowired
        private BookConfig bookConfig;
    
        @RequestMapping("/book")
        String book(){
            return "name= "+bookConfig.getName()+",auth="+bookConfig.getAuth()+",price="+bookConfig.getPrice();
        }
    
    }
    
    • 启动Project,接口结果如下:


      属性配置.png

    3. 日志配置

    默认情况下Spring Boot使用Logback作为日志框架,如果有需要我们可以手动配置日志级别以及日志输出位置,相比于我们在Spring容器中写的日志输出代码,这里的配置更简单,只需要在application.properties中添加如下代码:

    #配置日志
    //日志输出位置
    logging.file=/Users/蘑菇姐夫/Documents/mogujie/autoTest/dianaTest/debuglog.log
    //日志级别
    logging.level.org.springframework.web=info 
    //日志配置
    logging.config=classpath:logback-spring.xml
    

    4. 测试环境切换

    //todo

    相关文章

      网友评论

          本文标题:Spring Boot的配置文件

          本文链接:https://www.haomeiwen.com/subject/fanycftx.html