MyBatis与JDBC的比较

xiaoxiao2021-02-28  101

Java程序都是通过JDBC(Java Data Base Connectivity)来访问数据库的。JDBC定义了一系列的接口规范,具体的实现是由各数据库厂商去实现,是一种典型的桥接模式。

JDBC的工作量大:需要先注册驱动和数据库信息、操作Connection、通过statement对象执行SQL,将结果返回给resultSet,然后从resultSet中读取数据并转换为pojo对象,最后需要关闭数据库相关资源。

而且还需要自己对JDBC过程的异常进行捕捉和处理。

因为JDBC实在不好用,于是出现了ORM(对象关系映射Object relational Mapping)对Jdbc进行封装。

 

MyBatis对JDBC的封装很好,几乎可以取代Jdbc。

MyBatis使用SqlSessionFactoryBuilder来连接完成JDBC需要代码完成的数据库获取和连接,减少了代码的重复。JDBC将SQL语句写到代码里,属于硬编码,非常不易维护,MyBatis可以将SQL代码写入xml中,易于修改和维护。JDBC的resultSet需要用户自己去读取并生成对应的POJO,MyBatis的mapper会自动将执行后的结果映射到对应的Java对象中。

使用MyBatis的编码风格统一优雅、性能高,灵活性好。
转载请注明原文地址: https://www.6miu.com/read-47536.html

最新回复(0)