Mybatis 自动生成代码,数据库postgresql
最近做了一个项目,使用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的更多相关文章
- 【MyBatis】MyBatis自动生成代码查询之爬坑记
前言 项目使用SSM框架搭建Web后台服务,前台后使用restful api,后台使用MyBatisGenerator自动生成代码,在前台使用关键字进行查询时,遇到了一些很宝贵的坑,现记录如下.为展示 ...
- mybatis自动生成代码插件mybatis-generator使用流程(亲测可用)
mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间 坐着在idea上用maven构建spri ...
- mybatis 自动生成代码(mybatis generator)
pom.xml 文件配置 引入 mybatis generator <properties> <mysql.connector.version>5.1.44</mysql ...
- springboot mybatis 自动生成代码(maven+IntelliJ IDEA)
1.在pom文件中加入需要的依赖(mybatis-generator-core) 和 插件(mybatis-generator-maven-plugin) <dependency> < ...
- mybatis自动生成代码工具(逆向工程)
MyBatis自动生成实体类(逆向工程) MyBatis属于一种半自动的ORM框架,它需要我们自己编写sql语句和映射文件,但是编写映射文件和sql语句很容易出错,所以mybatis官方提供了Gene ...
- 自定义Mybatis自动生成代码规则
前言 大家都清楚mybatis-generate-core 这个工程提供了获取表信息到生成model.dao.xml这三层代码的一个实现,但是这往往有一个痛点,比如需求来了,某个表需要增加字段,肯定需 ...
- MyBatis自动生成代码示例
在项目中使用到mybatis时,都会选择自动生成实体类,Mapper,SqlMap这三个东东. 手头上在用的又不方便,找了下网上,其实有很多文章,但有些引用外部文件时不成功,也不方便,所以重新整理了下 ...
- mybatis自动生成代码
使用maven集成mybatis-generator插件生成Mybatis的实体类,DAO接口和Map映射文件 本例中,使用的是mysql数据库 前提:表已经建好 mybatis框架的jar包,数据 ...
- Mybatis 自动生成代码
准备条件: 将下面的文件放入同一目录下 操作步骤: 1/ 在 generatorConfig.xml 中配置相关的参数,与需要被自动生成的表 也可以 执行项目中的MybatisConfigAutoGe ...
随机推荐
- iOS 字符串 中包含 % 百分号的方法
百分号的转换,NSString中需要格式化的字符串中百分号使用%%表示,而char*中百分号也是使用%%表示. 例如:NSLog(@"%%%@%%",@"hello&qu ...
- javax.servlet不存在问题的解决
产生这个问题的原因是这个包在WEB服务器里才有,J2SE中没有,应该在J2EE中才有.因此必须告诉编译器这个包的位置. 正确的解决方案如下: 1. 搜索servlet-api.jar. 这个包应该在T ...
- spring websocket自动断开连接再创建引发的问题解决方案
问题:由于 web session 超时时间为 30 分钟,如用户在 web session 规定时间内没有退出系统,但由于其它原因 用户却断开的 websocket 的连接,如果用户还要聊天或是其它 ...
- JS --- 三目运算符
1.什么是三目运算:(布尔表达式 ? 值0:值1;) 5>3?alert('5大'):alert('3大'); 即 if(5>3){alert('5大')}else{alert('3 ...
- Swift - 多个mask的动画效果
Swift - 多个mask的动画效果 效果 源码 https://github.com/YouXianMing/Swift-Animations // // TranformFadeView.swi ...
- 通过图形化工具来画shape
前两天一个哥们分享了十分好用的图形化工具,这样我们就能实时的看到自己用代码写出来的shape是怎么样的了,更牛的是它可以让我们自己去设定值,最后生成代码,这样我们为什么要去自己写shape呢?如果一个 ...
- [Web 前端] superagent-nodejs处理请求的模块
cp from : https://blog.csdn.net/xiao_chun5316/article/details/48164435 关于superagent,这次写react组件,发送请求都 ...
- Orchard模块开发全接触8:改造后台
后台默认提供了 Content 的管理,但是,所有的内容类型揉杂在一起,而我们需要更深度的定制一些功能,比如,我们只想管理订单,又比如,我们需要对注册用户进行管理.本篇的内容包括: 1:自定义 adm ...
- 使用ASP.NET+Jquery DataTables的服务器分页
(1)先建立表,看看表结构 (2)建立存储过程 DataTables是服务器分页,GetWxUsers存储过程使用了4个参数 (1) @start--表示当前第几页,例如第3页,start是从0开始 ...
- 【deep learning学习笔记】注释yusugomori的DA代码 --- dA.h
DA就是“Denoising Autoencoders”的缩写.继续给yusugomori做注释,边注释边学习.看了一些DA的材料,基本上都在前面“转载”了.学习中间总有个疑问:DA和RBM到底啥区别 ...