java - jsp中 "<%=TITLE %> "和 "${TITLE} "有什么不同?

标签 java jsp

在我的 JSP 页面中,我使用 <%=TITLE %>显示页面标题,有时可以,但有时页面显示无法cpmplie代码<%=TITLE %> 。 所以我将代码更改为 ${TITLE} ,也可以。 <%=TITLE %> 有什么不同和${TITLE}在jsp中?

这是我的页面代码:

 <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
        + request.getServerName() + ":" + request.getServerPort()
        + path + "/"; 
%>

<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<base href="<%=basePath%>">
<title><%=TITLE %></title>
<meta name="description" content="${DESCRIPTION}">
<meta name="keyword" content="${KEYWORD}">
</head>

我在 Controller 中定义它们:

    ModelAndView mv = this.getModelAndView();
     mv.addObject("DESCRIPTION","MYDESCRIPTION"));
        mv.addObject("KEYWORD","MYKEYWORD");
        mv.addObject("TITLE","MYTITLE");
       return mv;

最佳答案

Answer according to context of your Question

What is different between “<%=TITLE %> ” and “${TITLE} ” in jsp?

由于大多数时候我们使用 out.print() 方法在 JSP 页面中打印动态数据,因此有一个通过 JSP 表达式来完成此操作的快捷方式。 JSP 表达式以 <%= 开头,以 %> 结尾。

<% out.print(TITLE); %> 

上面的语句称为 scriptlet,可以使用 JSP 表达式编写为

<%= TITLE %>

我们可以使用 scriptlet 和 JSP 表达式通过 Java 代码检索 JSP 中的属性和参数,并将其用于查看目的。但对于网页设计师来说,java 代码很难理解,这就是为什么 JSP Specs 2.0 引入了表达式语言 (EL),通过它我们可以使用类似 HTML 的标签轻松获取属性和参数。

表达式语言语法是

 ${TITLE} 

我们可以使用EL隐式对象和EL运算符从不同范围检索属性并在JSP页面中使用它们。

更新

According to your controller related query

我说这样写

<title><%=request.getAttribute("TITLE"); %></title>

因为它存储为请求属性。

NOTE

Scriptlets are discouraged since JSP 2.0 which was released almost a decade(!) ago. So Please use Expression Language (EL).

关于java - jsp中 "<%=TITLE %> "和 "${TITLE} "有什么不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33205230/

相关文章:

java - Java 中继承常量的最佳实践是什么?

spring - 有没有 Spring MVC 兼容的 UI 框架?

javascript - 如何通过单击 DataTables 中的每个列按钮获取列值?

java - 知道如何使用 Jmeter 进行独立 Java 应用程序的性能测试吗?

java - CMYK JavaGraphics2D 中的 iText 绘图

java - 动态设置约束小部件

java - 在 JSP 提交按钮中使用 Servlet 变量

java - Eclipse 404 请求的资源不可用

java - 使用jsp页面删除数据库中的数据

java - 如何使用 JSP 从 Apache Wink 返回 XHTML 输出?