一、JSP中的JAVA代码块:JSP小脚本
JSP的Java代码块也称为JSP小脚本,是以<% %>括起来的部分,其中可以编写Java代码。编写在Java代码块中的代码,会被JSP翻译引擎将其原样的植入到Servlet的_jspService()方法中作为方法中的Java语句出现。所以,其中存放的必须是以分号结尾的Java语句。
需要注意的是,JSP代码块可以放置在JSP页面的任意位置(头部、主体、<html>标签外),可以放置任意数量。但它们都会被按照顺序放置到Servlet的_jspService()方法中。也就是说,其执行顺序是与其在JSP页面中的出现顺序是一致的。
二、由于JSP小脚本是被翻译到Servlet的_jspService()方法中,所以JSP小脚本中是不能出现如下内容的:
2.1 声明的变量是不能添加权限访问控制符的。(Illegal modifier for parameter a; only final is permitted)
2.2 不能定义方法。
2.3 不能定义静态语句块。
三、示例
3.1 JSP源码
<% System.out.println("我是Java代码块!我可以放在位置一!"); %> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <% System.out.println("我是Java代码块!我可以放在位置二!"); %> <html> <head> <% int a=2; %> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>first_jsp</title> <% System.out.println("我是Java代码块!我可以放在位置三!"); %> </head> <% int b=5; %> <body> <!-- HTML注释 --> <%--JSP注释 --%> My First jsp! <% System.out.println("我是Java代码块!我可以放在位置四!"); %> </body> <% int num=a*b; System.out.println("num="+num); %> </html> <% System.out.println("我是Java代码块!我可以放在位置五!"); %>