寒假生活指导 19
JSP 动作标签:动态控制页面的快捷指令
JSP 动作标签通过 XML 风格的标签实现页面动态行为,是替代脚本代码的标准化方案。
- 核心动作标签
 标签 功能说明 示例代码
 jsp:include 动态包含页面(运行时合并) <jsp:include page="header.jsp"/>
 jsp:forward 请求转发到新资源 <jsp:forward page="error.jsp"/>
 jsp:param 传递参数(配合 include/forward)
 <jsp:include page="profile.jsp">
 <jsp:param name="userId" value="1001"/>
 </jsp:include>
 | jsp:useBean | 创建或获取 JavaBean |
 <jsp:useBean id="user" class="com.example.User" scope="session"/>
 | jsp:setProperty | 设置 Bean 属性 |
 <jsp:setProperty name="user" property="name" value="Alice"/>
 | jsp:getProperty | 输出 Bean 属性 |
 <jsp:getProperty name="user" property="email"/>
- 对比脚本代码
 传统脚本方式:
 <%
 User user = (User) session.getAttribute("user");
 if (user == null) {
 user = new User();
 session.setAttribute("user", user);
 }
 %>
 <%= user.getName() %>
 动作标签方式:
 <jsp:useBean id="user" class="User" scope="session"/>
 <jsp:getProperty name="user" property="name"/>
优势:
代码更简洁易读
避免直接操作 session 等底层对象
支持自动类型转换
- 实际应用场景
 模块化页面组件:
<jsp:include page="${theme}/navbar.jsp"/>
表单数据绑定:
<jsp:useBean id="formData" class="FormBean" scope="request"/>
<jsp:setProperty name="formData" property="*"/> 
权限校验拦截:
<% if(!isAdmin) { %>
<jsp:forward page="no-permission.jsp"/>
<% } %>
- 注意事项
 作用域管理:明确指定 scope(page/request/session/application)
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号