任何语言都有本身的语法,JAVA中有,JSP虽然是在JAVA上的一种应用,可是依然有其本身扩充的语法,并且在JSP中,全部的JAVA语句均可以使用。java
JSP页面中的HTML内容称之为JSP模版元素。
JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观。express
JSP脚本表达式(expression)用于将程序数据输出到客户端
语法:<%= 变量或表达式 %>
举例:输出当前系统时间:浏览器
1 <%= new java.util.Date() %>
JSP引擎在翻译脚本表达式时,会将程序数据转成字符串,而后在相应位置用out.print(…) 将数据输给客户端。
JSP脚本表达式中的变量或表达式后面不能有分号(;)。jsp
JSP脚本片段(scriptlet)用于在JSP页面中编写多行Java代码。语法:
<%
多行java代码
%>函数
在<% %>中能够定义变量、编写语句,不能定义方法。spa
范例:在Scriptlet中定义变量、编写语句翻译
1 <% 2 int sum=0;//声明变量 3 4 /*编写语句*/ 5 for (int i=1;i<=100;i++){ 6 sum+=i; 7 } 8 out.println("<h1>Sum="+sum+"</h1>"); 9 %>
注意事项:code
举例:对象
1 <% 2 int x = 10; 3 out.println(x); 4 %> 5 <p>这是JSP页面文本</p> 6 <% 7 int y = 20; 8 out.println(y); 9 %>
多个脚本片段中的代码能够相互访问,犹如将全部的代码放在一对<%%>之中的状况。如:out.println(x);
单个脚本片段中的Java语句能够是不完整的,可是,多个脚本片段组合后的结果必须是完整的Java语句,例如:blog
1 <% 2 for (int i=1; i<5; i++) 3 { 4 %> 5 <H1>http://localhost:8080/JavaWeb_Jsp_Study_20140603/</H1> 6 <% 7 } 8 %>
JSP页面中编写的全部代码,默认会翻译到servlet的service方法中, 而Jsp声明中的java代码被翻译到_jspService方法的外面。语法:
<%!
java代码
%>
因此,JSP声明可用于定义JSP页面转换成的Servlet程序的静态代码块、成员变量和方法 。
多个静态代码块、变量和函数能够定义在一个JSP声明中,也能够分别单独定义在多个JSP声明中。
JSP隐式对象的做用范围仅限于Servlet的_jspService方法,因此在JSP声明中不能使用这些隐式对象。
JSP声明案例:
1 <%! 2 static { 3 System.out.println("loading Servlet!"); 4 } 5 6 private int globalVar = 0; 7 8 public void jspInit(){ 9 System.out.println("initializing jsp!"); 10 } 11 %> 12 13 <%! 14 public void jspDestroy(){ 15 System.out.println("destroying jsp!"); 16 } 17 %>
在JSP中,注释有两大类:
显式注释:直接使用HTML风格的注释:<!- - 注释内容- ->
隐式注释:直接使用JAVA的注释://、/*……*/
JSP本身的注释:<%- - 注释内容- -%>
这三种注释的区别
1 <!--这个注释能够看见--> 2 3 <% 4 //JAVA中的单行注释 5 6 /* 7 JAVA中的多行注释 8 */ 9 %> 10 11 <%--JSP本身的注释--%>
HTML的注释在浏览器中查看源文件的时候是能够看获得的,而JAVA注释和JSP注释在浏览器中查看源文件时是看不到注释的内容的,这就是这三种注释的区别。