<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)航:
     
    主站蜘蛛池模板: 日韩在线看片免费人成视频播放| 亚洲麻豆精品果冻传媒| 亚洲国产日韩a在线播放| 国产2021精品视频免费播放| 久久综合亚洲色HEZYO社区| 久久久久久国产精品免费免费男同| 无码国产精品一区二区免费式直播| 国产成人青青热久免费精品| 亚洲精品中文字幕| 日韩精品免费视频| 日韩亚洲Av人人夜夜澡人人爽| 欧美日韩亚洲精品| 亚洲毛片网址在线观看中文字幕| 亚洲成人高清在线观看| 无码日韩精品一区二区免费| 亚洲精品乱码久久久久久| 亚洲国产精品网站在线播放 | 亚洲国产精品自在线一区二区| 亚洲成av人在线观看网站| 免费看又黄又无码的网站| 久久亚洲精品成人无码网站| 久久免费视频一区| 亚洲AV无码不卡在线播放| 国产1000部成人免费视频| 亚洲欧洲av综合色无码| 99久久99这里只有免费费精品| 国产亚洲综合成人91精品| 国产亚洲美女精品久久久久| 精品久久久久成人码免费动漫| 亚洲av中文无码乱人伦在线播放| 日韩大片在线永久免费观看网站| 大学生一级特黄的免费大片视频 | 毛片A级毛片免费播放| 亚洲综合男人的天堂色婷婷| 在线观看免费宅男视频| 两个人日本免费完整版在线观看1| 四虎影视永久免费观看网址| 国产午夜精品久久久久免费视 | 四虎永久免费网站免费观看| 国产一区二区三区免费观看在线| ZZIJZZIJ亚洲日本少妇JIZJIZ|