java逆向工具 實(shí)際開(kāi)發(fā),mybatis逆向生成用的多嗎?
實(shí)際開(kāi)發(fā),mybatis逆向生成用的多嗎?逆向工程簡(jiǎn)介什么是逆向工程?mybatis要求程序員編寫(xiě)自己的SQL語(yǔ)句。Mybatis正式提供了逆向工程,它可以根據(jù)一個(gè)表自動(dòng)生成Mybatis執(zhí)行所需的代
實(shí)際開(kāi)發(fā),mybatis逆向生成用的多嗎?
逆向工程簡(jiǎn)介
什么是逆向工程?
mybatis要求程序員編寫(xiě)自己的SQL語(yǔ)句。Mybatis正式提供了逆向工程,它可以根據(jù)一個(gè)表自動(dòng)生成Mybatis執(zhí)行所需的代碼(映射器.java、 映射器.xml、pojo……,可以讓程序員將更多精力放在復(fù)雜的業(yè)務(wù)邏輯上。
在企業(yè)的實(shí)際開(kāi)發(fā)中,常用的逆向工程方法是從數(shù)據(jù)庫(kù)表中生成java代碼。
我們之所以強(qiáng)調(diào)“單表”一詞,是因?yàn)閙ybatis反向工程生成的映射器在單表上運(yùn)行。你可能認(rèn)為這是一個(gè)小雞排。然而,在大型項(xiàng)目中,復(fù)雜的多表關(guān)聯(lián)查詢(xún)很少,因此其作用仍然非常重要。
Mybatis逆向工程功能非常強(qiáng)大,可以大大提高工作效率,并且不會(huì)出現(xiàn)數(shù)據(jù)庫(kù)表和實(shí)體類(lèi)不匹配的情況。使用Eclipse插件更容易。您不需要編寫(xiě)自己的代碼來(lái)執(zhí)行,但是手動(dòng)執(zhí)行并不麻煩,而且不依賴(lài)于開(kāi)發(fā)工具。
為什么要使用mybatis反向工程?
我們之前說(shuō)過(guò)mybatis是一個(gè)半自動(dòng)的ORM框架。SQL語(yǔ)句需要由開(kāi)發(fā)人員定制。這樣做的好處是代碼更加靈活。缺點(diǎn)是如果業(yè)務(wù)中涉及的表太多,每個(gè)表的業(yè)務(wù)都需要定制SQL,創(chuàng)建實(shí)體類(lèi)和Dao接口,這就不可避免的非常麻煩。所以我們需要使用逆向工程,讓mybatis自動(dòng)生成表對(duì)應(yīng)的各種資源,大大減少我們的工作量。
mybatis逆向工程的缺點(diǎn)是什么?
逆向工程有其自身的局限性。逆向工程方法只能執(zhí)行一次。如果再次執(zhí)行,則會(huì)重復(fù)生成相應(yīng)的Dao接口、實(shí)體類(lèi)等資源。如果需要修改表結(jié)構(gòu),則必須刪除所有生成的資源并重新生成它們。