• Springboot读取配置文件及自定义配置文件


    1.创建maven工程,在pom文件中添加依赖

     1   <parent>
     2     <groupId>org.springframework.boot</groupId>
     3     <artifactId>spring-boot-starter-parent</artifactId>
     4     <version>1.5.9.RELEASE</version>
     5     </parent>
     6 
     7   <dependencies>
     8     <dependency>
     9         <groupId>org.springframework.boot</groupId>
    10         <artifactId>spring-boot-starter-web</artifactId>
    11     </dependency>
    12     <!-- 单元测试使用 -->
    13     <dependency>
    14         <groupId>org.springframework.boot</groupId>
    15         <artifactId>spring-boot-starter-test</artifactId>
    16     </dependency>
    17   
    18     <dependency>
    19       <groupId>junit</groupId>
    20       <artifactId>junit</artifactId>
    21       <scope>test</scope>
    22     </dependency>
    23    
    24   </dependencies>

    2.创建项目启动类 StartApplication.java

     1 package com.kelly.controller;
     2 
     3 import org.springframework.boot.SpringApplication;
     4 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
     5 import org.springframework.context.annotation.ComponentScan;
     6 import org.springframework.context.annotation.Configuration;
     7 
     8 @Configuration
     9 @EnableAutoConfiguration //自动加载配置信息
    10 @ComponentScan("com.kelly")//使包路径下带有注解的类可以使用@Autowired自动注入
    11 public class StartApplication {
    12     public static void main(String[] args) {
    13         SpringApplication.run(StartApplication.class, args);
    14     }
    15 }

    3.编辑配置文件application.properties及自定义配置文件define.properties

      application.properties

    #访问的根路径
    server.context-path=/springboot
    #端口号
    server.port=8081
    #session失效时间
    server.session-timeout=30
    #编码
    server.tomcat.uri-encoding=utf-8
    
    test.name=kelly
    test.password=admin123

      define.properties

    defineTest.pname=test
    defineTest.password=test123

    4.读取application.properties配置文件中的属性值

      FirstController.java

     1 package com.kelly.controller;
     2 
     3 import org.springframework.beans.factory.annotation.Value;
     4 import org.springframework.stereotype.Controller;
     5 import org.springframework.web.bind.annotation.RequestMapping;
     6 import org.springframework.web.bind.annotation.ResponseBody;
     7 
     8 
     9 @Controller
    10 public class FirstController {
    11     
    12     @Value("${test.name}")
    13     private String name;
    14     
    15     @Value("${test.password}")
    16     private String password;
    17     
    18     @RequestMapping("/")
    19     @ResponseBody
    20     String home()
    21     {
    22         return "Hello Springboot!";
    23     }
    24     
    25     @RequestMapping("/hello")
    26     @ResponseBody
    27     String hello()
    28     {
    29         return "name: " + name + ", " + "password: " + password;
    30     }
    31 }

    5.打开浏览器,输入 http://localhost:8081/springboot/hello 即可看到结果

    6.使用java bean的方式读取自定义配置文件 define.properties

      DefineEntity.java

     1 package com.kelly.entity;
     2 
     3 import org.springframework.boot.context.properties.ConfigurationProperties;
     4 import org.springframework.context.annotation.PropertySource;
     5 import org.springframework.stereotype.Component;
     6 
     7 @Component
     8 @ConfigurationProperties(prefix="defineTest")
     9 @PropertySource("classpath:define.properties")
    10 public class DefineEntity {
    11     
    12     private String pname;
    13     
    14     private String password;
    15 
    16     public String getPname() {
    17         return pname;
    18     }
    19 
    20     public void setPname(String pname) {
    21         this.pname = pname;
    22     }
    23 
    24     public String getPassword() {
    25         return password;
    26     }
    27 
    28     public void setPassword(String password) {
    29         this.password = password;
    30     }
    31     
    32     
    33 }

      SecondController.java

     1 package com.kelly.controller;
     2 
     3 import org.springframework.beans.factory.annotation.Autowired;
     4 import org.springframework.stereotype.Controller;
     5 import org.springframework.web.bind.annotation.RequestMapping;
     6 import org.springframework.web.bind.annotation.ResponseBody;
     7 
     8 import com.kelly.entity.DefineEntity;
     9 
    10 @Controller
    11 public class SecondController {
    12     
    13     @Autowired
    14     DefineEntity defineEntity;
    15     
    16     @RequestMapping("/define")
    17     @ResponseBody
    18     String define()
    19     {
    20         return "test.name:" + defineEntity.getPname() + ", test.password:" + defineEntity.getPassword();
    21     }
    22 }

    7.打开浏览器,访问 http://localhost:8081/springboot/define,可以看到输出结果

    补充:我的项目的目录结构

    如果遇到问题也可以留言,我如果看到的话,不管会不会都会给与回复的,我们可以共同讨论,一起学习进步。

  • 相关阅读:
    sql server 修改/查看 主键初始值
    国内外邮箱正则验证及js示例
    修改表中主键 标识/初始值
    主角场景Shader效果:遮挡透明
    主角场景效果:人物阴影
    主角场景Shader效果:描边
    主角场景Shader效果:光影
    Unity ZTest深度测试 & ZWrite深度写入
    天气系统:雨、雪
    UnityShader 序列帧动画效果
  • 原文地址:https://www.cnblogs.com/kellyJAVA/p/8030395.html
Copyright © 2020-2023  润新知