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

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

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

    yxhxj2006

    常用鏈接

    統計

    最新評論

    ibatis動態參數和集合參數配置

    iterate 

    // 此處必須要$,不能用#property<result property="" column=""/>    ibatis是輕量的ORM,類似于一個半自動化化數據操作框架。而hibernate是全自動的ORM。
        ibatis主要是讓實體類與數據庫的字段名稱一一對應,然后在xml編寫操作數據庫的SQL語句。
        ibatis數據庫操作主要包括增刪查改。
       主要包括:一:在代碼中:
                         通過sqlMapper.queryForList("sql_id",param),其中:sql_id就是我們在xml中編寫的sql語句id號(通過此id找到數據庫sql語句)
                         parm就是查詢條件參數值(一般是一個參數(也有兩個參數或者無參數)),參數值可以使對象,int或者String類型。
                    二:在xml編寫sql語句,主要包括增刪查改
                        在寫sql語句前,可以做一些其他的簡單說明:比如,類別名(類似給類弄一個簡稱,方法類以后使用),實體類與數據字段一一對應說明等等。
                        <sqlMap namespace="空間名稱">
                    <typeAlias alias="teacher" type="com.wsw.ibatis.bean.Teacher"/>        // 給類取一個別名,方便以后在后來使用。
                    <resultMap class="" id="">                                                             // 給返回的類定一個id號,以后就可以直接用該id表示這個類    
                    <result property="屬性名" column="數據庫字段名"/>                      // 返回的實體類的屬性與數據庫字段匹配,兩者名稱可相同或者不同 
                                   
    <result property="屬性名" column=" 數據庫字段名"/>
                    </resultMap>
                    <parameterMap class="" id="">                                                       // 參數類,用于執行sql的參數值,與上面的返回類不同。
                <parameter property="屬性名" jdbcType="屬性類型"/>                                        
                    </parameterMap>
                       </sqlMap>
                      還有就是: parameterClass 表示參數類,用于做參數值。
                                    parameterClass  表示返回值類,用于返回值。
                                    在這種情況下 ,沒有把實體類屬性和數據庫的字段一一寫出,表示實體類屬性和數據庫的字段名稱和類型完全一致。
                   ----------------------------------------------------------------------------------------------------------------------------
                        (1):增:     <insert id="addTeacher" parameterClass="com.wsw.ibatis.bean.Teacher">
                                               insert into teacher (id,username, age)values (#id#,#username#,#age#)
                                            </insert>
                                 
                        (2):刪:   <delete id="deleteAccountById" parameterClass="String">
    delete from teacher where id = #id#
    </delete>

                       (3):改: <update id="updateTeacher" parameterClass="com.wsw.ibatis.bean.Teacher">
    update teacher set username=#username#,age= #age# where id=#id#
    </update>

                       (4):查:    <!-- 查找某一條記錄 -->
                                    <select id="selectTeacherById" parameterClass="int" resultClass="com.wsw.ibatis.bean.Teacher">
                                select * from teacher where id = #id#
    </select>
                                           <!-- 查詢所有記錄 -->
                                    <select id="selectAllTeacher" resultClass="com.wsw.ibatis.bean.Teacher">
    select * from teacher
    </select>
                  ===============================================================================================
                        (5):動態按照條件查詢 (如果需要循環迭代,最好用list,不要用數組)
                                           <!-- 按照提交參數記錄 -->
    <select id="selectSomeTeacher" parameterClass="com.wsw.ibatis.bean.Teacher"                                                                   resultClass="com.wsw.ibatis.bean.Teacher" >
                                                select * from teacher 
                                    <dynamic prepend="WHERE">                 // 表示動態
                                  <isNotEmpty prepend="AND" property="username">        // isNotEmpty 表示如果非空,property表示類屬性名
                                  <![CDATA[ username in ]]>        
                                                                          <iterate conjunction="," open="(" close=")" property="username" >  // iterate 表示迭代
                                                $usernames[]$              // 此處必須要$,不能用#                     // 迭代必須是集合list 千萬不能
                                            </iterate>                                                                                             //是數組
                                   <![CDATA[]]>
                                                    </isNotEmpty>
    <isNotEmpty prepend="AND" property="age">
    (age = #age#)                              // 此處最好用#,不要用$
    </isNotEmpty>
    </dynamic>
    </select>
      

    posted on 2012-08-31 00:19 奮斗成就男人 閱讀(5147) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久久久久精品免费免费自慰| 日本免费在线中文字幕| 国产一卡2卡3卡4卡2021免费观看| 久久被窝电影亚洲爽爽爽| 国产一级a毛一级a看免费视频 | 美女18毛片免费视频| 免费看a级黄色片| 日韩亚洲国产综合高清| 免费理论片51人人看电影| 亚洲色无码专区一区| 国产性生交xxxxx免费| 校园亚洲春色另类小说合集| 免费jjzz在线播放国产| 午夜亚洲国产精品福利| 亚洲日本在线观看视频| 久久久久久久国产免费看| 亚洲av综合av一区| aⅴ在线免费观看| 天天爽亚洲中文字幕| 国产免费爽爽视频免费可以看| 边摸边脱吃奶边高潮视频免费| 免费女人18毛片a级毛片视频| 久久久久久毛片免费看| 亚洲国产精品久久66| 国产啪精品视频网免费| 亚洲AV色欲色欲WWW| 国产国拍亚洲精品福利 | 羞羞视频在线免费观看| 中文字幕亚洲日韩无线码| 无码av免费一区二区三区| 亚洲黄色中文字幕| 国产成人综合久久精品免费| 成人毛片100免费观看| 亚洲综合激情视频| 四虎影视精品永久免费网站| 国产一级a毛一级a看免费视频| 亚洲短视频在线观看| 日本久久久免费高清| 成人A片产无码免费视频在线观看| 亚洲中字慕日产2020| 又粗又黄又猛又爽大片免费|