1)简单SQL 不需要写代码。

2)通过Java 运算符重载实现了复杂SQL只需要定义一个模型

@DomainModel

public class Member {

private String no;

@Queryable

private String name;

private Integer gender;

private String mobile;

private String otherInfo;

@Relation(relationType = RelationType.HAS_MANY)

private List orders;

}你就可以

Member.countAll();

Member.count("id > ?", 1);

Member.queryByPrimaryKey(1);

Member.queryFirst("id = ?", 1);

Member.query("id > ?", 1);

Member.queryAll();

Member.queryAll(Member.HAS_MANY_ORDERS);

Member.queryByPrimary(1, Member.HAS_MANY_ORDERS);

Member.queryByName("demo", Member.HAS_MANY_ORDERS);

Page page = Page.create(0, 10);

PagedList members = Member.pagedQueryAll(page, Member.HAS_MANY_ORDERS);复杂SQL 处理

Order.Table orderTable = Order.asTable();

Select select = new Select();

// In ObjectiveSQL, Java operator can be overloaded

select.project(sum(orderTable.amount) / sum(orderTable.quantity) * 100)

.from(orderTable)

.where(orderTable.quantity > 30 &&

orderTable.salesAt.between("2020-10-10 00:00:00", "2020-10-30 23:59:59"))

.groupBy(orderTable.productId);

生成的SQL 如下:

SELECT SUM(`T0`.`amount`) / SUM(`T0`.`quantity`) * 100

FROM `orders` AS `T0`

WHERE `T0`.`quantity` > 30 AND

`T0`.`sales_at` BETWEEN '2020-10-10 00:00:00' AND '2020-10-30 23:59:59')

GROUP BY `T0`.`product_id`

基于Oracle JMH性能测试(虽然领先的差距不大,但多次运行持续领先):

java最快的orm框架_java有哪些简洁的ORM框架?相关推荐

  1. freemarker的测试结果框架_java必背综合知识点总结(框架篇)

    框架篇 一.Struts1的运行原理 在启动时通过前端总控制器ActionServlet加载struts-config.xml并进行解析,当用户在jsp页面发送请求被struts1的核心控制器Acti ...

  2. java api 框架_java常用对象API之集合框架

    说到集合框架,其实刚开始学的时候有点自我感觉很简单,自己认为就是集合类中的框架之类的,但是当自己简单把它过了一变后发现懵里懵懂的,什么都没懂,于是自己又认认真真的看了一遍,才弄明白. 说到集合框架就不 ...

  3. java并发编程核心方法与框架_Java并发编程核心方法与框架-Future和Callable的使用...

    Callable接口与Runnable接口对比的主要优点是Callable接口可以通过Future获取返回值.但是Future接口调用get()方法取得结果时是阻塞的,如果调用Future对象的get ...

  4. java开源服务框架_Java框架服务

    Java从诞生到现在,一路飙升,可以说红遍全球,红到发紫.随着Java的流行,促生了许多java框架:Spring.WebWork.Struts.HIbernate.JDiy.JFinal.Quart ...

  5. java mvc框架代码_JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码)

    原标题:JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码) JavaEE体系结构包括四层,从上到下分别是应用层.Web层.业务层.持久层.Struts和SpringMVC是Web层的 ...

  6. java中mvc事务_关于项目中的事务问题_JavaEE框架(Maven+SpringMvc+Spring+MyBatis)全程实战教程_Java视频-51CTO学院...

    SpringMVC Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring MVC 分离了控制器.模型对象.分派器以及处理程序对象 ...

  7. java中微信公众号框架_java微信公众号开发框架包含哪些内容呢?为什么要使用框架...

    java微信公众号开发框架包含哪些内容呢?为什么要使用框架 微信公众号是现在人们生活中经常会用到的,微信公众号有着各种各样的信息,包含了齐全的内容以及完善的功能,这也让人们可以更加轻松的在公众号上找到 ...

  8. java 分布式计算框架_java分布式系统框架的分类

    鲁班学院java架构师成长路线 随着电商行业的崛起,越来越多的人为了省事更习惯网购,今天我们就来熟悉Java分布式系统中的Dubbo,Dubbo就是来解决Java分布式系统中间的子系统之间相互调用相互 ...

  9. java判断时间区间 隔天_Java初中级程序员面试题宝典

    Java基础部分 &与&&区别? &和&&都是逻辑运算符,都是判断两边同时真则为真,否则为假:但是&&当第一个条件不成之后,后面的条件都 ...

最新文章

  1. 江西理工大学c语言程序设计竞赛怎么备考,2015年江西理工大学C语言程序设计竞赛(高级组)...
  2. android中布局全屏,怎么在Android 应用中实现一个全屏与非全屏功能
  3. Netty学习笔记(三)EventLoopGroup开篇
  4. picture of web
  5. ssl1016 OJ8467-数的划分 鸣人的影分身【各种dp之8 7】
  6. 怎么用pycharm更新python_利用PyCharm操作Github(仓库新建、更新,代码回滚)
  7. 资源放送丨《并行不悖——Oracle数据库并行的是是非非》PPT视频
  8. uni.request POST 请求后台接收不到参数
  9. af_netlink_Linux Netlink通信机制详解(上)
  10. python的前端开发_python开发 - 包子博客 _ 关注互联网前端、开发、SEO、移动互联网应用技术...
  11. memcache和redis本质区别在哪里?
  12. 这十个Python实战项目,让你瞬间读懂Python!
  13. 什么是spurious wakeups(虚假唤醒)
  14. 修改域名后Git拉取代码出现警告Are you sure you want to continue connecting (yes/no)
  15. 光阴似锦,关于身体保养的那些事
  16. 6-1 求实数和的函数
  17. Linux下的java运行
  18. html5清新文艺,清新文艺句子
  19. Python爬虫方法三部曲之二-实战训练
  20. gst-rtsp-server搭建与测试

热门文章

  1. 项目Beta冲刺(团队)——05.24(2/7)
  2. 网络安全人员需要考的几本(含金量高)的证书!
  3. Oracle数据库新建默认表空间并指定用户
  4. java从键盘为数组赋值,java给数组赋值
  5. OpenglEs之三角形绘制
  6. php switch
  7. 学习UE4动画蓝图:配置脚部IK
  8. 5个理由告诉你, 区块链未必适合你的业务!
  9. 中间件 mysql 异地多活_数据库的异地多活分析和方案
  10. Linux 安装宝塔面板