2012-07-14 75 views
4

JSP文件和servlet一起工作时,我遇到了<% … %><%= … %>JSP - “<% … %>”VS“<%= … %>”

这两种情况有什么区别?

由于

+0

http://docs.oracle.com/javaee/5/tutorial/doc/bnaou.html – Taha 2012-07-14 07:41:27

+0

你还必须在JSP ,这是用来声明全局变量 – MaVRoSCy 2012-07-14 10:44:15

+0

@MaVRoSCy我见过'<%! &>,但不是方法声明。我能扭转顺序吗? – Mushy 2017-12-09 15:08:45

回答

5

<% ... %>情况下,要添加一个服务器端码。在<%= ... %>的情况下,您正在添加一个自动打印内容的服务器端代码。它可以被看作是<% out.print(something) %>的快捷方式。

8
<%= new java.util.Date() %> 

是相同

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

有三种类型的小脚本的:

  • 形式<%=表达的的scriptlet表达式%>被评估并插入到输出
  • 形式为的Scriptlet%code%>插入到servlet的服务方法中
  • Scriptlet声明<%!代码%>插入到servlet类的主体中,而不是任何现有的方法。对于前:

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

'out.print()'和'out.println()'之间有什么区别? – 2016-08-18 12:58:54

+0

@KasunSiyambalapitiya'out.print()'不会插入新的换行序列。 'out.println()'确实。 – Mushy 2017-12-09 15:11:21

相关问题