mybatis入門&三種接口代理開發&別名、返回值、類型轉換&比較

mybatis入門程序:

增刪改查:

普通dao開發模式:

三種 接口代理開發模式:

使用接口代理注意事項:

只要使用接口,就必須知足四個條件:mysql

    * 一、映射文件namespace必須是接口全類路徑名
    * 二、映射文件Statement的id必須和接口方法名相同
    * 三、接口和映射文件必須在同一個目錄,且名稱相同
    * 四、輸入參數類型必須和parameterType參數類型一致
    * 五、輸出參數ResultType必須和接口方法返回值類型一致* git


若是sqlMapConfig.xml中引入外部映射文件使用
    <mappers>
    <mapper resource="sqlMap/user.xml"/>
    </mappers>
則是上面的4個條件,去掉條件3程序員

若是直接寫接口,就必須知足上面全部條件。
<mapper class="cn.itcast.dao.IUserDao"/>
<package name="cn.itcast.dao"/>github

別名&返回值&類型轉換:


properties 引入外部文件sql

比較(hibernate):

優秀:
    簡單,易學,更快數據庫

    dom解析,所有加載到內存之中mybatis

mybatis,hibernate,jpa比較app

mybatis和hibernate區別:(本身寫)
    首先,mybatis沒有,XX.hbm.xml的配置文件。減輕了負擔
    
    使用mybatis接口代理方式開發mapper接口,不用寫實現類,輸入參數和pojo包裝對象,保證了dao的通用性。dom

mybatis和hibernate
Mybatis和hibernate都是對jdbc封裝:
Hibernate優勢:
    徹底面向對象,不須要咱們本身寫sql語句
    數據庫遷移,hibernate使用面向對象開發,只須要修改方言
Hibernate缺點:
    Hibernate維護關係對咱們是透明的,維護關係比較複雜,性能調優也是比較複雜。
    Hibernate:把Hql變成sql語句再進行執行。速度變慢
    Hibernate:mysql生成sql語句不規範,不易挑錯。
    Hibernate:因爲使用面向對象開發,不能開發複雜業務。
    使用與需求變化比較少的項目:CRM,ERP
Mybatis:mybatis簡化程序員的工做,把精力放在sql語句上面。適合開發複雜業務。對項目維護,調優比較容易。尤爲是需求變化特別快的項目都採用mybatis來開發(互聯網項目)性能

相關代碼連接:

https://github.com/lqingfang/mybatis

相關文章
相關標籤/搜索