mybatis反向生成代碼 實際開發(fā),mybatis逆向生成用的多嗎?
實際開發(fā),mybatis逆向生成用的多嗎?逆向工程簡介什么是逆向工程:mybatis需要程序員自己編寫sql語句,mybatis官方提供逆向工程,可以針對單表自動生成mybatis執(zhí)行所需要的代碼(m
實際開發(fā),mybatis逆向生成用的多嗎?
逆向工程簡介
什么是逆向工程:
mybatis需要程序員自己編寫sql語句,mybatis官方提供逆向工程,可以針對單表自動生成mybatis執(zhí)行所需要的代碼(mapper.java、mapper.xml、pojo…),可以讓程序員將更多的精力放在繁雜的業(yè)務邏輯上。
企業(yè)實際開發(fā)中,常用的逆向工程方式:由數據庫的表生成java代碼。
之所以強調單表兩個字,是因為Mybatis逆向工程生成的Mapper所進行的操作都是針對單表的,也許你可能會覺得那這就有點雞肋了,但是在大型項目中,很少有復雜的多表關聯查詢,所以作用還是很大的。
mybatis逆向工程非常強大,可以大大提高工作效率,而且也不會出現數據庫表與實體類對不上號的情況。用eclipse插件更簡單一點,不用自己寫執(zhí)行的代碼,但是自己手動也不算麻煩,而且不依賴了開發(fā)工具。
為什么要使用Mybatis逆向工程?
我們之前說過MyBatis是一個"半自動"的ORM框架,SQL語句需要開發(fā)者自定義,這樣做的好處是代碼更加靈活,缺點是如果參與業(yè)務的表太多,每張表的業(yè)務都需要自定義SQL,創(chuàng)建實體類,DAO接口,難免會很麻煩。所以我們需要使用逆向工程,讓MyBatis自動生成表對應的各種資源,大大減少我們的工作量。
Mybatis逆向工程有什么不足?
逆向工程有它自身的局限性,逆向工程方法只能執(zhí)行一次,如果再次執(zhí)行就會重復生成對應的DAO接口,實體類等資源。如果需要對表結構進行修改,那么就必須刪除已經生成的所有資源,重新生成一次。
mybatis逆向生成代碼怎么不想用mapper?
mybatis的一個主要的特點就是需要程序員自己編寫sql,那么如果表太多的話,難免會很麻煩,所以mybatis官方提供了一個逆向工程,可以針對單表自動生成mybatis執(zhí)行所需要的代碼(包括mapper.xml、mapper.java、po..)。一般在開發(fā)中,常用的逆向工程方式是通過數據庫的表生成代碼。