JSP从零开始学(视频教学版)
上QQ阅读APP看书,第一时间看更新

3.1 JSP的注释和声明

注释是一门语言最基本的功能,为了让别人或自己能看懂编写过的代码,注释必不可少。JSP中的声明是表示“这是JSP语言”的一个关键。本节就来详细介绍JSP的这两部分基础。

3.1.1 JSP中的注释

在编写规范的代码时,合理和必要的注释是至关重要的,这也是对开发人员的一项最基本要求。编程语言的注释起到了说明解释的作用,在实际执行的过程中并不执行。同样,JSP也是一样的。在JSP页面中,注释可以归纳为两种:一种是原有的HTML注释;另外一种是JSP的注释。

(1) HTML的注释如下:

      <! --  注释的内容 -->

例如:

      <! --  注释的内容会被照搬到浏览器中 -->

(2)JSP的注释语法如下:

      <%-- 注释的内容 --%>

例如:

      <%-- 注释的内容不会照搬到浏览器中 --%>

在实际应用中,JSP通常会引入Java的注释,二者混着用。因为Java的注释在脚本中注释,而JSP的注释在脚本外注释。

【例3.1】JSP中不同的注释用法

      -----------------------myjsp.jsp--------------------------
      01   <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
      02   <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      03   <html>
      04    <head>
      05      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      06      <title>JSP注释例子</title>
      07    </head>
      08        <body>
      09         <! -- 该JSP注释可以在浏览器文件中看到 -->
      10          <br/>
      11          <center>
      12               <table>
      13                   <tr>
      14                       <th>
      15                         <b>JSP注释</b>
      16                       </th>
      17                   </tr>
      18               </table>
      19           </center>
      20           <table>
      21               <tr>
      22                   <th>
      23                     <b>JSP注释</b>
      24                   </th>
      25               </tr>
      26           </table>
      27           <table align="right">
      28               <tr>
      29                   <th>
      30                     <b>JSP注释</b>
      31                   </th>
      32               </tr>
      33           </table>
      34         <%--该JSP注释无法在浏览器中看到 --%>
      35          <%
      36         //  这是脚本中的Java注释
      37          /*
      38              这也是脚本中的Java注释
      39          */
      40           %>
      41        </body>
      42       </html>

上述代码介绍了JSP的各种注释格式,其中代码第9行是“<! -- -->”格式,第34行是“<%-- --%>”格式。因为都是注释,所以界面运行的结果看不到注释中的内容,通过浏览器“查看源文件内容”功能可以看到HTML注释的内容。本例运行的结果如图3.1所示。

图3.1 JSP注释运行结果界面

提示

第36行的代码说明在JSP页面中可以嵌套Java注释。

3.1.2 JSP中的声明

JSP声明用于定义JSP中的变量、方法以及静态方法,实际上它跟Java中定义一个全局变量、共用方法一样,JSP声明部分的变量和方法是可以在JSP页面中被调用和使用的。

JSP声明的基本语法有两种,分别是:

      (1) <%! 变量定义/方法定义/类 %>
      (2) <jsp:declaration>变量定义/方法定义/类</jsp:declaration>○2

提示

○2中的语法现在已经过时,现在开发一般采用第一种声明语法。

JSP声明的结尾跟Java的结尾一样以“; ”结束,可以一次定义多个变量,用“, ”分割。声明部分的变量和方法只在当前的页面中有效。

【例3.2】演示变量、方法和类的声明。

      -----------------------shengming.jsp--------------------------
      01   <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
      02   <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      03   <html>
      04    <head>
      05      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      06      <title>JSP声明例子</title>
      07    </head>
      08    <%!
      09      int x, y=60, z;          //多个声明以“, ”分割
      10       String name="John";
      11       Date date = new Date();
      12     %>
      13     <%!
      14      int add(int m, int n){      //计算两个数的和
      15          int result=0;
      16          result = m+n;
      17          return result;
      18       }
      19      %>
      20      <%!
      21      int chengji(int m, int n){  //计算两个数的乘积
      22          int result=0;
      23          result = m*n;
      24          return result;
      25       }
      26      %>
      27      <%!
      28        class Circle{        //计算圆的面积
      29          double r;
      30          Circle(double r){
      31          super();           //继承空的构造方法
      32           this.r = r;
      33          }
      34          double area(){      //取整
      35              return  Math.floor(Math.PI*r*r);
      36          }
      37        }
      38       %>
      39    <body>
      40      <%
      41         out.println("我的名字:"+name);
      42          out.println("<br/><br/>");
      43         out.println("x的值为:"+x);
      44          out.println("<br/><br/>");
      45         out.println("y的值为:"+y);
      46          out.println("<br/><br/>");
      47         out.println("z的值为:"+z);
      48          out.println("<br/><br/>");
      49         out.println("现在的时间为:"+date);
      50          out.println("<br/><br/>");
      51         out.println("10与20的和:"+add(10,20));
      52          out.println("<br/><br/>");
      53         out.println("10与20的积:"+chengji(10,20));
      54       %>
      55      <br/>
      56      <br/>
      57      <%
      58          Circle c = new Circle(6);
      59         out.println("半径为6的圆面积为:"+c.area());
      60       %>
      61    </body>
      62   </html>

页面效果如图3.2所示。

图3.2 declar.jsp页面的运行结果