登录 
欢迎来到陈冬冬(雪地里走)的学习天地 | 经验分享整理平台 | 陈冬冬
 服务器本次启动于:7个月前 

SpringBoot JPA实践之小技巧汇总

2020-05-01 23:35:18 阅读:()

JPA Hibernate相关的API文档地址

https://docs.jboss.org/hibernate/orm/6.0/userguide/html_single/Hibernate_User_Guide.html

https://docs.jboss.org/hibernate/orm/5.2/userguide/html_single/chapters/query/native/Native.html(提供了非常详细的关于原生SQL的查询使用)

https://docs.jboss.org/hibernate/orm/5.2/userguide/html_single/chapters/query/hql/HQL.html


Repository的三种定义方式

① 使用本系列文章中的BaseRepository,统一使用全部集成后的Repository,方便记忆;

② 直接使用集成的具体父类的形式;

③ 如不需要继承相关父类,可直接使用@RepositoryDefinition指定;


Hibernate提供StandardTypes类型定义

org.hibernate.type package包中定义的类,与JDBC Type、Java Type对应的类型参考地址为:https://docs.jboss.org/hibernate/orm/6.0/userguide/html_single/Hibernate_User_Guide.html#basic


JPA原生SQL提供内置的变量

{h-schema}、{h-domain}、${h-catalog}、#{#entityName},同时可在该文件中定义一些全局的变量,类似{h-schema},且支持spel表达式。


JPA使用@Query的动态排序

① 使用@Query注解可在SQL中增加若干固定排序字段的实现,但是涉及动态排序部分的实现不再像使用动态参数的方式实现,同时引用变量的时候也没有提供一种字符串替换的方案;

② 可以在Repository的函数中增加Sort对象(用于不带分页的应用场景);

③ 当使用@Query于分页时的场景时需要在Pageable中设置Sort动态排序的对象;

④ Repository的函数不支持Sort与Pageable并存的情况;


JPA内置较多SQL函数,可以调用SQL的function、procedure等;


@Locking 锁机制


@Version 版本机制


JPA Named查询将SQL定义至xml文件中



你可能感兴趣的:
      关键字:hibernate(9)html(8)sql(6)jpa(6)org(5)
      互动()
      评论()
      比起点赞,站长更喜欢登录后的评论
      • 0
      • 0
      • 0
      • 0
      • 0