<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Be alaways javaing...

    Loving Java
    posts - 43, comments - 5, trackbacks - 0, articles - 0
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    OfBiz中的數(shù)據(jù)操作

    Posted on 2008-09-08 17:59 追風(fēng)舞者 閱讀(1233) 評(píng)論(0)  編輯  收藏 所屬分類: OfBiz
    1.OfBiz中利用delegator訪問(wèn)數(shù)據(jù)庫(kù)

    1)創(chuàng)建GenericDelegator對(duì)象
      1.1 service中
      public static Map createHelloPerson(DispatchContext dctx, Map context) {
              GenericDelegator delegator = dctx.getDelegator();
         ...
      }
      1.2手工建立GenericDelegator對(duì)象
      GenericDelegator delegator = GenericDelegator.getGenericDelegator("default");

    2)Insert a record
      通過(guò)調(diào)用delegator對(duì)象的getNextSeqId(), makeValue(String entityName, Map fields)和create()方法。
      例如:
           String helloPersonId = delegator.getNextSeqId("HelloPerson");
        GenericValue helloPerson = delegator.makeValue("HelloPerson",
                        UtilMisc.toMap("helloPersonId", helloPersonId)); // create a GenericValue from ID we just got
          helloPerson.setNonPKFields(context); // move non-primary key fields from input parameters to GenericValue
        delegator.create(helloPerson); // store the generic value, ie persists it
       
    3)Remove a record
        delegator.removeByAnd(String entityName, Map fields);
       
    4)Strore a record
        例如:
          Map pk = UtilMisc.toMap("attribute1", attribute1Value, "attribute2", attribute2Value);//pk中存儲(chǔ)了查詢條件
        GenericValue obj = delegator.findByPrimaryKey("ClassName", pk);
          obj.setNonPKFields(context);//contex為Map類型,存儲(chǔ)了要更新的字段
        obj.store();

    5)Store records
        List resultList = delegator.findAll(String entityName, List orderBy);
        List toStore = new ArrayList();
        toStore.addAll(resultList);
        delegator.storeAll(toStore);
       
    6)Look for record/records
         findByAnd,findByCondition、findByLike、findByOr、findByPrimaryKey、
         findListIteratorByCondition、 findall、findAllByPrimaryKeys
        
    2) 依據(jù)數(shù)值對(duì)象進(jìn)行訪問(wèn)
        在現(xiàn)有的數(shù)值對(duì)象(GenericValue類型)上可以進(jìn)行下列操作:
            根據(jù)關(guān)系查找關(guān)聯(lián)信息getRelated,包括getRelated、getRelatedByAnd、getRelatedDummyPK、getRelatedMulti、getRelatedOrderBy。
            刷新本數(shù)值對(duì)象refresh
            保存本數(shù)值對(duì)象store,主要用于修改后的保存
            刪除數(shù)值對(duì)象remove,包括刪除本數(shù)值對(duì)象remove和刪除某個(gè)關(guān)聯(lián)的數(shù)值對(duì)象removeRelated
            在現(xiàn)有數(shù)值對(duì)象上的操作是通過(guò)調(diào)用
       
        更加具體的信息可參考:http://www.opentaps.org/javadocs/release-1.0.1/framework/api/



    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 免费污视频在线观看| 久久久久国色av免费看| 亚洲男人的天堂一区二区| 国产一区二区三区免费观在线| 亚洲美女视频网址| 永久免费av无码网站大全| 丝袜捆绑调教视频免费区| 亚洲乱码一二三四区乱码| 亚洲国产成人久久综合碰| 99热在线免费观看| 粉色视频免费入口| 久久亚洲精品中文字幕无码| 成人午夜视频免费| 国产又黄又爽又大的免费视频| 亚洲综合色一区二区三区| 亚洲专区中文字幕| 亚洲AV无码一区二三区| 啦啦啦完整版免费视频在线观看| 男女猛烈xx00免费视频试看| 亚洲黄色网站视频| 亚洲日本一区二区三区在线不卡| 成人免费视频69| 中文字幕一区二区三区免费视频| 亚洲综合一区无码精品| 亚洲国产精品热久久| 波多野结衣中文一区二区免费| 在线视频精品免费| 国产成人无码区免费内射一片色欲| 亚洲国产成人手机在线观看| 亚洲美女视频网址| 亚洲Av永久无码精品三区在线| 亚洲国产av一区二区三区| 啦啦啦高清视频在线观看免费 | 亚洲精品自产拍在线观看| 久久久www成人免费毛片| 日本免费人成网ww555在线| 日韩一级片免费观看| 亚洲AV无码成人网站在线观看| 亚洲日本在线观看网址| 亚洲国产精品嫩草影院在线观看 | a级毛片免费网站|