转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 站长学院 >> Web开发 >> 正文
深入jsp:useBean         ★★★★

深入jsp:useBean

作者:闵涛 文章来源:闵涛的学习笔记 点击数:590 更新时间:2009/4/23 10:54:43
 avaBean在JSP中的应用给我们带来了很大的方便,使得我们能够把功能较单纯的代码提取出来,增加了代码重用率。$#@60;jsp:useBean /$#@62;这个命令大家在每个JSP文件的开头一般都会用吧?下文将要介绍的是useBean命令的一些特殊用法,包括怎样为多个页面共享的bean进行初始化,以及怎样简便的把request的数据传递到bean中去。
  大家都知道bean有一个scope属性,指明bean的类型的实例建立的位置。默认的page就表示放在PageContext对象中,可以在本页面内部使用;request表示放在ServletRequest对象中,在当前request的处理期间都能够访问,这个其实和page差不多;session表示放在HttpSession对象中,只要当前页面的page.session设置为true就能够访问;application表示放在ServletContext对象中,当前服务器上面属于一个application的servlet都能访问。使用不同的scope属性值就能在不同的范围内共享bean内部的数据,但是当想为bean作一些初始化工作的时候,如果不能确定哪一个页面先运行怎么办?
  解决的方法是有的。除了常见的$#@60;jsp:useBean ... /$#@62;这种创建bean的格式以外,还有下面这种方式:
  $#@60;jsp:useBean ...$#@62;代码$#@60;/jsp:useBean$#@62;中间的代码就可以用来进行初始化工作,因为这些代码只在一个bean创建的时候执行。新创建一个bean的条件是,在一个application的范围内,没有id和scope都相同的bean存在。所以,如果你有许多页面上使用同一个bean,又想在初始化的时候设置一些bean的property,你可以把初始化代码放在每一个申明中,然后系统运行的时候只有第一个被执行的页面能够执行到这些初始化代码。
  举个例子,你有一个网站有许多的入口页面,现在你想跟踪一个用户在你的网站上逗留的时间,你可以用一个scope为session的bean来记录用户首次访问的时间,在他离开的时候把总时间存到用户数据库里面。这里只看看怎样记录首次访问时间。
  我们的bean中的关键部分是这个样子:
  /** a bean to record user browsing time
  * log-in time set by the first page visited
  */
  package myapp;
  public class TimeRecordBean {
  private long loginTime;
  private long logoutTime;
  ...
  public void setLoginTime(long time) {
  this.loginTime = time;
  }
  ...}//end of bean class然后,在所有可能的入口页面 娑脊灿谜庑┐耄?
  $#@60;html$#@62;$#@60;body$#@62;$#@60;%@ page import=“java.util.*”%$#@62;$#@60;%@ page session=”true”%$#@62;$#@60;% ...long visitTime = Date.getTime();...
  %$#@62;$#@60;jsp:useBean id=”timerec”class=”myapp.TimeRecordBean”
  scope=”session”$#@62;$#@60;jsp:setProperty name=”timerec”
  property=”longinTime”
  value=”$#@60;%= visitTime%$#@62;”/$#@62;$#@60;/jsp:useBean$#@62;...$#@60;/body$#@62;$#@60;/html$#@62;现在,不论用户从哪一个页面进入你的网站,你都会得到进入的时间。再加上对用户id的记录和用户退出时的检测就能实现你的统计了。


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Web开发  · 网页制作
    · 平面设计  · 网站运营
    · 网站推广  · 搜索优化
    · 建站心得  · 站长故事
    · 互联动态
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台