【问题标题】:JSP - what's the difference between “<% … %>” VS “<%= … %>”JSP - “<% ... %>” VS “<%= ... %>” 之间有什么区别
【发布时间】:2012-07-14 07:21:46
【问题描述】:

在使用 JSP 文件和 servlet 时,我遇到了 &lt;% … %&gt;&lt;%= … %&gt;

这两种情况有什么区别?

谢谢

【问题讨论】:

标签: java jsp servlets scriptlet


【解决方案1】:

&lt;%= … %&gt; 将回显一个变量,其中&lt;% … %&gt; 表示一个脚本或一些正在执行的代码。

这里是jsp文档的链接:

【讨论】:

    【解决方案2】:
    <%= new java.util.Date() %> 
    

    相同
    <% out.println(new java.util.Date()) %>
    

    Scriptlet 共有三种类型:

    • 形式的 Scriptlet 表达式,被评估并插入到输出中
    • 形式的 Scriptlet,插入到 servlet 的服务方法中
    • 插入到 servlet 类的主体中,在任何现有方法之外。例如:

      <%!
      
      public int sum(int a, int b) {
      
      return a + b;
      }
      
      %>
      

    【讨论】:

    • out.print()out.println()有什么区别?
    • @KasunSiyambalapitiya out.print() 不插入新的换行符序列。 out.println() 会。
    【解决方案3】:

    如果是&lt;% ... %&gt;,您正在添加服务器端代码。在&lt;%= ... %&gt; 的情况下,您正在添加一个自动打印某些内容的服务器端代码。可以看作是&lt;% out.print( something ) %&gt;的快捷方式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-16
      • 2010-10-18
      • 1970-01-01
      • 2011-05-23
      • 1970-01-01
      • 2011-01-15
      相关资源
      最近更新 更多