getServletContext().getAttribute() 的类型转换问题

qwercv qwercv 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
<%@ page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import="java.util.*"%>
<html>
<head><title>Java Web</title></head>
<body>
<center>
<%
String aname=null;
String avalue=null;
Enumeration enu = this.getServletContext().getAttributeNames();
while(enu.hasMoreElements())
{
aname = (String)enu.nextElement();
avalue=(String)getServletContext().getAttribute(aname);
%>
<%=aname%>-----><%=avalue%><br>
<%
}
%>
</center>
</body>
</html>

第14行 java.lang.ClassCastException: [Ljava.lang.String; cannot be cast to java.lang.String
getAttribute()返回的是Object类型,将其转换为String然后赋给一个String类型的value为什么会报错呢?
如果不转换不赋值,直接输出 <%=getServletContext().getAttribute(aname)%> 却可以,为什么啊?

...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部
qwercv
Web 开发 81,108 成员 341,721 内容