论坛首页 Web前端技术论坛

dwr能实现每次访问的都是同一个对象吗?

浏览 8562 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-09-13  
DWR
刚学dwr不久,觉得挺方便的,但是遇到了一个问题如下,很简单的demo,
就是从页面里输入数据在java类里添加到一个arraylist里,可是每次得到的结果都是当前的输入值,而把上一次的输入值抵消了,想明白一下其中的道理。
============================================
jsp页面
<script type='text/javascript' src='dwr/interface/Hello.js'></script>
  <script type='text/javascript' src='dwr/engine.js'></script>
  <script type='text/javascript' src='dwr/util.js'></script>
<script type='text/javascript'>
function hello() {
    var user = $('user').value;
    Hello.hello(user, callback);
}

function callback(msg) {
   DWRUtil.setValue('result', msg);
}
  </script>
<input type='button' value='hello' onclick='hello();' />
============================================================
dwr.xml
<dwr>
  <allow>
    <create creator="none" javascript="Hello" scope="session">
      <param name="class" value="com.test.Hello" />
    </create>
  </allow>
</dwr>
==================================================================
java文件
public class Hello {

public static String hello(String name) {
List ls = new ArrayList();
ls.add(name);
System.out.println(ls.size());

                         for (Object ss : ls) {
System.out.println(ss);
        }
}

}
=========================================================
得到的list.size()的值总是1,而不能实现累加的效果。
希望了解这是为什么~~谢谢
   发表时间:2007-09-13  
一开始我使用creator="new" 来试验的,不行,后来才改成次日creator="none" 在java类里使用static类。
是不是dwr每次访问java类的时候,都会创建一个新的对象阿。
0 请登录后投票
   发表时间:2007-09-13  
你把 creator换成  spring ,spring用单例
0 请登录后投票
   发表时间:2007-09-13  
因为你的hello方法每次调用都是new一个ArrayList
0 请登录后投票
   发表时间:2007-09-13  
我也知道每次都new一下,有没有什么办法不让他new 一个新对象,还继续用老的对象呢。(正在试验单例模式)
0 请登录后投票
   发表时间:2007-09-13  
static
静态成员变量
0 请登录后投票
   发表时间:2007-09-13  
fins 写道
你把 creator换成  spring ,spring用单例



这个类就不是bean阿,加入spring后提示 Attribute "singleton" must be declared for element type "bean".
0 请登录后投票
   发表时间:2007-09-13  
所有java类都可以看成是一个bean啊
你这个类到底是什么样的呢?
肯定是能new 一个 或者是从工厂里造一个出来的吧??

0 请登录后投票
   发表时间:2007-09-13  
fins 写道
所有java类都可以看成是一个bean啊
你这个类到底是什么样的呢?
肯定是能new 一个 或者是从工厂里造一个出来的吧??


是阿 我也觉得奇怪 鬼知道怎么回事啊 还在不断试验中~~~...
0 请登录后投票
   发表时间:2007-09-13  
用最原始的ajax也是那样,难道这样就不能实现~~,大家有啥想法或建议可以说出来啊 大家一起讨论一下阿
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics