本身手動實現的前提,對maven項目有基本的瞭解,在本地成功搭建了maven環境,能夠參考我以前的文章:maven環境搭建html
項目裏新建表時model,mapper以及mapper.xml基本都是用Mybatis Generator(如下簡稱爲MBG)自動生成的,可是MBG自動生成的model的註釋實在有點非人類,至少中國人是徹底接受不了的,在配置中禁用掉註釋吧,卻是簡單了,但是生成的model類光禿禿的,啥都沒有,字段方法沒有註釋,使用很不方便,別人看也不知道這個字段是啥含義,到最後仍是要本身添加,一張表多點幾十個字段,特麼添加累死了,不能這麼幹,得想法子,百度了一下網上,基本有兩種方法,第一種,就是直接修改MGB的源代碼,第二種就是本身寫一個類實現CommentGenerator接口,先說本身寫一個新類實現CommentGenerator接口的方法來使自動生成的model類含有中文註釋吧.java
同時爲了支持mysql,也一塊兒加入mysql的驅動包,mysql的驅動包不用手動安裝,直接引入就會自動下載的mysql
<dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.2</version> </dependency> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>6.0</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.9</version> </dependency>
View Codesql
View Code數據庫
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <!-- ojdbc6.jar已經直接放到項目中,無需指定了,同時mysql驅動包也同樣,這裏一樣無需指定 --> <!-- <classPathEntry location="ojdbc6.jar" /> --> <context id="context1" targetRuntime="MyBatis3"> <!-- 指定生成的java文件的編碼,沒有直接生成到項目時中文可能會亂碼 --> <property name="javaFileEncoding" value="UTF-8"/> <!-- 這裏的type裏寫的是你的實現類的類全路徑 --> <commentGenerator type="org.mybatis.generator.MyCommentGenerator"> </commentGenerator> <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver" connectionURL="jdbc:oracle:thin:@遠程ip地址或localhost:1521:orcl" userId="用戶名" password="密碼"> <!-- 針對oracle數據庫 --> <property name="remarksReporting" value="true"></property> </jdbcConnection> <!-- mysql配置 --> <!-- <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/bookshop" userId="root" password="root"> 針對mysql數據庫 <property name="useInformationSchema" value="true"></property> </jdbcConnection> --> <javaTypeResolver> <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!-- dto class --> <javaModelGenerator targetPackage="model" targetProject="C:\Users\Administrator\Desktop"> <property name="enableSubPackages" value="true" /> <property name="trimStrings" value="true" /> </javaModelGenerator> <!-- mybatis xml file --> <sqlMapGenerator targetPackage="dao" targetProject="C:\Users\Administrator\Desktop"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <!-- mapper class --> <javaClientGenerator type="XMLMAPPER" targetPackage="dao" targetProject="C:\Users\Administrator\Desktop"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!--不生成幫助類(Exmaples) --> <!-- enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" --> <!--已生成的表 <table schema="demo" tableName="USER" domainObjectName="User"></table> --> <table schema="" tableName="ABS_DEAL" domainObjectName="AbsDeal" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> </table> </context> </generatorConfiguration>
到此爲止項目的結構以下:api
這個時候咱們運行StartUp的main方法,已經能夠實現了,發現桌面上生成了兩個文件夾,model和mapper文件夾,裏面有生成的文件.看一下效果:mybatis
是否是很符合中國人的審美觀呢,若是不滿意,或者有什麼要加的,能夠本身在實現類中加入代碼修改,addFieldComment,addGetterComment,addSetterComment這幾個方法就好了,裏面的代碼也很容易看懂,很容易改.oracle
View Codeapp
到這裏項目就完成了,在項目根路徑使用打包命令mvn clean package,固然能夠在eclipse中使用maven build中輸入命令來生成,我習慣使用控制檯來生成,在項目根路徑,按住shift的同時右鍵,選擇在此處打開命令窗口,而後輸入mvn clean package命令按下enter,固然這些能夠實現的前提是你本地maven環境配置好了,若是沒有設置maven_home環境變量的話運行會提示沒法識別的mvn命令的,成功構建後顯示build success,到target目錄下,看到生成了jar包:dom
一樣在target目錄下:按住shift同時右鍵->在此處打開命令行,輸入java -jar mybatis-generator-core-1.3.2.jar命令運行jar包,注意-jar後打出my時按tab鍵mybatis-generator-core-1.3.2.jar就自動補全了,運行結束後,一樣的在桌面上回看到生成的model和mapper文件夾及裏面的文件.這裏是測試,因此配置中寫文件生成在了桌面上,能夠改一下配置,設置在項目中輸出,直接輸出到項目中.
固然爲了使用方便,不用每次都輸入java -jar mybatis-generator-core-1.3.2.jar命令,能夠把命令放入腳本文件中,新建一個記事本,重命名爲generator.bat,而後把java -jar mybatis-generator-core-1.3.2.jar命令拷貝進去,之後只要雙擊generator.bat就能夠直接生成了,固然你的generator.bat得和jar包在同一個目錄下.
還有要修改generatorConfig.xml文件可使用壓縮軟件打開mybatis-generator-core-1.3.2.jar,雙擊generatorConfig.xml,修改後保存並更新回壓縮包.由於這裏StartUp文件中使用的是加載generatorConfig.xml的方法,因此會加載jar包裏的generatorConfig.xml配置文件,若是StartUp文件中加載配置文件的方式使用MBG原生態的加載方式,就可使用jar包同目錄下的generatorConfig.xml,不過那時運行命令就爲:java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite,我以爲這樣挺好的,不用每次都拖着一個generatorConfig.xml,移動都不方便,放在jar包裏跟着跑挺方便的.
抱歉,使用了才知道,generatorConfig.xml放在jar包裏彷佛生成到項目裏很差配置,只能寫絕對路徑,相對路徑好像很差弄,能夠稍微修改一下,用MBG原來的加載外部的generatorConfig.xml,只須要修改pom.xml的構建中的main class節點由startup改成org.mybatis.generator.api.ShellRunner而後從新打包,運行jar包時命令爲
java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite,如下提供的下載更新爲使用ShellRunner運行的.若是使用ShellRunner運行,則以前的startup能夠刪除了,項目resource目錄下的generatorConfig.xml也不須要了,直接使用外部的generatorConfig.xml.
生成的jar包下載: MybatisGenerator