public classCounterBean{private int count=0;publicCounterBean(){}public intgetCount()
{returncount;}public void setCount(intcount)
{this.count=count;}
}
在JSP中访问JavaBean
1.访问JavaBean的JSP标签:
2.jsp:useBean的原理代码:
ms.CounterBean myBean =null;
myBean= session.getAttribute("myBean");if(myBean==null)
{
myBean= newms.CounterBean();
session.setAttribute("myBean",myBean);
}
说明:实际上是创建了一个myBean变量,同时把它放入了会话范围内,所以id应该唯一。
3.访问JavaBean属性:
4.JavaBean的范围:scope属性:
page范围:页面范围内
从客户请求访问一个JSP开始到这个JSP文件执行结束。
页面范围内的JavaBean只有当前JSP页面生效,假如A页面发生请求转发B页面的话,被请求的B页面无法使用A页面的JavaBean。
request范围:请求范围内
从客户请求访问一个JSP文件开始,到这个JSP文件返回响应结果结束。
假如A页面发生请求转发B页面的话,被请求的B页面可以使用A页面的JavaBean。
session范围:会话范围内
会话范围对应整个会话的生存周期,处于同一个会话范围内的Web组件共享这个隔会话范围内的JavaBean对象。
会话范围内的JavaBean对象实际上是保存在HttpSession对象中的,因此可以通过ServletContext.getAttribute()方法读取该Web应用范围内的JavaBean对象。
application范围:在Web应用范围内
Web应用范围对应整个Web应用的生存周期,处于同一个Web应用中的所有Web组件共享这个Web应用范围内的javaBean对象。
Web应用范围内的JavaBean对象实际上是保存在ServletContext对象中的,因此可以通过ServletContext.getAttribute()方法读取该Web应用范围内的JavaBean对象。