<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)  編輯  收藏


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


    網站導航:
     
    主站蜘蛛池模板: 五月天婷婷免费视频| 亚洲一级黄色大片| 特黄特色的大片观看免费视频| 最新猫咪www免费人成| 亚洲a视频在线观看| 免费观看激色视频网站bd| 亚洲无线电影官网| 在线免费中文字幕| 亚洲国产精品一区二区久| 日本妇人成熟免费中文字幕| 激情亚洲一区国产精品| 成年女人男人免费视频播放 | 91视频精品全国免费观看| 久久久久久A亚洲欧洲AV冫| 99视频在线观看免费| 亚洲a在线视频视频| 5g影院5g天天爽永久免费影院| 中文字幕在线观看亚洲视频| 日韩伦理片电影在线免费观看| 黄色网址大全免费| 亚洲一区二区三区无码中文字幕| 久久永久免费人妻精品下载| 亚洲AV无码乱码在线观看代蜜桃 | 久久精品国产亚洲| 黄色网址免费大全| 国产精品亚洲精品爽爽| 亚洲男女内射在线播放| 久久精品一本到99热免费| 一区二区亚洲精品精华液 | 亚洲一区二区三区亚瑟| 真实乱视频国产免费观看| 2022免费国产精品福利在线| 亚洲自偷自偷精品| 成人永久免费福利视频网站| 成人免费乱码大片A毛片| 亚洲国产视频一区| 亚洲高清最新av网站| 67194成手机免费观看| 美女被羞羞网站免费下载| 日韩精品亚洲人成在线观看| 爽爽日本在线视频免费|