JSP基础语法-declaration(声明)

JSP基础语法

   3.2、declaration(声明)
      在jsp文件中使用<%! %>,出现在该符号内的java程序翻译之后会被存放在和Servlet的service方法并列的位置上。
      所以可以在该符号内声明静态变量、静态方法、静态代码块、实例代码块、实例变量、实例方法,大家就当做在类体中直接编码就可以,所以声明的变量、方法都是可以使用访问控制权限修饰符修饰的。
            3.2.1、声明的语法格式:
                <%!
                    常量
                    静态变量
                    实例变量
                    静态代码块
                    实例代码块
                    构造函数
                    实例方法
                    静态方法
                %>
            
            3.2.2、声明语法中的java代码会自动被翻译到service方法之外
            
            3.2.3、service方法之外,类体之内可以编写的代码全部都可以编写到声明语法当中。
            
            3.2.4、声明的语法中的java代码没有先后顺序
            
            3.2.5、在JSP中的声明语法当中一般情况下编写代码较少,因为我们很少在service方法之外编写代码,90%以上的代码都是编写在service方法内部的。另外需要注意,在声明语法格式当中我们是不建议使用实例变量的,因为实例变量存在线程安全问题。

 ————————————————
JSP演示文件:

<%
	m1();
%>

<%!
	static{
		System.out.println("class loader!");
	}
	
	public static void m1(){
		System.out.println("static m1 method invoke!");
	}
%>


	
		<%
			m1();
		%>
		declaration
		<%
			m1();
		%>
	
		<%
			m2();
		%>
	
		<%!
			public void m2(){
				System.out.println("m2 method invoke!");
			}
		%>
	
	<%
		System.out.println("username = " + username);
	%>


<%!
	private String username = "lili";
%>

 

你可能感兴趣的:(JSP)