JavaWeb学习笔记(十四)--JSP语法

1. JSP语法

JSP语法主要包含以下几类:

  • JSP模板元素
  • JSP脚本表达式
  • JSP脚本片段
  • JSP声明
  • JSP注释
  • JSP指令
  • JSP标签
  • JSP内置对象

2. JSP模板元素

JSP页面中的HTML内容称之为JSP的模板元素。

JSP模板元素定义了网页的基本骨架,即定义了页面的结构和外观。

3. JSP脚本表达式

JSP脚本表达式用于将程序数据输出到客户端

语法:<%= 变量或表达式  %>    例如:<%= new Date()%>

JSP引擎在翻译脚本表达式时,会将程序数据转成字符串,然后在相应的位置用out.print()将数据输出给客户端,上面的的例子会翻译成out.print( new Date());。

JSP脚本表达式中的变量或者表达式后面不能有分号

4. JSP脚本片段

JSP脚本片段用于在JSP页面中编写多行Java代码。

语法:

<%
多行java代码
%>

JSP脚本片段中只能出现Java代码,不能出现其他的模板元素,JSP引擎在翻译JSP页面时,会将JSP脚本片段的Java代码原封不动的放到翻译后的Servlet的_jspService方法中。

JSP脚本片段中的Java代码必须严格遵守Java语法。

在一个JSP页面中可以有多个脚本片段,在脚本片段之间可以嵌入文本、HTML标记和JSP元素。多个脚本片段中的代码可以相互访问,犹如将所有代码放在一对<% %>中,例如:

 <%
   int x = 10;
   out.print(x);
 %>
  <p>这是JSP页面文本</p>
  <%
    int y = 20;
    out.print(y);
    out.print("<br/>");
    out.print(x + y);  // 使用上一个脚本片段定义的变量x
  %>

单个脚本片段中的Java代码可以是不完整的,但是多个脚本片段组合的结果必须是完整的Java语句块,例如:

  <%
    for (int i = 0; i < 5; i++) {

  %>
  <h2>这个段标题输出5次</h2>
  <%
    }
  %>

5. JSP声明

JSP页面中编写的所有代码,默认回翻译到Servlet的_jspService方法中,而JSP声明的Java代码会被翻译到_jspService方法的外面。

语法:

<%!
java代码
%>

JSP声明可用于定义JSP页面转换成的Servlet的静态代码块、成员变量和方法。

多个静态代码块、变量和函数可以定义在一个JSP声明中,也可以分别单独定义在多个JSP声明中。

JSP隐式对象的作用范围仅限于Servlet的_jspService方法,所以在JSP声明中不能使用这些隐式对象。

JSP声明举例:

<%!
    static {
      System.out.println("loading Servlet");
    }
    private int globalVar = 0;
    public void myFunction1() {
      System.out.println("myFunction1");
    }
  %>
  <%!
    public void myFunction2() {
      System.out.println("myFunction2");
    }
  %>

6. JSP注释

语法:

<%--
注释信息
--%>

JSP引擎在将JSP页面翻译成Servlet时,会忽略JSP页面中被注释的内容。

HTML的注释<!-- -->,用此注释,注释内容会发送给浏览器,只是浏览器不识别。JSP的注释不会发送给浏览器,并且脚本代码只能用JSP注释(因为服务器不识别HTML注释)。

猜你喜欢

转载自www.cnblogs.com/songchj-bear/p/10896514.html