感觉 spring jpa 使用越来越广泛了

2020-12-14 20:34:58 +08:00
 myqa

未来可能会取代 mybatis 成为 java orm 第一选择 当然不适用 springboot 的话就不好说了

10037 次点击
所在节点    Java
65 条回复
hantsy
2020-12-16 10:38:12 +08:00
JPA 从一开始就支持完全使用 XML 配置(orm.xml, persistence.xml 两个标准文件,目前一般应用服务器中 persistence.xml 是必须的,orm.xml 则是可选的,在 Spring 中使用更高级的 LocalContainerEntityManagerFactory 时,persistence.xml 也是可选的),只是很少人用,毕竟 Annotation 配置是大势所趋,下一代的 JPA 标准可能 persistence.xml 也和 Servelt,CDI 配置文件一样变成可选的。

所有的 Entity Annotaitons 查询语句都可以转化成 XML 在 orm.xml 中写。

这种纯 XML 配置方式有一种情况适合,比如 你设计的产品 Models 是中立的, 需要适配多种数据源(不一定是数据库,也可能是 RDBMS,或者 NoSQL ),Model POJOs 单独打包成一个 Module (可以是 JPMS 或者就是一个普通的 Jar ),当要使用 JPA 时,用外部化的 XML 配置来实现。
Nillouise
2020-12-16 11:28:55 +08:00
想问一下,用了 nosql 如 mongodb 跟 dynamodb 是不是就不用纠结 jpa 跟 mybatis ?
mmdsun
2020-12-16 12:59:58 +08:00
@skypyb 关键词是:XML Named Query Definition

然后写 xml 就可以了。xml 有对应的标签支持原生 SQL 。

<named-query name="User.findByName">
<query>sql </query>
</named-query>
SkyLine7
2020-12-23 15:11:04 +08:00
mybatis plugins 永远滴神
soulzz
2021-08-26 08:57:48 +08:00
jpa repo extends 一个 JpaSpecificationExecutor
用 CriteriaBuilder 去构建一个查询不香到哪里去了?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/735432

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX