我正在为标题中提到的两个标签的页面添加更多function。 我注意到我在声明的变量不能用于 反之亦然。 两者之间有什么区别,我如何声明可以在两个标签中使用的变量

<% ... %>用于在JSP的main service()方法中嵌入一些java代码。 它在呈现页面期间执行。

<%! ... %> <%! ... %>用于定义页面流之外的代码,因此在main service()方法之外。 通常,这用于定义将在<% ... %>块内调用的实用程序方法。

然而,这两种方法现在已经过时了。 JSP EL,JSTL和标记类是执行相同操作的首选方式。