isScriptingEnabled 属性
isScriptingEnabled是 JSP page指令的核心属性之一,用于控制当前 JSP 页面是否允许使用 Java 脚本元素(包括 Scriptlet<% ... %>、声明标签<%! ... %>、表达式标签<%= ... %>)。
核心细节:
语法格式:
<%@ page isScriptingEnabled="true|false" %>;默认值:
true(允许使用所有 Java 脚本元素);取值为 false 时的效果
:
- 页面中所有 Java 脚本元素(
<% %>/<%! %>/<%= %>)都会被 JSP 容器拒绝,编译时抛出异常; - 强制开发者使用 EL、JSTL、JSP 动作标签替代脚本元素,实现 “无脚本 JSP”(推荐的企业级开发规范)。
- 页面中所有 Java 脚本元素(
应用场景:
- 规范团队开发:避免 JSP 页面中嵌入大量杂乱的 Java 代码,提升页面可维护性;
- 安全管控:减少脚本元素可能带来的代码注入、逻辑漏洞等安全风险;
- 前后端分离:让 JSP 仅专注于视图展示,业务逻辑交由 Servlet/Controller 处理。
示例:
1 | <%@ page contentType="text/html;charset=UTF-8" isScriptingEnabled="false" %> |



