gpt4 book ai didi

java - 从属性文件中获取值

转载 作者:行者123 更新时间:2023-11-29 03:36:52 25 4
gpt4 key购买 nike

  • 我有一个 java 代码可以将这些值附加到我的属性文件中
  • 我的属性文件将包含这样的条目。
  • key1 = host,port,orcl,username,password
  • key2 = host,port,orcl,username,password
  • key3 = host,port,orcl,username,password等等...

这些key1、key2和key3是连接名。

  • 在进入属性文件之前,首先我必须检查该文件是否有给定的连接名称条目。我的意思是,如果用户再次使用 key1 或 key2 或 key3 连接名称输入值,它必须发出警报,说明此连接名称可用,因此请尝试使用其他名称。

这是我在文件中输入的 java 代码:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
{
try
{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
con = DriverManager.getConnection("jdbc:oracle:thin:@"+host+":"+port+"/"+service,username,password);
con.setAutoCommit(false);
if (con!=null)
{
session.setAttribute(username, con);
out.println("Connected Successfully");
PrintWriter out1 = new PrintWriter(new BufferedWriter(new FileWriter("my properties file", true)));
out1.println(cname+" = "+host+","+port+","+service+","+username+","+password);
out1.close();
}
else
{
out.println("Error in getting connection");
}
}
catch(Exception e)
{
e.printStackTrace();
}
}

最佳答案

Properties prop = new Properties();
prop.load("pathToPropertiesFile");


String key; //This is the key which user will enter
String propKey = prop.getProperty(key);
if(propKey == null)
{
// Key is not present so enter the key into the properties file
prop.setProperty("keyName", key);
}
else
{
// Throw error saying key already exists
out.println("Key "+key+" already exists.");
}

引用Here有关 Java 中属性的更多信息和示例

已更新:好的,如果你想检查任何键是否存在这样的值(不管),那么使用这个代码

   // Ignoring the loading of the properties file
// Assuming properties file is loaded in "prop"
Enumeration keySet = prop.keys();
String key; // This is the key which user will enter
boolean keyExists = false;
while(keySet.hasMoreElements())
{
String keyName = (String) keySet.nextElement();
String keyValue = prop.getProperty(keyName);
if( key.equals(keyValue)) //Check against all the keys' value present
{
keyExists = true;
break;
}
}

if(keyExists)
{
//throw error
}
else
{
//insert key
}

方法是获取所有存在的键并检查其值。如果属性文件中的值与用户输入的值相同,否则您就知道要做什么了

如果你想对 KeyName 进行检查,那么只需更改循环中的 if 条件

if( key.equals(keyName))  //Check against all the key Name present in the properties file
{
keyExists = true;
break;
}

希望这对您有所帮助!

关于java - 从属性文件中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15023644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com