尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Play Ebean:Play Framework 的 ORM 集成模块

Play Ebean:Play Framework 的 ORM 集成模块
📅 发布时间:2026/7/8 8:04:40

文章目录

  • Play Ebean:Play Framework 的 ORM 集成模块
    • 1、 这玩意儿是干嘛的
    • 2、 版本对应关系
    • 3、 怎么用
    • 4、 适合什么场景
    • 5、 维护状态

Play Ebean:Play Framework 的 ORM 集成模块

play-ebean 在 GitHub 上拿到 108 Star 了。

playframework 团队维护的这个模块,专门干一件事——把 Ebean ORM 接到 Play Framework 里。Scala 项目用 Play 做后端,需要数据库访问层,又不想写一堆 MyBatis 风格的 XML,这个模块就是为此准备的。

1、 这玩意儿是干嘛的

给 Play Framework 加上 Ebean ORM 的支持。Ebean 是基于 JPA 注解的 Java ORM,配置简单,查询语义接近 SQL,不像 Hibernate 那么重。play-ebean 把它接到 Play 的插件体系里,配置文件加上一行就能跑。

API 风格上,Ebean 走的是 finder 路线,Model 类继承基类后直接find.byId(1L)就拿到对象,复杂查询用Ebean.find(class).where().eq("name", value).findList(),比手写 SQL 简洁,又不像 Criteria API 那样啰嗦。

2、 版本对应关系

模块版本、Play 版本、Ebean 版本三者绑死。挑错了直接起不来。

Plugin versionPlay versionEbean version
8.5.03.0.9+17.1.0
8.4.03.0.9+15.11.0
7.5.02.9.9+17.1.0
6.2.02.8.18+12.16.1
5.0.22.7.011.39.x
4.1.42.6.x11.32.x

Play 3.x 走 8.x 系列,Play 2.9 走 7.x,Play 2.8 走 6.x。低版本 Play 升级前先看这张表。

3、 怎么用

工程里加依赖:

libraryDependencies+="org.playframework"%%"play-ebean"%"8.5.0"

build.sbt 启用插件:

lazyvalroot=(project in file(".")).enablePlugins(PlayJava,PlayEbean)

conf/application.conf 配数据源和模型扫描路径:

db.default.driver = org.h2.Driver db.default.url = "jdbc:h2:mem:play" ebean.default = ["models.*"]

实体类照 JPA 风格写:

@Entity@Table(name="users")publicclassUserextendsModel{@IdpublicLongid;@ColumnpublicStringname;publicstaticFinder<Long,User>find=newFinder<>(User.class);publicstaticUserbyName(Stringname){returnfind.query().where().eq("name",name).findOne();}}

API 流转过程里,Play 注入 EbeanServer,Model 直接调用静态 finder,控制器拿到 user 后返回 JSON,链路一气呵成。

4、 适合什么场景

  • 想用 Play 做 Java/Scala 后端,又不想碰 Hibernate 全套配置的项目
  • 已经在用 Ebean,需要接到 Play 体系的工程
  • 团队偏好 JPA 注解风格但想用更轻量的 ORM
  • 老的 Play 2.7、2.8 项目升级,需要按版本号挑选匹配分支

模块本身代码不多,主要做的是配置桥接和生命周期管理,真正的活是 Ebean 在干。

5、 维护状态

playframework 组织还在持续更新,最近版本对齐到 Play 3.0.9 和 Ebean 17.1.0。仓库体积不大,issue 响应慢一些但不废弃。生产环境建议看准对应版本号再上,候选版(RC)不要碰。

官方还推荐一个 payintech 的 fork,在原版基础上加了一些企业级特性,需要审计、多租户、复杂权限场景可以一并看看。

建议看准对应版本号再上,候选版(RC)不要碰。

官方还推荐一个 payintech 的 fork,在原版基础上加了一些企业级特性,需要审计、多租户、复杂权限场景可以一并看看。

相关新闻

  • 2026 待办软件综合测评:多场景办公适配度完整对比
  • B站视频下载器:解决大会员4K高清和充电专属视频的本地化存储难题
  • Windows如何免费解决HEIC缩略图预览问题?终极简单指南

最新新闻

  • 京东商品库存监控与自动下单终极指南:使用jd-happy实现24小时无人值守抢购
  • paperxie|解锁科研绘图新范式,让学术出图高效又合规
  • GPT-Image-2:封面构图提示词写作要点
  • 如何构建高效抖音内容采集系统:开源批量下载工具技术解析
  • PMSM 控制算法核心:从磁链、反电势到转矩的 2 个关键系数换算
  • Git Bash 执行中文命令报错 127:MSYS 参数编码 bug 排查与修复

日新闻

  • PROPKA 3深度解析:蛋白质pKa预测的实战指南与算法原理
  • 微信小程序 globalData 监听:基于 Object.defineProperty 的 3 种实现方案对比
  • MySQL 8.0 数据清洗实战:3类异常值识别与 UPDATE/DELETE 批量处理

周新闻

  • 基于YOLOv12的番茄成熟度智能检测系统开发
  • 终极RimWorld模组管理指南:用RimSort告别模组冲突烦恼
  • AI Agent框架开发:从理论到实践的完整指南

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号