关于网友提出的“ 刷新一次JSP页面,javabean返回来的结果就会累加!为什么?”问题疑问,本网通过在网上对“ 刷新一次JSP页面,javabean返回来的结果就会累加!为什么?”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 刷新一次JSP页面,javabean返回来的结果就会累加!为什么?描述:
bean1.class
=====================================
package testbean;
public class bean1
{
public int i,sum=0;
public int outputs()
{
for(i=1;i<=10;i=i+1)
{
sum=sum + 1;
}
return sum;
}
}
showbean.jsp
========================================
<%@page language="java"%>
<%@page c/>
<%
out.print(fnNx.outputs());
%>
上面是一个很简单的Javabean和一个使用javabean的jsp页面,运行正常。
但有一点不明白的是,当不断刷新showbean.jsp页面的时候,页面上的显示结果为:
第1次:
10
第2次:
20
第3次:
30
第...次:
...
这并不是我想要的,因为它把第1次和第2次的运行结果累加了起来,运行多少次就累加多少次。本来想要的结果是10,结果一刷新就变了。
而如果上面bean1.class中的红色那一句代码声明在outputs()里面,就不会出现这种情况,每次都会是10。
请问是什么原因?
解决方案1:
scope="session" wrong!
解决方案2:因为你使用的是session bean,你可以改成scope="page"在看看。