Maven項目中,使用mybatis,根據資料庫自動產生pojo實體類、dao、mapper

來源:互聯網
上載者:User

標籤:

一、首先,用eclipse建立一個maven項目。

二、其次,在pom.xml檔案下,加入如下外掛程式配置:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  <modelVersion>4.0.0</modelVersion>  <groupId>com.liyi.test</groupId>  <artifactId>hello-mybatis</artifactId>  <packaging>war</packaging>  <version>0.0.1-SNAPSHOT</version>  <name>hello-mybatis Maven Webapp</name>  <url>http://maven.apache.org</url>  <dependencies>    <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>3.8.1</version>      <scope>test</scope>    </dependency>  </dependencies>  <build>    <finalName>hello-mybatis</finalName>      <pluginManagement>           <plugins>              <plugin>            <groupId>org.mybatis.generator</groupId>            <artifactId>mybatis-generator-maven-plugin</artifactId>            <version>1.3.2</version>            <configuration>                <configurationFile>src/main/resources/generator.xml</configurationFile>                <verbose>true</verbose>                <overwrite>true</overwrite>             </configuration>             <executions>                <execution>                    <id>Generate MyBatis Artifacts</id>                    <goals>                        <goal>generate</goal>                    </goals>                </execution>             </executions>             <dependencies>                <dependency>                    <groupId>org.mybatis.generator</groupId>                    <artifactId>mybatis-generator-core</artifactId>                    <version>1.3.2</version>                </dependency>             </dependencies>            </plugin>        </plugins>         </pluginManagement>     </build></project>

三、從pom.xml中找到configurationFile標籤,按照標籤上的路徑(src/main/resources/generator.xml)放入以下產生代碼的核心設定檔,generator.xml:

<?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>     <!-- 資料庫驅動包位置 -->     <classPathEntry location="D:\Program Files\jeesite-master\doc\maven\repository\mysql\mysql-connector-java\5.1.37\mysql-connector-java-5.1.37.jar" />      <!-- <classPathEntry location="C:\oracle\product\10.2.0\db_1\jdbc\lib\ojdbc14.jar" />-->     <context id="DB2Tables" targetRuntime="MyBatis3">         <commentGenerator>             <property name="suppressAllComments" value="true" />         </commentGenerator>         <!-- 資料庫連結URL、使用者名稱、密碼 -->          <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://192.168.254.78:3306/cjb_ecommerce" userId="root" password="123">          <!--<jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver" connectionURL="jdbc:oracle:thin:@localhost:1521:orcl" userId="msa" password="msa">-->         </jdbcConnection>         <javaTypeResolver>             <property name="forceBigDecimals" value="false" />         </javaTypeResolver>         <!-- 產生實體類的包名和位置,這裡配置將產生的實體類放在cn.chejinbao.ecommerce.entity這個包下 -->         <javaModelGenerator targetPackage="cn.chejinbao.ecommerce.entity" targetProject="D:\Program Files\eclipseworkspace\cn-chejinbao-ecommerce\src\main\java\">                                                                                              <property name="enableSubPackages" value="true" />             <property name="trimStrings" value="true" />         </javaModelGenerator>         <!-- 產生的SQL對應檔包名和位置,這裡配置將產生的SQL對應檔放在cn.chejinbao.ecommerce.mapping這個包下 -->         <sqlMapGenerator targetPackage="cn.chejinbao.ecommerce.mapping" targetProject="D:\Program Files\eclipseworkspace\cn-chejinbao-ecommerce\src\main\java\">             <property name="enableSubPackages" value="true" />         </sqlMapGenerator>         <!-- 產生DAO的包名和位置,這裡配置將產生的dao類放在cn.chejinbao.ecommerce.dao這個包下 -->         <javaClientGenerator type="XMLMAPPER" targetPackage="cn.chejinbao.ecommerce.dao" targetProject="D:\Program Files\eclipseworkspace\cn-chejinbao-ecommerce\src\main\java\">             <property name="enableSubPackages" value="true" />         </javaClientGenerator>         <!-- 要產生那些表(更改tableName和domainObjectName就可以) -->         <table tableName="cjb_admin_role" domainObjectName="AdminRole" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_administrator" domainObjectName="Administrator" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_advertising" domainObjectName="Advertising" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_adverts" domainObjectName="Adverts" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_announcements" domainObjectName="Announcements" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_appointment" domainObjectName="Appointment" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_brand" domainObjectName="Brand" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars" domainObjectName="Cars" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_base" domainObjectName="CarsBase" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_body" domainObjectName="CarsBody" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_chair" domainObjectName="CarsChair" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_chassis" domainObjectName="CarsChassis" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_control" domainObjectName="CarsControl" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_engine" domainObjectName="CarsEngine" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_external" domainObjectName="CarsExternal" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_glass" domainObjectName="CarsGlass" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_high_technology" domainObjectName="CarsHighTechnology" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_img" domainObjectName="CarsImg" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_inside" domainObjectName="CarsInside" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_lease" domainObjectName="CarsLease" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_light" domainObjectName="CarsLight" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_media" domainObjectName="CarsMedia" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_refrigeration" domainObjectName="CarsRefrigeration" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_security" domainObjectName="CarsSecurity" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_transmission_case" domainObjectName="CarsTransmissionCase" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_cars_wheel_brake" domainObjectName="CarsWheelBrake" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_city" domainObjectName="City" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_collection_cars" domainObjectName="CollectionCars" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_collection_stores" domainObjectName="CollectionStores" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_dictionaries_type" domainObjectName="DictionariesType" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_dictionaries_value" domainObjectName="DictionariesValue" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_groups" domainObjectName="Groups" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_groups_permissions" domainObjectName="GroupsPermissions" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_information_type" domainObjectName="InformationType" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_informations" domainObjectName="Informations" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_links" domainObjectName="Links" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_manager" domainObjectName="Manager" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_operation_log" domainObjectName="OperationLog" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_operations" domainObjectName="Operations" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_permissions" domainObjectName="Permissions" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_permissions_operations" domainObjectName="PermissionsOperations" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_provice" domainObjectName="Provice" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_recommend_store" domainObjectName="RecommendStore" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_roles" domainObjectName="Roles" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_roles_groups" domainObjectName="RolesGroups" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_series" domainObjectName="Series" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_store_apply_enter" domainObjectName="StoreApplyEnter" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_stores" domainObjectName="Stores" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_stores_cars" domainObjectName="StoresCars" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_system_message" domainObjectName="SystemMessage" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />         <table tableName="cjb_videos" domainObjectName="Videos" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />        </context></generatorConfiguration>

四、cmd開啟dos視窗,到項目的根路徑,比如我的

      cd D:\Program Files\eclipseworkspace\cn-chejinbao-ecommerce

       執行mvn mybatis-generator:generate(前提是你的電腦配置了maven的環境變數,可以用mvn命令)

       重新整理項目就有以下效果了。

Maven項目中,使用mybatis,根據資料庫自動產生pojo實體類、dao、mapper

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.