当前位置:首页 > 未命名 > 正文内容

MyBatis-Generator快速入门 <一>(mysql数据源)

淙嶙7年前 (2018-05-28)未命名1072

按官方文档所说,快速上手Mybatis Generator (缩写MBG),只需完成如下几部即可:

1. 花一分钟,写一个配置文件。这个配置文件必须具备以下五个xml标签。

a.一个<jdbcConnection>标签,指出需要连接的目录数据库。 包括driverClass(驱动)、connectionURL(连接地址)、userId(登录数据库用户名)、password(登录数据库密码); b.一个<javaModelGenerator>标签,定义java模型(pojo类或叫java实体类)和${实体类名}Example文件的生成位置。其中targetProject指出存放实体的项目名,targetPackage指出存放实体的包名路径。 c.一个<sqlMapGenerator>标签,生成的sql的xml文件的存放信息。 d.(可选)<javaClientGenerator>标签,生成c步骤xml对应sql的基础查询的dao文件,用Mybatis Generator官方的话说就是,“在由targetProject和targetPackage指定的位置生成客户端接口和类(操作数据库接口或者类)”,如果不需要它给生成的话也可以不要个这个。 e.最后,至少有个一个<table>标签。

2.保存文件到一个路径下(如: empgeneratorConfig.xml)

3.使用一个命令运行Mybatis Generator (MBG) 例如:

java -jar mybatis-generator-core-x.x.x.jar -configfile empgeneratorConfig.xml -overwrite 4.完成

generatorConfig.properties

#数据库相关配置
mysqlConnectorPath={存放路径}/mysql/mysql-connector-java/5.1.40/mysql-connector-java-5.1.40.jar
driverClass=com.mysql.jdbc.Driver
connectionURL=jdbc:mysql://localhost:3306/mybatis?useUnicode=true&amp;characterEncoding=UTF-8
userId=xxx{登录用户名}
password=xxx{登录密码}
#项目路径--工程的源代码存放位置
targetProject=E:/workspace/UseMybatis/UseMybatis
#存放实体类的位置
pojoProject=E:/workspace/UseMybatis/UseMybatis-domain
pojoPackage=com.lvdalin.stu.mybatis.domain
#存放mapper文件的位置
mapperProject=E:/workspace/UseMybatis/UseMybatis-dao
mapperPackage=mybatis.mapper
#存放dao的位置
daoProject=E:/workspace/UseMybatis/UseMybatis-dao
daoPackage=com.lvdalin.stu.mybatis.dao

#表名
tableName=mybatis_user
#表对应实体类名
domainObjectName=User
#别名 推荐使用,遇到表关联的时候,使用起来修改的东西比较少。
tableAlias=u

generatorConfig.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>
    <!-- 引入配置文件 -->
    <properties resource="generatorConfig.properties"/>
    <classPathEntry location="${mysqlConnectorPath}" />
    <context id="context1" targetRuntime="MyBatis3">
        <commentGenerator>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="true" />
        </commentGenerator>
        <jdbcConnection connectionURL="${connectionURL}"
                        driverClass="${driverClass}" password="${userId}" userId="${password}" />
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>

        <javaModelGenerator targetPackage="${pojoPackage}" targetProject="${pojoProject}srcmainjava">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="false" />
            <!-- 从数据库返回的值被清理前后的空格 -->
            <property name="trimStrings" value="true" />

        </javaModelGenerator>
        <sqlMapGenerator targetPackage="${mapperPackage}" targetProject="${mapperProject}srcmain
esources">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>
        <javaClientGenerator targetPackage="${daoPackage}" targetProject="${daoProject}srcmainjava"
                             type="XMLMAPPER">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="false" />
        </javaClientGenerator>
        <table tableName="${tableName}" domainObjectName="${domainObjectName}"
               enableCountByExample="true" enableUpdateByExample="true"
               enableDeleteByExample="true" enableSelectByExample="true"
               selectByExampleQueryId="true" alias="${tableAlias}" >
        </table>
    </context>
</generatorConfiguration>

相关文章

设计模式是什么鬼

设计模式是什么鬼

设计模式是什么鬼?“世界处处不设计”有物混成,先天地生。寂兮寥兮,独立而不改,周行而不殆,可以为天地母。吾不知其名,字之曰道,强为之名曰大。大曰逝,逝曰远,远曰反。道是什么?道可道,非常道。道不明,说...

找出可能的合的组合

找出可能的合的组合

描述 给出一组不重复的正整数,从这组数中找出所有可能的组合使其加合等于一个目标正整数 N,如:一组数为 1, 2, 3,目标数为 4,那么可能的加合组合为:1, 1, 1, 11, 1, 21,...

找出旋转有序数列的中间值

找出旋转有序数列的中间值

描述 给出一个有序数列随机旋转之后的数列,如原有序数列为:[0,1,2,4,5,6,7] ,旋转之后为[4,5,6,7,0,1,2]。假定数列中无重复元素,且数列长度为奇数。求出旋转数列的中间值...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。