Как узнать или где указать путь к проекту JavaEE? - PullRequest
0 голосов
/ 14 апреля 2010

Я разрабатываю приложение Java EEapplication, и мне необходимо создать несколько файлов в папке src в моем приложении. Но я не знаю, где или как указать путь. Я хочу, чтобы мое приложение было переносимым. Это значит просто сказать TestProject / src / .... а не C: / bla / bla / TestProject / src /...

мы указываем это в каком-то файле приложения, например, web.inf, meta-inf или просто как трюк.

Спасибо!

Ответы [ 2 ]

1 голос
/ 08 декабря 2010

Лучший способ сделать это - загрузить ресурс через загрузчик классов, используя ClassLoader.getResourseAsStream . Поскольку вы сказали, что поместили его в свой файл src, вам просто нужно убедиться, что он упакован в ваш jar или, если вы используете войну, поместите его в WEB-INF / classes. Оттуда вы можете просто использовать ClassLoader.getResourseAsStream . Преимущество этого состоит в том, что куда бы вы ни пошли в jar / war, файл уйдет, и вам никогда не придется беспокоиться о расположении файла, потому что ClassLoader читает относительно источника файла архива. Для примеров того, как использовать это или больше методов загрузки classpath, вы можете прочитать эту статью . (На второй странице приведен пример, который вам нужен)

0 голосов
/ 15 апреля 2010

Если это веб-приложение, вы можете узнать местоположение временного каталога, а затем создать там свои файлы. Например,

public void doGet(HttpServletRequest req, HttpServletResponse res)
   throws Exception {

   File f = (File)getServletContext().getAttribute("javax.servlet.context.tempdir");
   if (f != null) {
     // Do something with f
   } else {
     // We don't have a temporary directory. Fall back to a preconfigured directory 
     // from web.xml <init-param>
   }
}

См. это .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...