JDBC
优点:
1.对数据库的操作快,直接操作数据库
2.程序员对程序的把控性比较好
缺点:
1.查询代码比较烦琐,要获得结果集,然后通过JavaBean存入集合,每次操作都要重复上述操作
2.重复性代码特别多,频繁的try,catch
3.数据的缓存。例如,要在20s内读取500W条数据到内存中,应使用web监听器,将数据存入内存中,要使用时直接从内存中读取数据,但是jdbc没有数据缓存
4.sql的可移植性不好
Hibernate
优点:
1.操作简单
2.数据缓存: 一级缓存、二级缓存、查询缓存
3.可移植性比较好
缺点:
1.因为sql语句是hibernate内部生成的,所以程序员干预不了,不可控,例如,表的数据量比较大时,要选择最优的查询语句,但是使用hibernate,无法选择语句
2.如果数据库特别大,不适合用hibernate