Orm框架(AntOrm,Ktorm)在mac机器上如何使用代码生成
Orm框架介绍
由于我工作上都用到了,为了提高工作效率 我写了一个mac端工具帮助快速生成Dbmodel代码
工具上传到百度网盘,下载地址
链接:https://pan.baidu.com/s/1Q64zoRjE3u66jJnzF8rhww
提取码:ljx2
这款工具我是用微软的xamarin.mac技术开发的,驻留在menubar上如下图所示
工具截图:
目前有2个tab。
Image是自动上传剪贴板的图片工具
Image是监听剪切板有没有复制图片,有的话自动把图片上传到服务器,并且生成一个 markdown的图片并且赋值到剪贴板,可以直接在写markdown的时候粘贴,是方便写markdwon插入截图小功能!

OrmGen是我今天给大家介绍的功能


支持的数据库有
- Mysql
- Sqlserver
使用方法很简单,在工具内填写json 点击 Gen 按钮即可

Ktorm的Json内容模板:
{
"Type": "Mysql",
"OutPutFolder": "/Users/yuzd/Downloads/ConsoleApp4/ConsoleApp4",
"IsKotlin": true,
"NamespaceName": "DbModel",
"ConnectionString": "Server=localhost;Port=53306;Database=antmgr;Uid=root;Pwd=123456;charset=utf8;SslMode=none",
"TableFilter": []
}
Ktorm生成的Json字段说明
| 字段 | 说明 |
|---|---|
| Type | 支持 mysql 和 sqlserver (sqlserver的话支持在后面指定版本号:sqlserver2000, sqlserver2005,sqlserver2008,sqlserver2012,sqlserver2017,如果不指定的话 sqlserver = sqlserver2008) |
| OutPutFolder | 生成的代码保存在本机的哪个文件夹(如果你使用idea插件的话可以使用相对路径) |
| IsKotlin | 需要设置为true |
| NamespaceName | 指定 package 名称 |
| ConnectionString | db连接字符串 |
| TableFilter | 表名称的string数组,如果指定了只会生成特定的表的代码 |
Ktorm生成的代码如下:




AntOrm的Json 内容模板:
{
"Type": "Mysql",
"OutFileName": "DbModels",
"OutPutFolder": "/Users/yuzd/Downloads/ConsoleApp4/ConsoleApp4",
"IsKotlin": false,
"NamespaceName": "DbModel",
"BaseEntityClass": "",
"DataContextName": "AntEntity",
"EntitySuffix": "",
"AssociationPrefix": "",
"AssociationAppendByFieldName": true,
"GenerateAssociations": true,
"ConnectionString": "Server=localhost;Port=53306;Database=antmgr;Uid=root;Pwd=123456;charset=utf8;SslMode=none",
"PerClassPerFile": false,
"TableFilter": [],
"SetFkList": [],
"UsingList": [],
"SetColumnTypeList": []
}
AntOrm生成的Json字段说明
| 字段 | 说明 |
|---|---|
| Type | 支持 mysql 和 sqlserver (sqlserver的话支持在后面指定版本号:sqlserver2000, sqlserver2005,sqlserver2008,sqlserver2012,sqlserver2017,如果不指定的话 sqlserver = sqlserver2008) |
| OutFileName | 若没有指定一个表生成一个class的话,最终会生成一个cs文件,这个字段就是指定cs文件的名称 |
| OutPutFolder | 生成的代码保存在本机的哪个文件夹(如果你使用idea插件的话可以使用相对路径) |
| IsKotlin | 需要设置为false |
| NamespaceName | 指定 NamespaceName 名称 |
| BaseEntityClass | 如果想要生成的dbmodel 的 class都继承一个特殊的父类可以用这个字段 |
| DataContextName | 指定聚合类的名称 为空的话默认使用db名称 |
| EntitySuffix | 如果想要生成的dbmodel的class名称都加一个特定的名称后缀可以使用 |
| AssociationPrefix | 指定外键字段的前缀 |
| AssociationAppendByFieldName | 指定外键字段名称生成规则要包含原字段和外键字段名称 |
| GenerateAssociations | 开启生成外键 |
| ConnectionString | db连接字符串 |
| PerClassPerFile | 是否开启一个表一个class |
| TableFilter | 表名称的string数组,如果指定了只会生成特定的表的代码 |
| SetFkList | 非物理的方式指定外键关系 格式: A表名称,A表字段,B表名称,B表字段,外键关系(OneToOne,OneToMany,ManyToOne) 例如 "good_category,GoodTid,goods,Tid,OneToOne" |
| UsingList | 指定using关系 |
| SetColumnTypeList | 指定某个字段为一个enum类型的时候用到,格式为 table.filedName=xxxxxx 例如:"person.Gender=GenderEnum" |
为了更加方便使用以上小工具我已经封装成了一个idea的插件:
https://plugins.jetbrains.com/plugin/14033
Orm框架(AntOrm,Ktorm)在mac机器上如何使用代码生成的更多相关文章
- 今天在Mac机器上使用了Flex Builder编辑了一个源代码文件,保存后使用vim命令去打开时发现系统自动在每一行的结尾添加了^M符号,其实^M在Linux/Unix中是非常常见的,也就是我们在Win中见过的/r回车符号。由于编辑软件的编码问题,某些IDE的编辑器在编辑完文件之后会自动加上这个^M符号。看起来对我们的源代码没有任何影响,其实并不然,当我们把源代码文件Check In到svn之类
今天在Mac机器上使用了Flex Builder编辑了一个源代码文件,保存后使用vim命令去打开时发现系统自动在每一行的结尾添加了^M符号,其实^M在Linux/Unix中是非常常见的,也就是我们在W ...
- Coding theano under remote ubuntu server from local Mac (在本地mac机器上,写、跑、调试、看-远程ubuntu上的theano代码)
本人是奇葩,最近鼓捣了一套在mac上coding远程ubuntu上的theano代码的东东,记之以期造福后人. Overview: 下图是我的编程环境和网络环境 我期望能在本地mac机器上对远程的ub ...
- 在Mac机器上给ITerm2配置lrzsz,便捷的传输文件到远程服务器上
可直接参考文档:http://danqingdani.blog.163.com/blog/static/18609419520141201215750 需要使用到的github脚本:https://g ...
- ios 联网 在mac机器上进行抓包
Remote Virtual Interface在使用Mac抓取iPhone数据包中介绍了两种方式在Mac电脑上抓取iPhone上的数据包,一是使用Mac的网络共享功能将Mac的网络通过WiFi共享给 ...
- ORM框架三种映射在Springboot上的使用
ORM(对象/关系映射)是数据库层非常重要的一部分,有三种常用的映射关系 1.多对一 tbl_clazz clazz{ id name description grade_id charge_id } ...
- Spring Boot (三): ORM 框架 JPA 与连接池 Hikari
前面两篇文章我们介绍了如何快速创建一个 Spring Boot 工程<Spring Boot(一):快速开始>和在 Spring Boot 中如何使用模版引擎 Thymeleaf 渲染一个 ...
- ORM框架示例及查询测试,上首页修改版(11种框架)
继上次ORM之殇,我们需要什么样的ORM框架? 整理了11个ORM框架测试示例,通过示例代码和结果,能很容易了解各种框架的特性,优缺点,排名不分先后 EF PDF XCODE CRL NHiberna ...
- 查看Mac OSX机器上存在的所有Device
可以使用instruments -s来查看Mac OSX机器上存在的所有Device,包括模拟器创建的Device以及真实连接的iPad,iPhone等设备.
- 002-docker安装-mac上安装docker,17.06在CentOS7 64位机器上安装
一.mac上安装docker 1.下载 通过这个链接下载:https://download.docker.com/mac/stable/Docker.dmg 2.安装 将 Moby 的鲸鱼图标拖拽到 ...
随机推荐
- 故事 1:.net程序员成长经历
我呢,是一名.NET程序员,在学校学的.NET和Java,在学校(校企合作)学了一年半的.NET方向的技术,后来觉得java也挺好的,又跑去学习Java,虽然学的很少,但是还是很希望能学好Java,所 ...
- python基础(26):类的成员(字段、方法、属性)
1. 字段 字段:包括普通字段和静态字段,他们在定义和使用中有所区别,而最本质的区别是内存中保存的位置不同. 普通字段属于对象 静态字段属于类 字段的定义和使用: class Province: # ...
- python中自带的三个装饰器
说到装饰器,就不得不说python自带的三个装饰器: 1.@property 将某函数,做为属性使用 @property 修饰,就是将方法,变成一个属性来使用. class A(): @propert ...
- MySQL,必须掌握的6个知识点
本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取.传送门:h ...
- GitHub 2019年年度报告:Python最受欢迎,VScode贡献者高达19.1K
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 开源最前线(ID:OpenSourceTop) PS:如有需要Pyt ...
- MySQL学习——约束
MySQL学习——约束 摘要:本文主要学习了数据库的约束. primary key(主键) 定义 主键约束是一个列或者多个列,其值能唯一地标识表中的每一行.这样的一列或多列称为表的主键,通过它可以强制 ...
- 如何给HTML页面的文本设置字符和单词间距
设置字符和单词间距介绍 属性名 单位 描述 letter-spacing px 设置字符间距 word-spacing px 设置单词间距 letter-spacing设置字符间距 letter-sp ...
- iOS 国际本地化(对新项目集成和已有项目集成)
第一推荐一篇金先生的博客,受益非浅,在这里真诚的感谢 https://www.jianshu.com/p/7cb0fad6d06f金小白 首先金小白先生把两种方式都做了介绍,第一种我就不在过多详细的讲 ...
- 『008』Zabbix
『006』索引-Monitoring Zabbix [001]- 点我快速打开文章[001-Zabbix 服务安装] [002]- 点我快速打开文章[002-Zabbix 前端配置] 更新中
- 『010』NoSQL
『010』索引-Database NoSQL [001]- 点我快速打开文章[01-Redis 简单介绍] 更新中