Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 开源了
开源的来了,懒人程序员的福音,.NET 生态闭环太缺开源精神了, 拥抱开源!
前言: 本人不是不喜欢现有ORM的轮子,而是发现现有的ORM 的都不太符合开发人员的一些习惯。现有的ORM 要么功能太冗余,要么不符合开发人员偷懒的性格。我认为,什么是促使开发工具的进步,就是人的惰性。我们追求的开发配套工具,需要高效,简单,易用。别跟我扯里面的深奥的道理。我只希望好用,性能高,给我开发带来乐趣。 如果网上开源不符合要求,那么就自己造轮子。
在进入正式主题之前,我还是来说下我不太喜欢EF 的原因,EF 是重ORM 类型的 数据库访问持久化框架,出自于微软之手,当然很牛逼。如果,你要用EF,那么请尽量别直接写 SQL 语句,如果写了,那就失去了EF 的意义了,EF 主要是模型驱动和解决跨数据库而生的。如果你的代码编写主要以SQL 语句为主,在没有 Bitter ORM 之前,建议你使用 Dapper。 当然,Dapper 在业界的查询性能也非常好,但是,我个人感觉在程序员的惰性方面,还是不符合我的要求。当然这这是个人看法,如果有其他大神路过,可以互相交流。
Bitter.Core 优势:高性能,高轻量,用极少的代码量构建持久化业务代码。
Github 开源地址:https://github.com/DavidChild/Bitter.Core.git
Bitter.Core 有道使用教程已开放: http://note.youdao.com/s/CfBIm3Cx 在此提供大家使用
Bitter.Core 使用 DEMO 下载:https://github.com/DavidChild/Bitter.Core.Sample.git
欢迎加入Bitter.Frame 框架圈:825092487 有任何问题可以在群里面反应。
Bitter.Core 系列目录
Bitter.Core 系列 一 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM
- Bitter.Core系列 二 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之数据库连接
Bitter.Core 系列 三 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 示例模型创建
- Bitter.Core 系列 四 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 示例 查询
- Bitter.Core 系列 五 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 示例 分页聚联查询
- Bitter.Core 系列 六 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 示例 DataTable 模型转换
- Bitter.Core 系列 七 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 示例 更新删除插入
- Bitter.Core 系列 八 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 事务
- Bitter.Core 系列 九 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 WITH 子句支持
- Bitter.Core 系列 十 NETCORE ORM 全网最粗暴简单易用高性能的 NETCore 之 Log 日志
- Bitter.Core系列 十一:NETCORE ORM 全网最粗暴简单易用高性能的 NETCore 之 字段变更收集器
- Bitter.Core系列 十二:NETCORE ORM 全网最粗暴简单易用高性能的 NETCore 之 Where 条件表达式
Github 开源地址:https://github.com/DavidChild/Bitter.Core.git
Bitter.Core 有道使用教程已开放: http://note.youdao.com/s/CfBIm3Cx 在此提供大家使用
Bitter.Core 使用 DEMO 下载:https://github.com/DavidChild/Bitter.Core.Sample.git
Bitter.Core 支持:
- 1:支持 MSSQL,MYSQL
- 2 : 支持模型查询,以及 SQL 查询
- 3:支持事务一次性提交
- 4:支持BuldCopy 批量事务提交
- 5:支持查询数据模型转换
- 6:支持异常抛出,事务中断
- 7:支持跨库事务提交(多次事务)
- 8:支持SQL WITH优化
- 9:支持 CONTOVER,SELECT ROW 模式的分页查询模式
- 10: 支持多库
- 11:支持读写分离
- 12 : 支持字段变更收集
- 13:支持自增主键ID 关联新增
- 14:支持字段变更收集
支持的数据类型:
| int | long | char | bit | bool | text | decimal | money | xml | binary | |
| Mssql | y | y | y | y | y | y | y | n | y | y |
| MySql | y | y | y | y | y | y | y | n | y | y |
建议:在构建数据库字段类型过程中:money 类型请使用 decimal 构建,bit 使用int来定义或者mysql 的tinyint.
Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 开源了的更多相关文章
- Bitter.Core系列二:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之数据库连接
Bitter.Core NETCore 相当的简单易用,下面附上使用示例: 数据中连接:请在你的NETCORE 项目中 创建:Bitter.json 配置文件,然后追加如下配置内容: MSSQL 连接 ...
- Bitter.Core系列十一:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore 之 字段变更收集器
有时候我们业务层需要记录 数据库表更改之前的值和更改之后的值的记录集合--此过程在 Bitter.Core 中有强有力的支持.Bitter.Core 字段收集器提供了方便简单易用的 收集对象在修改之前 ...
- Bitter.Core系列七:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 示例 更新删除插入
Bitter Orm 在操作数据库增删改的时候,支持模型驱动和直接执行裸SQL 操作,示例代码如下: 一:模型驱动(增删改) /// <summary> /// 插入,删除,更新示例(模型 ...
- Bitter.Core系列三:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 示例模型创建
在具体数据库操作之前,我们先准备好四张表以及相对应数据库操作模型: 学生表,年级表,班级表,学分表.示例数据库表,如下代码(MSSQL 为例) --学生表 CREATE TABLE t_student ...
- Bitter.Core系列五:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 示例 分页聚联查询
Bitter.Core 在聚联/分页聚联查询的时候,采用原生的MSSQL, MYSQL 语句查询,做过复杂高级项目的人知道,原生的聚合查询代码执行效率更高,更快,更容易书写,开发量最少. 借助原生的M ...
- Bitter.Core系列八:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore 之 事务
Bitter.Core 编写事务相当简单,Bitter.Core 尽可能的将代码编写量降为最低,例外一方方面保证客户主观能控制代码.Bitter.Core 事务提交,支持Builkcopy事务,原生事 ...
- Bitter.Core系列 十二 :Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore 之 支持的 where 条件表达式
Bitter.Core 内置了支持大部分的 linq 的条件表达式.基本上符合我们 where 条件所需.Bitter.Core 的支持 表达式内置 扩展 有: EndsWith 在Sql 解 ...
- Bitter.Core系列十:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore 之 Log 日志
Bitter 框架的 Log 全部采用 NLog 日志组件.Bitter.Core 的 执行语句的日志记录 Nlog 日志级别为:info. 如果想要查看Bitter.Core 的执行SQL,先要去 ...
- Bitter.Core系列九:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore 之 WITH 子句支持
有时我们在聚合查询中,经常会有复杂的聚联查询.有时表的聚联查询SQL 子句比较复杂,DBA 会经常告诉们,能否通过WITH 子句优化.WITH 子句,是对SQL 聚联查询的优化.Bitter.Core ...
随机推荐
- Java基础-方法的重写和重载
重载(Overload)和重写(Override) 重载是在同一个类里面,方法名字相同,而参数不同.返回类型可以相同也可以不同.每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表. 重写 ...
- [UWP] - 修改应用程序在任务栏上的显示Logo
用VS2015在windows 10上开发一个UWP的应用,由于windows 10对store应用进行了窗口化,因此可以看到在任务栏上看到应用程序的图标,但是看起来会感觉应用Logo会被嵌在另一个容 ...
- UICamera 编辑器与移动设备下的Find异常
某次出包后,在移动设备下,发现所有的UIDrag和一些UIHUD组件都失效了,看了看Editor下是正常的,后面就做了一系列检查措施来排除问题所在. 1.看了下log日志里是否有相关报错异常,结果毫无 ...
- springcloud组件gateway断言(Predicate)
Spring Cloud Gateway是SpringCloud的全新子项目,该项目基于Spring5.x.SpringBoot2.x技术版本进行编写,意在提供简单方便.可扩展的统一API路由管理方式 ...
- [leetcode]61. Rotate List反转链表k个节点
类似于找链表的后k个节点 不同的是要把前边的接到后边 public ListNode rotateRight(ListNode head, int k) { //特殊情况 if (head==null ...
- [LeetCode]129. Sum Root to Leaf Numbers路径数字求和
DFS的标准形式 用一个String记录路径,最后判断到叶子时加到结果上. int res = 0; public int sumNumbers(TreeNode root) { if (root== ...
- Turtlebot3新手教程:仿真
本文章针对如何利用turtlebot3实现仿真功能进行讲解 测试环境:Ubuntu 16.04 和 ROS Kinetic Kame. 注意:TurtleBot3 Simulation 依赖 turt ...
- RocketMQ 简介
本文根据阿里云 RocketMQ产品文档整理 地址:https://help.aliyun.com/document_detail/29532.html?userCode=qtldtin2 简介 Ro ...
- hive之Json解析(普通Json和Json数组)
一.数据准备 现准备原始json数据(test.json)如下: {"movie":"1193","rate":"5", ...
- java的多线程:java安全问题产生的原因与JMM的关系
一.多线程产生安全问题 1.Java内存模型 共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入时,能对另一个线程可见. 从抽象的角度来看,JMM定义了线程和主内存 ...