我通过利用JPQL查询来使用Spring Boot和Hibernate项目 但有人告诉我存储过程更好。我的问题是存储过程是否最好,为什么还要使用JPQL和条件查询。
哪个是行业标准sp或JPQL查询
答案 0 :(得分:1)
我不建议您选择其中一个作为首选。
我当然不会同时使用Hibernate和存储过程。你这样做能完成什么?
让我们回顾一下为什么要选择每一个:
存储过程的缺点是您与该关系数据库供应商有联系。每个供应商都有自己的语言。您需要擅长编写该存储过程语言。如果不是,或者没有DBA支持,则存储过程可能不是一个好主意。
ORM允许您忘记正在处理关系数据库。您可以假装一切都是对象。大多数使用Hibernate的人来这里询问他们如何编写自定义查询。我一直想知道为什么他们选择了Hibernate。
如果对象模型和关系模式很简单,那么这两种方法都会增加您可能不需要的复杂性。
我将从一个具有手写ANSI SQL的关系模式和对象开始-否供应商特定的SQL扩展。您已经在使用Spring。坚持简单的事情:使用Spring JdbcTemplate
。
仅在需要时承担存储过程和ORM的复杂性。