JSP项目结构 - 文件放置

时间:2012-06-23 11:02:13

标签: java file jsp netbeans placement

我正在Netbeans中开发一个JSP项目。我正在使用一些JSP文件和一些java文件。 项目结构如下:

root
-Web Pages
  --Jsp files
-Source Packages
  --myPacakge
    ---Java files
  --myIndex (it's a folder)

所以,我的问题是:我想从一个放在myPackage中的java文件中引用myIndex。

我首先假设java文件以root身份查看“Source Packages”。 所以,我认为索引的路径只是“myIndex”,但通过调试器我发现它正在查看 C:\ Program Files \ Apache Software Foundation \ Apache Tomcat 7.0.14 \ bin \ myIndex'

然后我尝试了以下路径:“\ myIndex”,但它现在正在查看 “C:\ myIndex”

请你帮我解决一下,myIndex应该是正确的路径,或者我应该把它放在项目的某个地方吗?

1 个答案:

答案 0 :(得分:1)

您展示的是源项目的结构。当您运行已部署的Web应用程序时,不再有源项目。所有内容都捆绑在war文件中,包含JSP文件,其他Web资源,WEB-INF/classes下的类文件和WEB-INF/lib下的jar文件。如果要访问生成的war文件中WEB-INF/classes内的文件,则应使用类加载器访问它,使用

InputStream in = SomeClassOfTheWebApp.class.getResourceAsStream("/myIndex/someFile.txt");

如果您计划在myIndex目录中存储某些内容,那么请忘记它:war文件是只读的。在webapp之外的文件系统上配置一些绝对目录,并使用此绝对位置来存储新文件。不要使用相对位置,因为它取决于服务器的物理位置,启动方式,JVM的当前目录是什么等等。如果服务器被移动,一切都会中断。