<%@ page language="a"e="/html; charset=UTF-8"eEncoding="UTF-8">

<%@ page import="a.util.*"

JSP警告实例

常见JSP警告类型演示

<%-- 1. 隐式对象使用警告 --%>

警告1:隐式对象使用

<%

// 模拟pageContext隐式对象使用

pageContext.setAttribute("testAttr"测试值" String value = (String)pageContext.getAttribute("Attr" %>

页面属性值: <%= value %>

<%-- 2. 脚本元素使用警告 --%>

警告2:脚本元素使用

<%

// 传统的脚本元素使用(不推荐)

Date now = new Date();

String userAgent = request.getHeader("User-Agent" %>

当前时间: <%= now %>

浏览器信息: <%= userAgent %>

<%-- 3. 作用域管理警告 --%>

警告3:作用域管理

<%

// 在不同作用域设置相同属性名

pageContext.setAttribute("message" "作用域消息" request.setAttribute("e"请求作用域消息" session.setAttribute("message" "作用域消息" application.setAttribute("e"应用作用域消息" %>

页面作用域: <%= pageContext.getAttribute("message" %>

请求作用域: <%= request.getAttribute("message" %>

<%-- 4. 异常处理警告 --%>

警告4:潜在异常风险

<%

try {

// 模拟可能产生异常的代码

String nullStr = null;

int length = nullStr.length(); // 这里会产生NullPointerException

} catch (Exception e) {

out.println("捕获到异常: " e.getMessage());

}

%>

<%-- 5. 编码问题警告 --%>

警告5:字符编码问题

<%

// 模拟参数接收(可能存在的编码问题)

String param = request.getParameter("Param" if (param != null) {

// 未进行编码处理的参数输出

out.println("接收参数: " + param);

}

%>

http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0" JSP Warning Demo

showWarning.jsp

30