JSP - "<%...%>"VS"<%= ...%>"之间的区别是什么

JAN*_*JAN 6 java jsp servlets scriptlet

虽然有工作JSP文件和servlet,我碰到 <% … %><%= … %>.

这两种情况有什么区别?

谢谢

Cri*_*ian 12

<%= … %>将回显一个变量,其中as <% … %>表示一个脚本或一些执行的代码.

以下是jsp文档的链接:

  • +1 &lt;%=…%&gt;将回显变量或表达式 (2认同)

Ram*_*PVK 10

<%= new java.util.Date() %> 
Run Code Online (Sandbox Code Playgroud)

和...一样

<% out.println(new java.util.Date()) %>
Run Code Online (Sandbox Code Playgroud)

Scriptlet有三种类型:

  • Scriptlet表达式<%= expression%>的表达式,它们被计算并插入到输出中
  • 插入到servlet的服务方法中的<%code%>形式的Scriptlet
  • Scriptlet声明形式<%!代码%>,在任何现有方法之外插入到servlet类的主体中.例如:

    <%!
    
    public int sum(int a, int b) {
    
    return a + b;
    }
    
    %>
    
    Run Code Online (Sandbox Code Playgroud)


Fra*_*eth 7

如果<% ... %>您要添加服务器端代码.如果<%= ... %>您要添加自动打印内容的服务器端代码.它可以被视为一种捷径<% out.print( something ) %>.