我是Hibernate的新手。
我正在开发云服务数据访问层。
目前我们正在使用Hibernate进行OR映射,并使用Hibernate注释作为数据访问层。但最近我被要求实现Hibernate / Data Access层,使我的存储过程在HQL中,我们可以在短时间内更改我们的数据库并移植整个代码。
我认为最接近的是使用命名查询,其中存储过程位于数据库端,而我的hibernate使用命名查询解析存储过程调用。
所有这一切的原因是,由于存储过程是预编译的,因此它们为大型云服务实现提供了良好的性能和安全性优化。
目前我正在使用java,hibernate和Mysql。
任何人都可以检查我的假设并验证或提供/建议一些更好的选择。
性能和安全性是首要任务。
答案 0 :(得分:1)
我认为您概述的方法很棒。
如果我在你的位置,这正是我会做的。 (我也使用MySql支持Hibernate,并且出于性能原因需要考虑这样做。)
答案 1 :(得分:1)
由于对大多数DBMS的解析和优化语句很快,如果我的应用程序是目录的“所有者”,我宁愿不使用存储过程。
通过存储过程,迁移和维护可能变得更加困难,从而超过了微小的性能利润。
案例,我看到了存储过程的好处:
希望,这会帮助你做出决定。