为了让解释更加清晰,我将分为以下几个步骤来讲解Spring Boot项目打成jar包后加载外部配置文件的操作方法。
1. 添加外部配置文件
在项目的根目录下,添加配置文件,如application.properties或application.yml等。需要注意的是,如果是yml文件,必须注意yml的缩进格式,否则会导致读取错误。
例如,我们添加一个名为config.properties
的配置文件,包含如下配置项:
database.url=jdbc:mysql://localhost:3306/test
database.username=root
database.password=123456
2. 修改pom.xml文件
修改pom.xml文件,增加外部配置文件的依赖。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!-- 外部配置文件依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
3. 创建 Config
类
创建一个@Configuration的类,用于读取并注入外部配置文件,如下所示:
@Configuration
@PropertySource("classpath:config.properties") //标注读取配置文件
public class Config {
@Value("${database.url}")
private String url;
@Value("${database.username}")
private String username;
@Value("${database.password}")
private String password;
//getter and setter省略...
}
4. 打包项目
点击IDEA的maven选项卡中的Package即可进行项目打包。在路径 /target/
中找到项目打包后的 .jar
文件。
5. 在命令行中运行jar文件
在控制台中输入以下命令来启动项目,填写项目名称和jar包名称。
java -jar 项目名称.jar
运行成功后,可以看到在控制台中输出了加载配置文件的相关日志信息。
示例说明
示例1:Spring Boot项目加入Redis的配置
在resources目录下创建application.yml或者application.properties,例如添加以下Redis的配置:
spring.redis.host=localhost
spring.redis.port=6379
然后再创建一个Redis配置类,代码如下:
@Configuration
@ConfigurationProperties(prefix = "spring.redis")
public class RedisConfig {
private String host;
private int port;
//getter and setter省略...
}
通过@ConfigurationProperties注解,可以使用前缀名来不必一个个去写变量。比如这里设置了spring.redis,那么在属性上面直接写port即可。
示例2:Spring Boot项目加入Mysql数据库的配置
在resources目录下同样也是创建application.yml或者application.properties文件,但是这里以yml格式为例。
spring:
datasource:
url: jdbc:mysql://localhost:3306/test
username: root
password: 123456
然后在创建一个Mysql配置类,同样是通过@ConfigurationProperties注解,代码如下:
@Configuration
@ConfigurationProperties(prefix = "spring.datasource")
public class MysqlConfig {
private String url;
private String username;
private String password;
//getter and setter省略...
}
注入之后,在代码中就可以直接使用这些配置的变量了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot 项目打成 jar后加载外部配置文件的操作方法 - Python技术站