[100分送一人]初学JSP遇到的奇怪的现象,难道是bug?高手请进!!!

liyan010 2008-04-10 04:24:00
加精
很简单的调用JavaBean的问题:

一、俩文件,一个Bean,一个JSP文件。(环境Tomcat4.1和jdk1.4)

1.JavaBean代码如下:(文件名为CounterBean.java)
----------------------
package mypack;
public class CounterBean{
private int count=0;
public CounterBean(){}

public int getCount(){
return count;
}
public void setCount(int count){
this.count=count;
}
}
-----------------------
2.JSP文件代码如下:(文件名为Counter.jsp)
-----------------------
<%@ page import="mypack.CounterBean" %>
<html>
<head>
<title>
Counter
</title>
</head>
<jsp:useBean id="myBean" scope="session" class="mypack.CounterBean" />
<body>
<jsp:getProperty name="myBean" property="count" />
<br>
<%
out.println(myBean.getCount());
%>
<jsp:setProperty name="myBean" property="count" value="<%=myBean.getCount()+1%>"/>
</body>
</html>
--------------------------------

二、问题描述:
URL=http://localhost/文件夹路径/Counter.jsp
我通过浏览器访问以上路径,开始输出结果没问题,每次刷新都能自加一。
但是当我把JSP文件中的scope从scope="session"改成scope="application",保存了,再刷新以后,结果竟然不变了,而且一直停留在
1
0
上了,很奇怪,不仅不自加一,而且竟然俩数字不一样!!当我打开一个新的浏览器访问该地址的时候,结果没问题,每次刷新可以自加一。但是原先的浏览器依然不行。

请高手给解释一下,100分送给第一个说明白的人。
...全文
1340 62 打赏 收藏 转发到动态 举报
写回复
用AI写文章
62 条回复
切换为时间正序
请发表友善的回复…
发表回复
jdfhgfdkh 2008-11-20
  • 打赏
  • 举报
回复
学习。做个标记。
xuebao0818 2008-11-17
  • 打赏
  • 举报
回复
经典
orz_ORZ_orz 2008-11-15
  • 打赏
  • 举报
回复
学习
wolfly22 2008-11-14
  • 打赏
  • 举报
回复
坐在地板上学习~
qllihuohua 2008-11-14
  • 打赏
  • 举报
回复
学习。。。。。。
l297869609 2008-09-27
  • 打赏
  • 举报
回复
路过,学习下
zcx1357 2008-07-16
  • 打赏
  • 举报
回复
我看是你浏览器的问题,正常情况不会,可能是你浏览器的设置不同吧
lever0066 2008-04-21
  • 打赏
  • 举报
回复
呵呵都说那么多,我说一种简单的办法,楼主可以试试

把session改成request就行了

<jsp:useBean id="myBean" scope="request" class="adfa.CounterBean" /> <!--第一行-->
liyan010 2008-04-21
  • 打赏
  • 举报
回复
[Quote=引用 54 楼 lever0066 的回复:]
呵呵都说那么多,我说一种简单的办法,楼主可以试试

把session改成request就行了


HTML code<jsp:useBean id="myBean" scope="request" class="adfa.CounterBean" /> <!--第一行-->
[/Quote]

哇————这个办法不错,100分应该给你啊!

哈哈,lever0066,你实在太逗了...... ^_^
liyan010 2008-04-18
  • 打赏
  • 举报
回复
因为:

[Quote=引用 38 楼 java2000_net 的回复:]
37楼正解,下面是 findAttribute的API说明

Java code /**
* Searches for the named attribute in page, request, session (if valid),
* and application scope(s) in order and returns the value associated or
* null.
*
* @param name the name of the attribute to search for
* @return the value associated or null
* @throws NullPointerException if the name is n…
[/Quote]
yongpang 2008-04-16
  • 打赏
  • 举报
回复
还是实践出真知啊!!要多多学习了!
不过我有点不明白,这里:
myBean = (mypack.CounterBean) pageContextObj.getAttribute("myBean", pageContext.APPLICATION_SCOPE);
设计时为什么(mypack.CounterBean)(pageContextObj.findAttribute("myBean")).getCount();这个findAttribute()
不根据jsp页面上给出的scope去查找,而是从page,request,session,application这样的顺序来查找呢?
各位能说说吗?对jsp不是很清楚,希望学习下。
skierhood 2008-04-13
  • 打赏
  • 举报
回复
很好很强大,哈哈,受教了~
findself 2008-04-13
  • 打赏
  • 举报
回复
呵呵,好玩。。。姜还是老的辣!!
学到
小五五 2008-04-13
  • 打赏
  • 举报
回复
看来不光要知其然,还要知其所以然呢
awusoft 2008-04-11
  • 打赏
  • 举报
回复
有空的话可以按我说的一步一步去验证一下.的确是那个结果
yuanjianbin 2008-04-11
  • 打赏
  • 举报
回复
想了想,觉得可能有是浏览器缓存的问题。要不为什么有的人运行的时候是正确的呢?
建议你修改一下internet选项,设置为每次访问此页时检查,再看看是不是还有这样的问题?
yuanjianbin 2008-04-11
  • 打赏
  • 举报
回复
觉得很有意思,关注一下。明天再好好想想!
beecatch 2008-04-11
  • 打赏
  • 举报
回复
原以为JSP写出来能用就行.
今天才发现里面有趣的东西,难怪总听别人用什么东西都说玩~
liyan010 2008-04-11
  • 打赏
  • 举报
回复
OK,懂了,谢谢。
这个问题真迷惑人,周围问了一圈没人能说清楚,到这里弄懂了,看来还是CSDN藏龙卧虎啊。
再次感谢huangwen9,100分送上。
  • 打赏
  • 举报
回复
这100分好难挣啊 不淌这个浑水了 哈哈
加载更多回复(42)

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧