无法使用GWT读取服务器端的属性文件

时间:2014-08-06 09:49:04

标签: java 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

提前致谢。

1 个答案:

答案 0 :(得分:1)

GWT.Create只能在客户端模式下使用。 你确定代码在服务器端执行吗?

如果我在我的应用程序GWT.Create中写入服务器端,我会收到此错误:

java.lang.UnsupportedOperationException:错误:GWT.create()仅在客户端代码中可用!例如,它不能从服务器代码中调用。如果您正在运行单元测试,请检查您的测试用例是否扩展了GWTTestCase,并且未在初始化程序或构造函数中调用GWT.create()。

您可以在java中读取属性文件。该文件类似于GWT中的常量文件。 属性文件示例:

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);查看密钥是否存在。此函数返回一个布尔值(如果在其他情况下存在,则为True)。

问候