意思是:把类Config另起个名“dba”,在上下文中引用是通过id,但在一个上下文中id是不能重复的。

解决方案 »

  1.   

    但是别的jsp页面上也有这一句啊,而且很多页面上都有这么一句,我看了书上说的是:dba是类Config创建的实例啊.那么初始化这些jsp页面的时候不就都要创建同名的Config的实例dba了吗?居然对象可以重名??我有些不理解.
      

  2.   

    scope="request"
    范围限定了是一次请求提交有效
      

  3.   

    根据scope的范围去找,比如scope="request",就通过request.getAttribute("dba")看看是否可以获得对象,如果有就返回这个对象,如果是null,就创建一个然后通过request.setAttribute放到request里面。其实在一个scope里就一个实例。
      

  4.   

    我知道每个客户端都具有一个request内置对象,那是不是就是说request本身就是一个容器,它装载了该客户端的变量,对象等与其它客户端不同的东东,所以上面的Config类可以创建同名的对象??
      

  5.   

    你的意思我明白,在N个人同时访问这个页面的时候每个人都要NEW一下这个类的,也就是每个人都要产生一个这个类的实例,但并不是NEW出了多个一样的对象dba,而是同一个对象dba的多次利用,也就是说反复的初始化dba对象。不知道你听明白了吗!确实很难解释。-_#"
      

  6.   

    还有一个问题,就是比如说有一个jsp页面,该页面中如上面所示创建了一个mdb对象在Config类中,有两个成员变量,一个是类变量,一个是实例变量,如下:public static Sting s1="字符串1";--------------------------------1public String s2="字符串2";---------------------------------------2是不是就是说,对于1,在服务器端,不管多少客户端在访问该页面,都只有一个s1对象,而对于2,每一个客户端都有自己的一个s2??????????????????????????????????????
      

  7.   

    to  OnlyLikeJava(甜咖啡):什么叫反复地初始化dba对象,是不是说初始化来初始化去都只有一个dba对象,那就是说,当n个客户端在访问同一页面时,结果是只创建了一个dba对象?????????????????我觉得好像不是这回事啊
      

  8.   

    jsp页面通常是通过下面步骤来运行的:1.用户通过http请求一个后缀名是.jsp的url,此url连接到了一个jsp页面上.
    2.web server的servlet容器发现在url中有.jsp文件扩展名,就调用jsp容器来进行处理.
    3.如果此页面是第一次被请求,jsp容器要定位此jsp页面文件并解释它,解释的过程包括将jsp源文件处理成servlet代码文件(.java)以及编译.java文件生成servlet的.call文件.
    jsp解释器生成的servlet类是实现了javax.servlet.jsp.HttpJspPage接口的类的一个子类.这个servlet类被叫做页面实现类
    4.jsp容器运行页面实现类的实例,此时servlet(即jsp页面实例)就会处理http请求,生成对应的http相应并回传给客户端.所以说,每个客户端都有各自的request和response,和这个道理一样,每个客户端都有每个客户端的dba.
      

  9.   

    我把我的问题再整理一下:1.在一个网站的很多jsp页面的代码里,都有<jsp:useBean id="dba" scope="request" class="Config" />这句话,那么当n个人同时访问这些页面时,就会同时生成同名的Config类的对象dba,那么这么多的对象为什么可以同名?????上面几位仁兄的解释颇有道理:是作用域的限制但是在同样的作用域里,比如说请求期,也同样会有同名的对象啊,那么,是不是像我所说的:每个dba必然有和别的dba不一样的属性,来区别另外的dba,以达到同时有很多相同又不同的dba?????????????
      

  10.   

    2.有一个jsp页面,该页面中如上面所示创建了一个mdb对象
    在Config类中,有两个成员变量,一个是类变量,一个是实例变量,如下:public static Sting s1="字符串1";--------------------------------1
    public String s2="字符串2";---------------------------------------2是不是就是说,对于1,在服务器端,不管多少客户端在访问该页面,都只有一个s1对象,
    而对于2,每一个客户端都有自己的一个s2
    ??????????????????????????????????????
      

  11.   

    3.在n个客户端同时访问的情况下,像一个字符串变量s,怎么才能使它的数目一直保持只有一个呢?每个客户端看到的s都是那个s,而不是那个s的拷贝?????