设为首页 加入收藏

TOP

关于自定义程序打包成jar包,并读取配置(一)
2023-08-06 07:49:49 】 浏览:65
Tags:关于自 程序打 包成 jar

前言

在实际开发过程中,我们有时候有把你编写的一段程序打成jar包的需求,而一些配置是需要去配置文件里面读取关于这项目的一些配置,本人在网络上查询了众多的资料,总的来说可以归为3类

1.从数据库读取配置

   老生常谈,在dao层从数据库获取配置信息,然后返回到Service层进行业务逻辑处理

2.在每次调用这个jar的时候通过关键字去读取配置

  在这一类中,方法有很多,不过大体都是

InputStream ins = getClass().getResourceAsStream("/resource/dbconfig.properties");

  通过IO流对配置文件进行读取,然后再从 InputStream 流中读取数据,没什么技术含量,便不多讲

例如以下例子,就是通过Properties流来读取配置 

 /**
     * 读取配置文件属性
     * @param path  配置文件路径
     * @return
     * @throws IOException
     */
    public Map readerConfigurationFile(String path) throws IOException {
        /**
         * 使用Properties读取配置文件并获取配置信息
         */ Properties properties = new Properties(); InputStream input = new BufferedInputStream(new FileInputStream(path)); properties.load(input); /** * 将获取到的配置信息转存到map集合 */ Map map = new HashMap(); for (Object key : properties.keySet()) { if (properties.get(key) != null && !properties.get(key).toString().trim().equals("")){ map.put(key,properties.get(key)); } } return map; }

 

3.通过Spring 自动装配,在项目启动时就把配置信息发送到jar包里面(强烈推荐)

  这个方法虽然前期建立的时候比较繁琐,但是完成之后简直方便到飞起

  首先,建立一下格式的结构,方便我们后面能够快捷找到要编写的文件

实际上DemoApplication.java 是可以去掉的,只是个人为了方便测试写的代码,看是否有bug就留下来启动项目用的

 最最最重要的pom.xml文件应该这样写:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<!-->--------------------这里是自己jar的情况,自己编写---------  -------<-->
<modelVersion>4.0.0</modelVersion> <groupId>com.transfer</groupId> <artifactId>DataTransferService</artifactId> <version>0.0.1-SNAPSHOT</version> <name>DataTransferService</name> <description>DataTransferService</description> <properties> <spring-boot.version>2.6.13</spring-boot.version> </properties>
<!-->---------------------------------------------------------------<-->
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!-- 自动配置 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-autoconfigure</artifactId> </dependency> <!-- 配置属性 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional><!-- 依赖不传递 --> </dependency> <!--Lombok依赖--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scop
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Java中面向对象详解 下一篇RabbitMQ的安装、配置和实战

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目