java - 运行 JSP 的侵入性最小的方式

标签 java jsp jstl jsp-tags

我加入了一个用 Java、Apache Tomcat、jBoss 构建的现有大型 Web 应用程序,作为前端人员来执行 Javascript 工作;但不知怎的,我发现自己正在构建新的 JSP 页面模板以及可重用的标记文件。我正在学习模板语言,之前对 JSP 或 Java 一无所知。

如何确定已创建的 JSP 页面的路径以及如何在 Web 浏览器中解析它们并让它们与所使用的任何关联标签、标签库等一起编译和显示?

<小时/>

我的一个 JSP 页面是这样的:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ include file="/WEB-INF/jsp/common.inc" %>
<%@ taglib prefix="ab" tagdir="/WEB-INF/tags" %>

<ab:cPage pageId="overview">
<jsp:body >
<div class="features-wrapper">
    <div class="features-content">
        <h1>${heading}</h1>
        <h2>${subheading}</h2>

        <c:forEach var="accessory" items="${page.accessories.content}" varStatus="status">
            <c:choose>
                <c:when test="${empty accessory}">

                </c:when>
                <c:otherwise>
                    <ab:modelAccessoryItem value="${accessory}"/>
                </c:otherwise>
            </c:choose>
        </c:forEach>
    </div>
</div>

</jsp:body>

</ab:cPage>
<小时/>

引用的标记文件存在并且需要呈现,但所有其他变量目前只是占位符,并且还不存在于 JSP 之外的任何位置。当我开始针对这些页面编写 SASS 和 JS 时,我只想能够在浏览器中看到我正在做什么。

最佳答案

为了在应用程序中进行实际部署,您将需要访问后端,尤其是 Controller 类。模板本身本质上与要呈现的 URL 没有任何关系。

这也意味着您需要具备一些 Java 知识,并且根据项目的设置,您可能还需要在 XML 文件中进行一些修改以添加映射。

假设这是一个基于注释的项目,您将需要编写类似这样的内容。

@Controller
public class IndexController {

    @RequestMapping(value = {"/index"}, method = RequestMethod.GET)
    // this method is mapped to http://example.com/index
    public String handleRequest() {

        return "welcome"; // this will autoload the file welcome.jsp when the url is called
    }

}

关于java - 运行 JSP 的侵入性最小的方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28209849/

相关文章:

java - 解析立体光刻 (STL) 文件时验证标签顺序

java - 如何表示反斜杠

java - 将 JSTL 包含到 Maven 项目中

java - 如何修剪字符串中的 "enter key"

java - 如何在JSP中使用声明标签?

java - 如何获取JSTL/EL中的前向信息,是一个包含点的属性

java - 无法在 Tomcat 7 上部署 YouTrack (org.apache.catalina.LifecycleException)

java - 在没有matlab环境的情况下在java类中运行matlab函数

java - 在 JSP 页面的 Struts 标记中可以使用 ${...} 语法访问哪些变量?

java - 使用 JSTL 迭代 HashSet