Mybatis挪用視圖和存儲進程的辦法。本站提示廣大學習愛好者:(Mybatis挪用視圖和存儲進程的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是Mybatis挪用視圖和存儲進程的辦法正文
如今的項目是以Mybatis作為O/R映照框架,確切好用,也異常便利項目標開辟。MyBatis支撐通俗sql的查詢、視圖的查詢、存儲進程挪用,是一種異常優良的耐久層框架。它可應用簡略的XML或注解用語設置裝備擺設和原始映照,將接口和java中的POJO映照成數據庫中的記載。
一.挪用視圖
以下就是挪用視圖來查詢收益明細,sql部門以下:
<!-- 獲得明細 --> <select id ="getContactEarnsDetail" resultType= "java.util.Map" parameterType ="java.lang.Integer"> select title,trade_time,trade_amount from v_contacts_earn where user_id = #{userId} </select >
該視圖前往的數據類型為map。
mapper部門以下:
List<Map<String, Object>> getContactEarnsDetail(Integer userId);
接口部門以下:
List<Map<String, Object>> getContactEarnsDetail(Integer userId);
完成以下:
@Override public List<Map<String, Object>> getContactEarnsDetail(Integer userId) { Assert. notNull(userId); return contactEarnsMapper.getContactEarnsDetail(userId); }
如上例所示,挪用視圖好像挪用正常的sql查詢語句普通。
二.挪用存儲進程
挪用存儲進程能夠還會有前往成果集,在這裡我重要針對前往成果集的情形停止論述。
(1)含有前往成果集
如存儲進程構造以下:
p_my_wallet(IN var_user_id INT); 參數是用戶id revenue_today 昔日收益 revenue_contacts 人脈收益 balance 可用余額
sql部門以下:
<!-- 獲得錢包信息 --> <select id="getMyWallet" parameterType="java.lang.Integer" resultType="java.util.Map" statementType="CALLABLE"> { call p_my_wallet( #{userId,jdbcType=INTEGER,mode=IN} ) } </select>
則mapper部門為:
Map<String, Object> getMyWallet(@Param("userId")Integer userId);
接口部門為:
Map<String, Object> getMyWallet(Integer userId);
(2)沒有前往成果集
sql部門以下:
< select id= "cardBuild" statementType ="CALLABLE"> <![CDATA[ {call p_insert_card_build_info (#{is_customized_,mode=IN,jdbcType=INTEGER},#{face_value_,mode=IN,jdbcType=INTEGER},#{number_,mode=IN,jdbcType=INTEGER})} ]]> </ select>
以上所述是小編給年夜家引見的Mybatis挪用視圖和存儲進程的辦法,願望對年夜家有所贊助,假如年夜家有任何疑問請給我留言,小編會實時答復年夜家的。在此也異常感激年夜家對網站的支撐!