楼主
PersistenceManager 相当于Hibernate 的session,在getPM()后是要pm.close();
的,jdo在内部已经做了连接池,pm.close(),只是将连接释回连接池.
在哪里开PM,就在哪里关PM,遵守这个原则...

解决方案 »

  1.   

    楼上的知不知道query.declareVariables的用法
    假如我有多个查询参数
    该怎么设置
    谢谢了
      

  2.   

    这个是最基础的查询了..
    kodo为例String filter="this.uniqueID == uniqueID && this.name == name";
    Query q=pm.newQuery(MemLocalMemberBaseInfo.class);
    q.setFilter(filter);
    q.declareParameters("String uniqueID,String name");
    Collection c=(Collection) q.execute(uniqueID,name);不知道你用哪个厂商的jdo实现,文档应该会说的很清楚...
      

  3.   

    这个我知道
    我想知道的是query.declareVariables的用法啊
      

  4.   

    还有一个问题
    我在执行了一个查询后,该在哪里执行pm.close()
    Object result=query.execute();
    pm.close();//是在这里执行吗??
    return result;
      

  5.   

    query什么时候需要被关闭
    什么时候又不需关闭
    望赐教
      

  6.   

    query要你关干什么啊..如果在business层开pm就这样
    PersistenceManager pm = factory.getPm();
    dao.method1(pm);
    dao.method2(pm);
    pm.close(); 最后在business关闭在哪里开PM,就在哪里关PM,遵守这个原则...
      

  7.   

    其实jdo的pm是不直接和数据库connection相关的,
    pm不关闭只会占用内存资源而不是数据库连接资源
    你可以不关闭pm(看具体情况),让jvm来发现并回收..
      

  8.   

    有没有JDO的群呀!能不能开辟一个JDO技术专区!我的QQ是12557587
    JDO技术交流
      

  9.   

    在国内,使用jdo的比较少,楼上用的是哪家的jdo ?
      

  10.   

    我用的是KODO JDO 能不能交流一下呀。
      

  11.   

    fantasyCoder(Attitude is everything)
    很高兴能有兄弟对JDO如此支持,很高兴有同道中人,兄弟可以交流一下吗?
    我的QQ:12557587
      

  12.   

    其实,我想在
    try{
    }catch{}
    finally{pm.close();
    }楼主不防一试。
      

  13.   

    正版的KODO JDO
    多少钱啊?