java - 获取Spring MVC相对路径

标签 java javascript jsp netbeans spring-mvc

我正在使用 JbossNetbeans 在 Windows 上创建 Spring MVC Web 应用程序。 它运行于 http://localhost/myapplication/

我的项目路径是D:\Myapplication\

我的 JSP View 位于 D:\Myapplication\web\jsp\

我的 Javascript 位于 D:\Myapplication\web\js\

Controller 位于 D:\Myapplication\web\src\java\controller\

我创建了 1 个 Controller ,需要在 javascript 位置创建 HTML 文件,即 D:\Myapplication\web\js\

我正在使用 Jquery.sheet 创建 Web 电子表格。 我想使用此 HTML 加载 Jquery.sheet,为此我只想将该 HTML 的相对 URL 存储在 JAVASCRIPT 位置中。

最佳答案

这取决于执行 jQuery.sheet 的页面的请求 URL。

首先在浏览器地址栏中查看使用jQuery.sheet的网页的绝对URL。例如,它可能是http://localhost/myapplication/jsp/page.jsp

然后在浏览器地址栏中检查/测试所生成的相关 HTML 文件的绝对 URL。例如,它可能是http://localhost/myapplication/js/generated.html

两者的共同路径只是一个上一级文件夹:../,最终将位于http://localhost/myapplication。从那里您可以通过 js/generated.html 访问 JS 文件夹和生成的 HTML 文件。

总而言之,您需要的相对 URL 是 ../js/generated.html

<小时/>

更新:根据评论,您已经从完全不同的 Angular 阐述了您的问题。您在客户端 Angular 谈论 URL,而实际上指的是服务器端的本地磁盘文件系统路径。在这种情况下,只需使用 ServletContext#getRealPath()将相对 Web 路径转换为绝对磁盘文件系统路径。

String relativeWebPath = "/js";
String absoluteDiskPath = servletContext.getRealPath(relativeWebPath);
File generatedHtml = new File(absoluteDiskPath, "generated.html");

关于java - 获取Spring MVC相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3093423/

相关文章:

java - 如何检测 Java MIDI 中的特定 MIDI Controller ?

javascript - 用于匹配错误和相关几行的正则表达式

javascript - 当 AJAX 返回 null 时向输入添加信息

java内存管理-java类加载器

java - 如何无意识地传递对象

javascript - 如何使用 window.open() 打开弹出窗口,确认消息为 Yex/No?

java - 使用ArrayList从数据库中检索数据并将其显示在JSP中

java - JSP 登录页面 session 超时

java - 无法使用 `request.getParameter` 将数据转换为大写

java - 如何禁用/隐藏 JxBrowser 许可证信息