相对文件路径问题

时间:2010-07-11 17:56:29

标签: java portlet zk

我正在开发一个尝试读取配置文件的portlet。我正在eclipse项目中开发它。我目前将配置文件放在我的WEB-INF文件夹(位于root / WEB-INF /)中,其名称为config.properties。如何使用java源代码中的相对路径访问此文件? (在root / src / package / mysource.java中)

例如,

File myfile = new File("WHAT DO I PUT HERE/config.properties");

你能提供的任何帮助都会很棒!

2 个答案:

答案 0 :(得分:1)

我会使用servlet上下文及其getResourceAsStream()方法而不是File来加载它。像this ....

对不起,你说portlet。那么你需要javax.portlet.PortletContext

您可以从PortletSession获取PortletContext。您可以从PortletRequest创建PortletSession。

答案 1 :(得分:1)

由于这是一个portlet,你可能想要使用PortletContext

虽然有getRealPath方法,但我会避免它,因为它取决于门户应用程序的部署方式 - 无法保证资源将映射到文件系统上的文件。转而使用getResourceAsStream(或者,如果必须,请getResource)。