Tools-持久层技术比较

技术

优点

缺点

jdbc

简单、纯粹,一切均可见;

1、需要手动关闭连接接
2、结果集不能自动映射为对象
3、SQL夹杂在Java代码中,耦合度高,导致硬编码内伤

4、实际开发中SQL经常变动,导致频繁修改,代码不易维护;

jdbcTemplate

简单、纯粹、自动会话管理、结果集映射

需要手动拼装SQL,SQL与Java代码混合在一起,长的SQL管理混乱

Hirbernate

JPA

编程效率高,无需编写SQL。
数据库更换成本低

较完善的二级缓存、自动防SQL注入

完全掌握的门槛高;
复杂SQL、复杂映射处理困难;
性能优化较麻烦、不易做特殊优化;
基于全映射的全自动框架,大量字段的POJO进行部分映射时比较困难,导致数据库性能下降;

MyBatis

学习成本低、可以进行更为细腻的SQL优化,减少查询字段、统一的SQL管理
SQL和Java编码分开,功能边界清晰,一个专注业务、一个专注数据

需要手动编写维护SQL、表结构变更之后需要手动维护SQL与映射;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值