文档章节

kunter-generator

angelsinklow
 angelsinklow
发布于 2015/06/08 21:27
字数 719
阅读 35
收藏 0
点赞 0
评论 1

kunter-generator

特别声明:因为采用了12c特有分页语法,本工具Oracle暂时不支持Oracle 12c一下版本

本工具参考MyBatis官方generator设计而成,参考版本为(1.3.2)。具有生成项目基础代码、根据数据库生成Excel格式的设计文档、根据Excel格式生成创建数据库脚本功能, 为了方便项目随时更换底层,生成的基础代码独立目录,不建议对生成的代码进行修改;目前设计支持Oracle、MySQL、PostgreSQL

暂未实现功能:根据数据库生成Excel、根据Excel生成SQL脚本以及PostgreSQL支持

基础代码生成

生成文件列表:

  • BaseDAO

  • DAO

  • BaseMapper

  • Mapper

  • EO(实体)

  • EOExample(实体对应查询条件)

  • mybatis-config-*.xml

配置说明:

1. 配置文件目录:/src/main/resources

1.1 jdbc.properties

[a] SourceType:数据源类型,可选择(DB、EXCEL)

[b] path.dictionary:数据字典目录,设置数据源类型为EXCEL时必须设值,支持中文目录 ** 注意路径,必须为双斜杠或者反斜杠 **

[c] DB:数据库类型,设置数据源类型为DB时必须设值,可选择(ORACLE、MYSQL、POSTGRESQL)

[d] DB.xx:数据库连接属性,数据库类型相关连接属性,设置DB类型必须设值

1.2 config.properties

[a] model:模块名称,默认表前缀,例:base

[b] package:基础包名,所有包前缀,例:com.kunter

[c] table:表名称,支持通配符 ** 数据源类型为EXCEL,则参数无效 建议使用EXCEL的时候分模块保存设计文档 **

[d] target:输出目录,可以为绝对目录或者相对目录,例:target/ 当前kunter-generator下的target/

根据以上配置,模拟生成如下所述文件:

  • BaseDAO:com.kunter.base.dao.base

  • DAO:com.kunter.base.dao

  • BaseMapper:com/kunter/base/xml/base

  • Mapper:com/kunter/base/xml

  • EO:com.kunter.base.eo

  • EOExample:com.kunter.base.eo

  • mybatis-config-base.xml:指定的target目录下

  • 如果target参数直接指定的开发项目,如果需要,手动将BaseMapper和Mapper挪到/src/main/resources

Main

org/generator/main/Generator.java

单文件生成

org/generator/make/Make*.java

DAO方法列表

  • int countByExample(<?>Example example);

  • int countByExample_physical(<?>Example example);

  • List<?> selectByExample(<?>Example example);

  • List<?> selectByExample_physical(<?>Example example);

  • int insert(<?> record);

  • int insert_physical(<?> record);

  • int insertList(List<?> record);

  • int insertList_physical(List<?> record);

  • int insertSelective(<?> record);

  • int insertSelective_physical(<?> record);

  • int insertListSelective(List<?> record);

  • int insertListSelective_physical(List<?> record);

  • int updateByExample(@Param("record") <?> record, @Param("example") <?>Example example);

  • int updateByExample_physical(@Param("record") <?> record, @Param("example") <?>Example example);

  • int updateByExampleSelective(@Param("record") <?> record, @Param("example") <?>Example example);

  • int updateByExampleSelective_physical(@Param("record") <?> record, @Param("example") <?>Example example);

  • int deleteByExample(<?>Example example);

  • int deleteByExample_physical(<?>Example example);

  • <?> selectByPrimaryKey(Map map);

  • <?> selectByPrimaryKey_physical(Map map);

  • int updateByPrimaryKey(<?> record);

  • int updateByPrimaryKey_physical(<?> record);

  • int updateByPrimaryKeySelective(<?> record);

  • int updateByPrimaryKeySelective_physical(<?> record);

  • int deleteByPrimaryKey(Map map);

  • int deleteByPrimaryKey_physical(Map map);

<?>为对应实体,ByPrimaryKey的方法有主键时生成,_physical包含表中所有数据,无_physical的包含删除标识未标识删除的数据

示例

    <?>Example example = new <?>Example();
    example.or().andxxEqualTo(XXX);
    example.or().andxxEqualTo(XXX);
    example.or().andxxEqualTo(XXX);

    List<?> list = <?>Dao.selectByExample(example);

    <?>Example example = new <?>Example();
    <?>Example.Criteria criteria = example.createCriteria();
    criteria.andxxEqualTo(XXX);
    criteria.andxxEqualTo(XXX);
    criteria.andxxEqualTo(XXX);

    List<?> list = <?>Dao.selectByExample(example);

技术交流

开源赞助

Git@OSC


© 著作权归作者所有

共有 人打赏支持
angelsinklow
粉丝 3
博文 1
码字总数 719
作品 0
广州
架构师
加载中

评论(1)

猪头520530
猪头520530
贊一個
nature/kunter-generator

kunter-generator Git@OSC GitHub Bitbucket Coding 因服务器问题,Maven私库无法提供服务,如需下载kunter-base包请私信我 特别声明:因为采用了12c特有分页语法,本工具Oracle暂时不支持O...

nature ⋅ 2015/06/03 ⋅ 0

kunter-generator 1.3.2 版本发布,代码生成工具

kunter-generator 参考 MyBatis 官方 generator 设计而成,参考版本为(1.3.2)。具有生成项目基础代码、根据数据库生成 Excel 格式的设计文档、根据Excel格式生成创建数据库脚本功能。为了方...

angelsinklow ⋅ 2015/06/10 ⋅ 0

代码生成工具--kunter-generator

Kunter 代码生成工具。从数据库和 Excel 模板读取表结构生成基于 MyBatis 的 DAO、SQLMap 和 EO,实现了从 Excel 生成数据库建表脚本和从数据库生成 Excel 设计文档。支持 Oracle 12c MySQL...

angelsinklow ⋅ 2015/06/10 ⋅ 1

nature/kunter-constant

kunter-constant Git@OSC GitHub Bitbucket Coding 更新日志 基础数据生成 生成文件列表: 数据模板 SQL(基础数据插入脚本) Java(系统常量类) 配置说明: ####1. 配置文件目录:/src/ma...

nature ⋅ 2015/11/23 ⋅ 0

python3: yield from

python3: yield from Python 3: Using "yield from" in Generators - Part 1 yield from 后面跟一个generator。 运行结果如下: 可以用yield from简化代码:...

樂天 ⋅ 2015/12/13 ⋅ 0

MyBatis使用Generator自动生成代码

MyBatis使用Generator自动生成代码 MyBatis中,可以使用Generator自动生成代码,包括DAO层、 MODEL层 、MAPPING SQL映射文件。 第一步:...

洋哥6 ⋅ 2014/03/28 ⋅ 0

对Koa-middleware实现机制的深入分析

Koa是基于Node.js的下一代web开发框架,相比Express更轻,源码只有几百行。与传统的中间件不同,在Koa 1.x中采用了generator实现中间件,这需要开发者熟悉ES6中的generator,Promise相关知识...

ssssyoki ⋅ 2017/05/26 ⋅ 0

yeoman-generator入门教程

yeoman Yeoman可以帮助我们创建新的开发项目,为我们提供更好的工具来使我们的项目更多样化。 2. yeoman-generator Generators是yeoman生态系统的积木,是通过yo命令运行而为终端用户生产文件...

力谱宿云 ⋅ 2016/06/29 ⋅ 0

Python中如何使用yield,对于庞大迭代的优化处理

一直困扰于yield的使用,今天看到一篇不错的解释,虽然都是英文,不过不要紧,可以跳开,直接看代码的部分就能懂 Improve Your Python: 'yield' and Generators Explained Posted on Apr 07...

青鸾之旅 ⋅ 2013/08/02 ⋅ 3

那些年在异步代码上所做的努力

介绍 写过JS代码的同学应该都知道,JS是单线程的,当出现异步逻辑时,就需要使用一些技巧来实现。最常见的方法就是使用回调方法。 回调方法 比如我们要实现一个功能:1s后运行逻辑,再过3s运...

chenhao_ch ⋅ 2017/11/29 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

PHP语言系统ZBLOG或许无法重现月光博客的闪耀历史[图]

最近在写博客,希望通过自己努力打造一个优秀的教育类主题博客,名动江湖,但是问题来了,现在写博客还有前途吗?面对强大的自媒体站点围剿,还有信心和可能型吗? 至于程序部分,我选择了P...

原创小博客 ⋅ 23分钟前 ⋅ 0

IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane ⋅ 49分钟前 ⋅ 0

浅谈设计模式之工厂模式

工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻...

佛系程序猿灬 ⋅ 今天 ⋅ 0

Dockerfile基础命令总结

FROM 指定使用的基础base image FROM scratch # 制作base image ,不使用任何基础imageFROM centos # 使用base imageFROM ubuntu:14.04 尽量使用官方的base image,为了安全 LABEL 描述作...

ExtreU ⋅ 昨天 ⋅ 0

存储,对比私有云和公有云的不同

导读 说起公共存储,很难不与后网络公司时代的选择性外包联系起来,但尽管如此,它还是具备着简单和固有的可用性。公共存储的名字听起来也缺乏专有性,很像是把东西直接堆放在那里而不会得到...

问题终结者 ⋅ 昨天 ⋅ 0

C++难点解析之const修饰符

C++难点解析之const修饰符 c++ 相比于其他编程语言,可能是最为难掌握,概念最为复杂的。结合自己平时的C++使用经验,这里将会列举出一些常见的难点并给出相应的解释。 const修饰符 const在c...

jackie8tao ⋅ 昨天 ⋅ 0

聊聊spring cloud netflix的HystrixCommands

序 本文主要研究一下spring cloud netflix的HystrixCommands。 maven <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-clo......

go4it ⋅ 昨天 ⋅ 0

Confluence 6 从其他备份中恢复数据

一般来说,Confluence 数据库可以从 Administration Console 或者 Confluence Setup Wizard 中进行恢复。 如果你在恢复压缩的 XML 备份的时候遇到了问题,你还是可以对整个站点进行恢复的,如...

honeymose ⋅ 昨天 ⋅ 0

myeclipse10 快速搭建spring boot开发环境(入门)

1.创建一个maven的web项目 注意上面标红的部分记得选上 2.创建的maven目录结构,有缺失的目录可以自己建立目录补充 补充后 这时候一个maven的web项目创建完成 3.配置pom.xml配置文件 <proje...

小海bug ⋅ 昨天 ⋅ 0

nginx.conf

=========================================================================== nginx.conf =========================================================================== user nobody; #......

A__17 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部