JSP基础语法-declaration(声明)

本文介绍了JSP中的声明语法,包括声明的用途、语法格式和注意事项。声明允许在jsp文件中声明静态和实例变量、方法等,这些代码会被置于Servlet的service方法之外,类体之内。尽管可以使用访问控制权限修饰符,但出于线程安全考虑,不推荐在声明中使用实例变量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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!");
	}
%>

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

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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值