簡體   English   中英

使用GWT無法讀取服務器端的屬性文件

[英]Can't read property file on Server side with GWT

我想在服務器端讀取屬性文件。 我將DBConfig.java,useDBConfig.java和DBConfig.properties都放置在服務器程序包中。 我無法從服務器端的屬性文件中讀取值。 非常感謝您的幫助。

public interface DBConfig extends Constants {
@DefaultStringValue("host")
String host(String host);

@DefaultStringValue("port")
String port(String port);

@DefaultStringValue("username")
String username(String username);

@DefaultStringValue("password")
String password(String password);

}


public void useDBConfig() {
DBConfig constants = GWT.create(DBConfig.class);
Window.alert(constants.host());


host = constants.host(host);
port = constants.port(port);
username = constants.username(username);
password = constants.password(password);

}

屬性文件...

host=127.0.0.1
port=3306
username=root
password=root

提前致謝。

GWT.Create只能在客戶端模式下使用。 您確定代碼在服務器端執行嗎?

如果我在服務器端用應用程序GWT.Create編寫,則會收到此錯誤:

java.lang.UnsupportedOperationException:錯誤:GWT.create()僅在客戶端代碼中可用! 例如,不能從服務器代碼中調用它。 如果您正在運行單元測試,請檢查您的測試用例是否擴展了GWTTestCase,並且未從初始化程序或構造函數中調用GWT.create()。

您可以在Java中讀取屬性文件。 該文件類似於GWT中的Constants文件。 屬性文件示例:

key = value host = 127.0.0.1 port = 80 username = guest password = guest

EOF

您可以閱讀此文件,請參見下面的代碼:

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;

String fileToRead = "MY_PATH"+File.separator+"MY_FILE.properties";
Properties prop = new Properties();
try {
    File propertiesFile = new File(fileToRead);
    prop.load(new FileInputStream(propertiesFile));
    String host = prop.getProperty("host");
    String port = prop.getProperty("port");
    String username = prop.getProperty("username");
    String password = prop.getProperty("password");

    System.out.println(host);
    System.out.println(port);
    System.out.println(username);
    System.out.println(password);
} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
}

如果鍵不存在,則getProperty(String key)返回null。 您可以使用prop.containsKey(String key); 查看密鑰是否存在。 此函數返回一個布爾值(在其他情況下,如果存在False,則為True)。

問候

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM