如何解析属性文件中的属性值

发布于 2024-10-11 16:40:46 字数 180 浏览 1 评论 0原文

你好 我正在加载属性文件来建立数据库连接, 例如:

DB1="JDBc................", username , password

上面的行与属性文件中的一样,但是当我调用 getConnection 方法时,我需要发送 url、用户名和密码。 我该如何解析它。

Hi
I am loading a property file to establish DB connection,
ex:

DB1="JDBc................", username , password

above line is as in property file, but when i call getConnection method I need to send url, username and pw.
How can I parse it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

苯莒 2024-10-18 16:40:46

您可以将键/值对放入属性文件中,如下所示:

dbUrl = yourURL
username = yourusername
password = yourpassword

然后您可以将它们从属性文件加载到您的应用程序中:

private void loadProps() {
    try {
        InputStream is = getClass().getResourceAsStream("database_props.properties");
        props = new Properties();
        props.load(is);
        is.close();
        dbConnStr = props.getProperty("dbUrl");
        username = props.getProperty("username");
        password = props.getProperty("password");
    }
    catch(IOException ioe) {
        log.error("IOException in loadProps");
        for(StackTraceElement ste : ioe.getStackTrace())
        log.error(ste.toString());
    }
}

然后您可以使用这些值来创建连接。

You can put your key/value pairs in a properties file like this:

dbUrl = yourURL
username = yourusername
password = yourpassword

Then you can load them into your app from the properties file:

private void loadProps() {
    try {
        InputStream is = getClass().getResourceAsStream("database_props.properties");
        props = new Properties();
        props.load(is);
        is.close();
        dbConnStr = props.getProperty("dbUrl");
        username = props.getProperty("username");
        password = props.getProperty("password");
    }
    catch(IOException ioe) {
        log.error("IOException in loadProps");
        for(StackTraceElement ste : ioe.getStackTrace())
        log.error(ste.toString());
    }
}

And then you can use those values to create your connection.

自找没趣 2024-10-18 16:40:46
  1. 您可以拆分条目:

    String dbProperty = prop.getProperty("DB1");   
    String[] dbDetails = dbProperty.split(",", 3);
    

dbDetails[0] 将保存您的JDBC...[1]您的用户名[2]您的密码

  1. 更好的是,您可能希望将它们保存在不同的属性中(正如 lweller 所说)< /p>

    db.用户名 = 斯科特  
    db.密码=老虎  
    db.url = ....
    

这样您可以获得更好的清晰度和控制力。

  1. You can split the entry:

    String dbProperty = prop.getProperty("DB1");   
    String[] dbDetails = dbProperty.split(",", 3);
    

dbDetails[0] will hold your JDBC..., [1] your username and [2] your password

  1. Better still, you might want to hold them in different properties (As lweller said)

    db.username = scott  
    db.password = tiger  
    db.url = ....
    

This way you get better clarity and control.

乄_柒ぐ汐 2024-10-18 16:40:46

最好单独定义

dburl =....
username =....
password = ...

还是要解析的话可以使用string的split方法进行逗号分割

It is better to define separately

dburl =....
username =....
password = ...

Still if you want to parse it, you can use the split method of string to split by comma

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文