JDBC
优点:1、直接操作数据库最底层的代码,sql高手用起来很爽
缺点:1、重复代码多
2、移植数据库麻烦
3、面向sql,不是面向对象操作
4、内存对象与数据库表转换比较麻烦
5、不支持缓存
JPA
优点:1、面向对象,操作对象就能实现对数据库的操作
2、数据库移植方便,只需更改配置的数据库方言
3、操作起来简单,不用转换对象,调用persist实现CRUD
4、支持缓存(底层缓存:一级缓存,二级缓存和查询缓存)
缺点:1、不能干预sql语句的生成,比如find,默认:select * from 。。。
2、对sql要求高的话不适合JPA
3、 数据量大的话也不适合JPA,JPA适合中小型项目