Jimmer

面向 Java 和 Kotlin 的革命性的 ORM
授权协议 MIT
开发语言 Kotlin Java
所属分类 程序开发、 ORM/持久层框架
软件类型 开源软件
地区 国产
投 递 者 傅雪松
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

一款面向 Java 和 Kotlin 的革命性的 ORM,主要特性如下:

1. 查询操作针对任意复杂的对象树,而非简单对象。甚至可以对自关联属性进行递归查询。

2. 保存操作针对任意复杂的对象树,而非简单对象。

3. 缓存操作针对任意复杂的对象树,而非简单对象。并保证数据库和缓存之间的一致性。

4. 内部机制避免使用反射,获得了极致的性能。

5. 基于不可变数据对象。通过移植immer,获得直观地对层次很深的不可变对象进行“修改”的能力。

6. 强类型SQL DSL,在编译时发现问题,而非运行时。

7. Java和Kotlin双API支持,前者保证所有团队可用,后者优化开发体验。

  • Jimmer,一个面向Java和Kotlin的革命性ORM,终于彻底完成了! 现在,所有的预期设计目标全部达到。 B站视频(38分钟):https://www.bilibili.com/video/BV1kd4y1A7K3 适用范围:满足如下特点的项目 OLTP 以关系型数据库为持久数据 以NoSQL为缓存数据(可选) 都可以使用Jimmer来开发,同时实现开发速度快、维护性好、功能强大、性能优越

  • 现在,有很多ORM框架可供选择,比如:JPA、myBatis、JOOQ、Exposed、Ktorm。 它们够用吗? 或许,一个实现层面更轻量,但功能层面却足够强大的革命性ORM能颠覆人们对ORM的传统认知。于是我创作这个ORM 项目地址:https://github.com/babyfish-ct/jimmer 文档(中英双语)地址:https://babyfish-ct.github.io/ji

  • 1. 本文的讨论前提 OLTP类型项目很大一部分操作是都针对数据库原始数据,这时软件系统中的对象结构和数据库的中数据结构大体一致,是本文讨论的场景。 而因业务计算而引入的计算指标相关的数据类型,和数据库的原始结构并不相同,并非本文的讨论范场景。 2. 现有技术流派的缺陷 现在,用户访问关系型数据库的框架很多,总体上分为两个派别 传统ORM派,以JPA, Exposed, Ktorm为代表。 DTO

 相关资料
  • 在创世纪章节中我们简单介绍了Go语言的演化基因族谱,对其中来自于贝尔实验室的特有并发编程基因做了重点介绍,最后引出了Go语言版的“Hello, World”程序。其实“Hello, World”程序是展示各种语言特性的最好的例子,是通向该语言的一个窗口。这一节我们将沿着各个编程语言演化的时间轴,简单回顾下“Hello, World”程序是如何逐步演化到目前的Go语言形式、最终完成它的革命使命的。

  • 变革 ​ECMAScript 1​ ECMAScript 的最初定义,包含了以下内容: 基本类型 字符串 数字 布尔 null undefined 对象类型 对象 函数 数组 ECMAScript 3 ​ECMAScript 5.1​ ​ECMAScript 2015 (ES6) ​ECMAScript 2016 (ES7) 新增内容: ​Array.prototype.includes()​ ​

  • 好了,前面的章节解释了使用Kotlin代码完美地工作。但是与普通的Java库和Android SDK会发生什么呢?在Java中,所有对象可以被定义为null。所以我们不得不处理大量潜在的在现实中不可能是null的null变量。这意味着我们的代码最后可能会有几百个!!操作符,这绝对不是一个好的主意。 当我们去处理Android SDK时,你可能看见所有Java方法的参数被标记为单个的!。比如,Jav

  • 问题内容: Java面向方面的编程的最佳工具是什么? 该工具的要求当然是IDE支持,表达能力和适当的文档。 问题答案: JBossAOP和AspectJ是AOP的两个常用的成熟框架。另一个流行的选择是Spring AOP,但它缺少其他两个功能。 JBossAOP和AspectJ都具有相似的功能,一个很大的不同是AspectJ依赖于Java语言的扩展,而JBoss AOP则没有。 如果您的AOP要求

  • 如何在Kotlin中创建一个具有私有getter(或只是没有)但具有公共setter的属性? 不能使用错误: 在我的例子中,原因是Java Interop:我希望我的Java代码能够调用,但不能调用。

  • 我在为Android系统构建一个在iOS上运行良好的应用程序时遇到了问题。错误内容为: *错误:评估项目':app'时出现问题。 在org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler类型的对象上找不到参数[org.jetbrains.kotlin:kotlin-gradle-plugin:$kotl