繁体   English   中英

如何在我的 maven 项目中将外部属性添加到 java class 中?

[英]How to add external properties into a java class in my maven project?

我想将一些属性存储在一个单独的配置文件中,然后在我的 java class 中使用这些属性。 我尝试查看资源并完成工作,但它不起作用。 我刚开始使用 maven 所以我不确定我是否正在寻找正确的资源。 我会用简单的话告诉你我想要做什么 - 我想将一些值(例如路径和一些其他参数)存储到一个单独的配置文件中,并且我想在我的 java class 中使用这些值。 如何在 maven 项目中做到这一点? 谢谢。

这不是关于 maven 而是 java 本身。

首先,这些属性是由用户更改的吗?
如果是,您必须使用 jar 之外的位置。 (所以用户实际上可以修改它)
如果不是,您可以使用标准资源位置并从 jar 本身检索数据。

你想要一种混合方法吗?
在资源内部创建一个默认配置文件,然后在第一次运行程序时将其复制到外部。 在运行时,如果它存在于外部,您将使用用户提供的,否则使用 jar 内部的默认值。

你如何处理配置文件?
您可以通过以下几种方式进行操作:

  1. 创建一个简单的 class 读取()和写入()纯文本文件,然后将数据保存在 object 中
  2. Use a standard notation like json, xml, yaml, csv etc... web is plenty of libraries to handle those.
  3. 使用 java 序列化导出应用程序的当前内部 state 并根据需要加载它,但我不建议这样做。

您真正要求的是如何从文件中读取和写入。
Maven 它是 package 您的应用程序的构建系统,与您的答案无关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM