最近做了一个项目,使用Mybatis自动生成代码,下面做一下总结,被以后参考:

一、提前准备:

1、工具类:mybatis-generator-core-1.3.2.jar

2、postgresql驱动:postgresql-9.2-1003-jdbc4.jar

3、xml文件

这些我都上传到了附件上,下载链接:Download

二、XML详解

咱们的核心配置文件:mybatisGeneratorConfig.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="/Users/liqiu/git/study/web/soft/postgresql-9.2-1003-jdbc4.jar" />
<context id="tts2">
<jdbcConnection driverClass="org.postgresql.Driver"
connectionURL="jdbc:postgresql://l-***.com:5433/crm"
userId="menpiao_dev" password="d**904-8dce-**d0-bb1b-79***cc">
</jdbcConnection> <javaModelGenerator targetPackage="com.qunar.study.entity" targetProject="/Users/liqiu/git/study/web/src/main/java">
<property name="enableSubPackages" value="false" />
<property name="trimStrings" value="true" />
</javaModelGenerator> <sqlMapGenerator targetPackage="mybatis" targetProject="/Users/liqiu/git/study/web/src/main/resources/">
</sqlMapGenerator> <javaClientGenerator type="XMLMAPPER" targetPackage="com.qunar.study.mapper" targetProject="/Users/liqiu/git/study/web/src/main/java">
<property name="enableSubPackages" value="false" />
</javaClientGenerator> <table schema="public" tableName="users" domainObjectName="Users"></table>
<table schema="public" tableName="region_manager" domainObjectName="RegionManager"></table>
<table schema="public" tableName="region" domainObjectName="Region"></table>
<table schema="public" tableName="merchant" domainObjectName="Merchant"></table>
<table schema="public" tableName="state_machine" domainObjectName="StateMachine"></table>
<table schema="public" tableName="work_log" domainObjectName="WorkLog"></table>
<table schema="public" tableName="contract" domainObjectName="Contract"></table>
<table schema="public" tableName="notice" domainObjectName="Notice"></table>
<table schema="public" tableName="contact_person_info" domainObjectName="ContactPersonInfo"></table>
<table schema="public" tableName="express" domainObjectName="Express"></table>
<table schema="public" tableName="comment" domainObjectName="Comment"></table>
<!--
<table schema="public" tableName="operation" domainObjectName="Operation" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true" ></table>
-->
</context>
</generatorConfiguration>

三、执行代码:

java -jar /Users/liqiu/git/study/web/soft/mybatis-generator-core-1.3.2/lib/mybatis-generator-core-1.3.2.jar -configfile /Users/liqiu/git/study/web/soft/mybatisGeneratorConfig.xml -overwrite

这时就可以看见生成的代码了

├── src
│   ├── main
│   │   ├── java
│   │   │   ├── com
│   │   │   │   └── qunar
│   │   │   │   └── study
│   │   │   │   ├── entity
│   │   │   │   │   ├── Comment.java
│   │   │   │   │   ├── CommentExample.java
│   │   │   │   │   ├── ContactPersonInfo.java
│   │   │   │   │   ├── ContactPersonInfoExample.java
│   │   │   │   │   ├── Contract.java
│   │   │   │   │   ├── ContractExample.java
│   │   │   │   │   ├── Express.java
│   │   │   │   │   ├── ExpressExample.java
│   │   │   │   │   ├── Merchant.java
│   │   │   │   │   ├── MerchantExample.java
│   │   │   │   │   ├── Notice.java
│   │   │   │   │   ├── NoticeExample.java
│   │   │   │   │   ├── Operation.java
│   │   │   │   │   ├── OperationExample.java
│   │   │   │   │   ├── Region.java
│   │   │   │   │   ├── RegionExample.java
│   │   │   │   │   ├── RegionManager.java
│   │   │   │   │   ├── RegionManagerExample.java
│   │   │   │   │   ├── StateMachine.java
│   │   │   │   │   ├── StateMachineExample.java
│   │   │   │   │   ├── Users.java
│   │   │   │   │   ├── UsersExample.java
│   │   │   │   │   ├── WorkLog.java
│   │   │   │   │   └── WorkLogExample.java
│   │   │   │   └── mapper
│   │   │   │   ├── CommentMapper.java
│   │   │   │   ├── ContactPersonInfoMapper.java
│   │   │   │   ├── ContractMapper.java
│   │   │   │   ├── ExpressMapper.java
│   │   │   │   ├── MerchantMapper.java
│   │   │   │   ├── NoticeMapper.java
│   │   │   │   ├── OperationMapper.java
│   │   │   │   ├── RegionManagerMapper.java
│   │   │   │   ├── RegionMapper.java
│   │   │   │   ├── StateMachineMapper.java
│   │   │   │   ├── UsersMapper.java
│   │   │   │   └── WorkLogMapper.java
│   │   │   └── test
│   │   │   └── qunar
│   │   │   └── com
│   │   │   └── web
│   │   │   └── App.java
│   │   └── resources
│   │   └── mybatis
│   │   ├── CommentMapper.xml
│   │   ├── ContactPersonInfoMapper.xml
│   │   ├── ContractMapper.xml
│   │   ├── ExpressMapper.xml
│   │   ├── MerchantMapper.xml
│   │   ├── NoticeMapper.xml
│   │   ├── OperationMapper.xml
│   │   ├── RegionManagerMapper.xml
│   │   ├── RegionMapper.xml
│   │   ├── StateMachineMapper.xml
│   │   ├── UsersMapper.xml
│   │   └── WorkLogMapper.xml

注:这里的核心是路径,最好都是用绝对路径

Mybatis 自动生成代码,数据库postgresql的更多相关文章

  1. 【MyBatis】MyBatis自动生成代码查询之爬坑记

    前言 项目使用SSM框架搭建Web后台服务,前台后使用restful api,后台使用MyBatisGenerator自动生成代码,在前台使用关键字进行查询时,遇到了一些很宝贵的坑,现记录如下.为展示 ...

  2. mybatis自动生成代码插件mybatis-generator使用流程(亲测可用)

    mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间 坐着在idea上用maven构建spri ...

  3. mybatis 自动生成代码(mybatis generator)

    pom.xml 文件配置 引入 mybatis generator <properties> <mysql.connector.version>5.1.44</mysql ...

  4. springboot mybatis 自动生成代码(maven+IntelliJ IDEA)

    1.在pom文件中加入需要的依赖(mybatis-generator-core) 和 插件(mybatis-generator-maven-plugin) <dependency> < ...

  5. mybatis自动生成代码工具(逆向工程)

    MyBatis自动生成实体类(逆向工程) MyBatis属于一种半自动的ORM框架,它需要我们自己编写sql语句和映射文件,但是编写映射文件和sql语句很容易出错,所以mybatis官方提供了Gene ...

  6. 自定义Mybatis自动生成代码规则

    前言 大家都清楚mybatis-generate-core 这个工程提供了获取表信息到生成model.dao.xml这三层代码的一个实现,但是这往往有一个痛点,比如需求来了,某个表需要增加字段,肯定需 ...

  7. MyBatis自动生成代码示例

    在项目中使用到mybatis时,都会选择自动生成实体类,Mapper,SqlMap这三个东东. 手头上在用的又不方便,找了下网上,其实有很多文章,但有些引用外部文件时不成功,也不方便,所以重新整理了下 ...

  8. mybatis自动生成代码

    使用maven集成mybatis-generator插件生成Mybatis的实体类,DAO接口和Map映射文件 本例中,使用的是mysql数据库 前提:表已经建好  mybatis框架的jar包,数据 ...

  9. Mybatis 自动生成代码

    准备条件: 将下面的文件放入同一目录下 操作步骤: 1/ 在 generatorConfig.xml 中配置相关的参数,与需要被自动生成的表 也可以 执行项目中的MybatisConfigAutoGe ...

随机推荐

  1. iReport使用方法

    新建报表,依次单击“文件/New…”,弹出窗口 选择”Blank A4”,单击”Open this Template” 依次单击“下一步/完成”,得到一个新的report 单击”OK”按钮完成数据集设 ...

  2. Android实现对HOME键的捕获和屏蔽

    1.1. 在AndroidManifest.xml中加上权限,禁止HOME键. <uses-permission android:name="android.permission.DI ...

  3. SharePoint Online 创建列表库

    前言 本文介绍如何在Office 365中创建列表库,以及列表库的一些基本设置. 正文 通过登录地址登录到Office 365的SharePoint Online站点中,我们可以在右上角的设置菜单中, ...

  4. 识骨寻踪第十二季/全集Bones迅雷下载

    本季 Bones (2015)看点:<识骨寻踪>(FOX)2005年推出的罪案题材的电视连续剧.该剧部分内容改编自前刑侦检验官.现任该剧制作人凯丝·莱克斯出版的一系列侦探小说.Bones的 ...

  5. Button 在布局文件中定义监听器,文字阴影,自定义图片,代码绘制样式,添加音效的方法

    1.Button自己在xml文件中绑定监听器 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/andro ...

  6. mysql 的indexof函数

    LOCATE(substr,str) 返回子串substr在字符串str第一个出现的位置,如果substr不是在str里面,返回0. mysql> select LOCATE('bar', 'f ...

  7. Netty端口被占用问题

    问题:   最近发现Netty项目每次发布的时候Netty在重启时都会报端口被占用的异常, 需要过十几秒左右手动重启一遍, Netty才能恢复正常 目前猜测是由于Tomcat_restart的时候Ne ...

  8. Netty Message RefCount

    ByteBuf is always reference counted To control the life cycle of a ByteBuf in a more predictable way ...

  9. jQuery.data() 的实现方式,jQuery16018518865841457738的由来,jQuery后边一串数字的由来

    原文地址: http://xxing22657-yahoo-com-cn.iteye.com/blog/1042440 jQuery.data() 的实现方式 jQuery.data() 的作用是为普 ...

  10. B. Random Teams(Codeforces Round 273)

    B. Random Teams time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...