对此不熟悉,所以请保持简单的答案,就像你在教孩子一样。
= Q1: USERNAME 和 PASSWORD 值可以都替换为局部变量吗?
= Q2:如果是的话,变量在Eclipse中定义在哪里?
当然。以各种方式。举例来说,假设您正在与之交互的 API 称为“twotter”。
twotter-auth.properties
。放:username: foobar
password: correct battery horse staple
在里面。
.gitignore
- 非常重要。编辑 .gitignore
文件(如果尚不存在则创建它)并添加:/twotter-auth.properties
对它。该文件应与twotter-auth 文件位于同一目录中。这可以确保它不会被签入版本控制。
java.util.Properties
类来读取它。主题的变化:有无数的“属性文件”样式库 - JSON、YAML、TOML 等等。选你喜欢的吧。
您还可以将用户名/密码作为命令行参数传递 - 它们将到达
args
中的 public static void main(String[] args) {
。在您的主要方法中,将它们保存在某个位置,以便您的 API 客户端可以访问它们。然后,在 Eclipse 中,单击错误图标旁边的箭头,从显示的弹出菜单中选择“调试配置...”,从左侧列表中选择您的应用程序(或单击“新配置”)按钮,它是该对话框中按钮栏上最左边的一个,然后选择一个主类)。在“参数”选项卡中的“程序参数”框中,键入您想要的任何内容。
非常相似,但您可以传递 VM 系统变量,而不是作为程序参数。在与“args”选择相同的位置(调试,选项卡“程序参数”),有一个用于 VM args 的文本框。您可以输入类似以下内容:
-Dtwotter.username=foobar "-Dtwotter.password=correct battery horse staple"
在 Java 代码中,您可以调用
System.getProperty("twotter.username")
来访问这些。请注意,您可以在“常用”选项卡下的“另存为”部分中选择“共享文件”,这会在您的项目中创建一个 targetname.launch
文件。该文件将包含所有这些信息,因此除非您 .gitignore
它,否则您可能会签入该信息,在这种情况下,您刚刚签入了用户名/密码数据。保持它打开 local
,尽管现在你需要向其他人解释如何制作这个东西(而如果你将它保存为共享文件,你可以签入它,现在每个也使用 eclipse 的人都会得到这个运行目标,所有配置正确安装,开箱即用,这很好)。
您还可以创建系统(如您的操作系统:Windows、Linux 等)变量。 JAVA_HOME 和 PATH 存在相同的位置。您可以使用
System.getenv
从 Java 代码中读取这些内容。