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

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

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

    時(shí)光如水

    我心跳動(dòng)
    posts - 6, comments - 10, trackbacks - 0, articles - 4
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    ValueList原理說明

    Posted on 2006-05-16 16:15 qiqijava 閱讀(2056) 評(píng)論(5)  編輯  收藏 所屬分類: Tag

    ??????????????????????????? ValueList中四個(gè)主要的接口與實(shí)現(xiàn)類

    1. ValueListInfo 封裝Map對(duì)象,含有排序、分頁(yè)、聚焦和提交表單等相關(guān)信息
    2. ValueListHandler接口,實(shí)現(xiàn)類:DefaultValueListHandlerImpl 它是ValueList中的核心類,其定義在配置文件中,調(diào)用getValueList方法返回ValueList對(duì)象
    3. ValueList接口,實(shí)現(xiàn)類:DefaultListBackedValueList 它包含兩個(gè)對(duì)象,1)域?qū)ο蟮慕Y(jié)果集,2)ValueListInfo對(duì)象
    4. ValueListAdapter接口,有以下幾種實(shí)現(xiàn)
    ?○ DefaultWrapperAdapter???????? jdbc操作的適配器
    ?○ EventLogAdapter?????????????? 日志操作的適配器
    ?○ FileSystemAdapter???????????? 文件系統(tǒng)操作的適配器
    ?○ HibernateAdapter????????????? hibernate操作的適配器
    ?○ MappingSqlQueryAdapter??????? iBATIS的sqlMap適配器
    ?
    具體實(shí)現(xiàn)流程

    第一步:從請(qǐng)求中構(gòu)造ValueListInfo對(duì)象,由幫助類ValueListRequestUtil實(shí)現(xiàn)
    ?從請(qǐng)求中取得URL的參數(shù)和系統(tǒng)默認(rèn)值來構(gòu)造ValueListInfo對(duì)象
    ?
    第二步:得到Adapter的實(shí)現(xiàn)類
    ?調(diào)用getBean方法,從配置文件中取得ValueListHandler實(shí)現(xiàn)類,調(diào)用getValueList方法,得到實(shí)體key對(duì)應(yīng)的Adapter,如:
    ?<bean class="net.mlw.vlh.adapter.hibernate3.HibernateAdapter">
    ??<property name="sessionFactory"><ref bean="mySessionFactory"/></property>
    ??<property name="defaultNumberPerPage"><value>10</value></property>
    ??<property name="defaultSortColumn"><value>messageIn.date</value></property>
    ??<property name="defaultSortDirection"><value>desc</value></property>
    ??<property name="hql">
    ??<value>
    ??from User AS vo
    ???/~certNumber: where vo.certNumber like {certNumber} ~/
    ???/~name: where vo.name like {name} ~/
    ???/~certHolder: where vo.certHolder like {certHolder} ~/
    ???/~groupName: where vo.group.name like {groupName} ~/
    ???/~sortColumn: ORDER BY vo.[sortColumn] [sortDirection]~/
    ??</value>
    ??</property>
    ??<property name="defaultFocusPropertyObjectAlias"><value>vo</value></property>
    ??<property name="maxRowsForFocus"><value>160000</value></property>??
    ??<property name="removeEmptyStrings"><value>true</value></property>
    ?</bean>
    第三步:構(gòu)造ValueList對(duì)象,使用DefaultListBackedValueList實(shí)現(xiàn)類
    ?用適配器取得結(jié)果集(如HibernateAdapter),封裝ValueList對(duì)象
    ?ValueList中包含兩個(gè)對(duì)象,1)域?qū)ο蟮慕Y(jié)果集,2)ValueListInfo對(duì)象(分頁(yè)的相關(guān)息)
    ?
    第四步:把ValueList對(duì)象放到WEB的作用域中

    HQL說明:主要通過迭代動(dòng)態(tài)生成HQL語句
    from User AS vo
    ?/~certNumber: where vo.certNumber like {certNumber} ~/?????????? (1)
    ?/~name: where vo.name like {name} ~/???????????????????????????? (2)
    ?/~certHolder: where vo.certHolder like {certHolder} ~/?????????? (3)
    ?/~groupName: where vo.group.name like {groupName} ~/???????????? (4)
    ?/~sortColumn: ORDER BY vo.[sortColumn] [sortDirection]~/???????? (5)

    (1)如果ValueListInfo中包含certNumber變量,如certNumber=100,則vo.certNumber like=100,生成HQL=from User AS vo where vo.certNumber like=100;
    ??????? 如果ValueListInfo中不包含certNumber變量,生成HQL=from User AS vo?? (1)行由空白代替
    其它以此類推
    注意:傳給HQL的每個(gè)變量都要單獨(dú)占一行,就算是類似between and 的語句也要分兩行寫


    評(píng)論

    # re: ValueList原理說明  回復(fù)  更多評(píng)論   

    2006-08-24 08:54 by kite
    寫的不錯(cuò),能不能詳細(xì)點(diǎn)!~我是新手,看的不大懂!

    # re: ValueList原理說明  回復(fù)  更多評(píng)論   

    2006-12-30 11:19 by qiqijava[匿名]
    老兄,我覺得挺細(xì)了,再細(xì)就只能說廢話了,呵呵@kite

    # re: ValueList原理說明[未登錄]  回復(fù)  更多評(píng)論   

    2008-02-27 09:59 by TANG
    很好!!
    3Q

    # re: ValueList原理說明[未登錄]  回復(fù)  更多評(píng)論   

    2008-06-22 17:35 by Joe
    哥們,請(qǐng)教一下怎么設(shè)置 ValueList的多個(gè)字段排序呢? 謝謝

    # re: ValueList原理說明  回復(fù)  更多評(píng)論   

    2008-10-07 11:51 by 學(xué)習(xí)
    哥們啊,可不可以寫個(gè)實(shí)例出來啊,麻煩了

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 小小影视日本动漫观看免费| 久久99国产亚洲精品观看| xxxxx做受大片视频免费| 亚洲男人第一av网站| 免费的涩涩视频在线播放| 久草免费福利在线| 久久精品免费一区二区三区| 亚洲欧洲高清有无| 亚洲国产综合人成综合网站| 免费在线看黄的网站| 亚洲国产精品无码第一区二区三区| 亚洲一区二区三区在线播放| 国产大片免费网站不卡美女 | 亚洲男同帅GAY片在线观看| 青娱乐免费视频在线观看| www在线观看播放免费视频日本| 亚洲精品美女在线观看| 亚洲精品无码日韩国产不卡?V| 亚洲视频免费在线播放| 乱爱性全过程免费视频| 亚洲首页国产精品丝袜| 亚洲女初尝黑人巨高清| 国产做床爱无遮挡免费视频| 亚洲一区免费在线观看| 久久久精品视频免费观看| 亚洲JIZZJIZZ妇女| 亚洲日本在线播放| 国产精品亚洲A∨天堂不卡| 日产乱码一卡二卡三免费| 又黄又爽又成人免费视频| 久久免费精品一区二区| 人体大胆做受免费视频| 亚洲色大18成人网站WWW在线播放| 亚洲欧洲国产日韩精品| 亚洲国产精品无码久久SM| 亚洲高清成人一区二区三区| 免费无码看av的网站| 国语成本人片免费av无码| 16女性下面无遮挡免费| 99精品免费视频| fc2成年免费共享视频网站|