好的继承人的情景。我正在用Java \ JSP \ JS创建一个动态网站。我正在使用Java访问数据库并查询表以获取信息。我没有将该查询传递给JSP,而是决定创建一个包含所有这些信息的类的JS文件。 (我基本上构建了一个商店定位器,只要用户按下按钮,它就会用新的商店\位置更新自己。显然他们需要先更新表,但你明白了这一点)
现在我的问题。我正在通过打开流来创建文件。 (但首先我检查文件是否存在以及是否删除它,因为每次用户单击按钮时我都不想继续写入同一文件。)
FileWriter fstream = new FileWriter("test.js");
显然,文件的位置会进入我的Eclipse文件夹目录。即使这样做,
FileWriter fstream = new FileWriter("./test.js");
把它放在那里。当然,我认为它不会改变,但我正在测试它。
当项目没有“部署”或测试时,JSP文件在工作区位置的位置。但是当它“部署”时
\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\BoomBaby\index.jsp
当我获得JS文件的位置时:
/C:/Program%20Files/Apache/lib/
所以我的问题是:在部署之后如何将JS文件保存在与JSP文件相同的目录中,以便我可以通过以下方式从JSP文件访问它:
<script type="text/javascript" src="test.js"></script>
答案 0 :(得分:0)
您需要build a WAR file。它基本上是一个标准化布局的zip文件。您将所有jsps放在一个位置,将所有js文件放在另一个位置。像tomcat这样的容器可以理解战争的布局并自动运行你的应用程序。像ant和maven这样的流行构建工具可以轻而易举地为你构建战争。
答案 1 :(得分:0)
部署为WAR文件时无法进行。通常这样做的方式是,直接在页面中生成JavaScript源代码,而不是生成文件并引用它。