JDBC与MyBatis

简介: JDBC与MyBatis

传统的JDBC编程JAVA程序通过JDBC链接数据库,这样我们就可以通过SQL对数据库进行编程。


JAVA链接数据库大致分为5步。

1.使用JDBC编程需要链接数据库,注册驱动和数据库信息。

2.操作Connection,打开Statement对象。

3.通过Statement执行SQL语句,返回结果放到ResultSet对象。

4.使用ResultSet读取数据。

5.关闭数据库相关的资源。


image.png


传统的JDBC方式存在一些弊端,第一点,工作量比较大。我们需要先建立链接,然后处理JDBC底层业务,处理数据类型。我们还需要处理Connection对象,Statement对象和Result对象去拿数据,并关闭它们。第二点我们对JDBC编程处理的异常进行捕获处理并正确的关闭资源。


MyBatis首先我们先了解一下MyBatis的核心组件。

1.SQLSessionFactoryBuilder(构造器):它会根据配置信息或者代码生成SqlSessionFactory。

2.SqlSessionFactory(工程接口):依靠工程生成SqlSession。

3.SqlSession(会话):是一个既可以发送SQL去执行并且返回结果,也可以获取Mapper接口。

4.SQL Mapper:是由一个JAVA接口和XML文件(或注解)构成,需要给出对应的SQL和映射规则。SQL是由Mapper发送出去,并且返回结果。

————————————————


image.png


总结: 从上面的流程图可以看出MyBatis和JDBC的执行时相似的。Mybatis的实现原理就是对JDBC进行了封装,将相应的接口留给了程序员。只要程序员在配置文件中配置中填写自己的数据库类型,数据库,数据表,用户名,密码,相应的SQL语句,省去了创建连接,创建Statement对象和Result对象大大的提高了代码复用性。MyBatis相对于JDBC执行的速度相对较慢,因为JDBC更接近底层。


目录
相关文章
|
6月前
|
缓存 Java 数据库连接
使用Mybatis与直觉用jdbc相比,哪个更有优势?
Mybatis如果仅仅是要【会用】,入门是非常快的,感觉两三天就可以搞好了。
102 0
|
6月前
|
druid Java 数据库连接
SpringBoot原理分析 | Spring Data整合:JDBC、Druid、Mybatis
SpringBoot原理分析 | Spring Data整合:JDBC、Druid、Mybatis
131 0
|
2月前
|
Java 数据库连接 数据库
SpringBoot 整合jdbc和mybatis
本文详细介绍了如何在SpringBoot项目中整合JDBC与MyBatis,并提供了具体的配置步骤和示例代码。首先,通过创建用户实体类和数据库表来准备基础环境;接着,配置Maven依赖、数据库连接及属性;最后,分别展示了JDBC与MyBatis的集成方法及其基本操作,包括增删查改等功能的实现。适合初学者快速入门。
SpringBoot 整合jdbc和mybatis
|
2月前
|
SQL 存储 Java
原生JDBC简单实现Mybatis核心功能
本文介绍了在Vertx项目中使用Tdengine时,因缺乏异步JDBC驱动而采用同步驱动结合`vertx.executeBlocking`实现异步查询的方法。文中详细描述了自行开发的一个简易JDBC工具,该工具实现了SQL参数绑定与返回值映射至实体类的功能,简化了原生JDBC的繁琐操作。通过具体示例展示了其实现过程及代码细节,并与原生JDBC进行了对比,突显了其便捷性和实用性。
|
1月前
|
SQL Java 数据库连接
JDBC存在什么问题?MyBatis是如何解决的?
本文详细探讨了JDBC(Java Database Connectivity)在实际应用中存在的问题,如代码繁琐、资源管理困难、SQL语句硬编码、缺乏对象映射及事务管理和缓存支持不足等。JDBC的核心组件包括`DriverManager`、`Connection`、`Statement`、`ResultSet`和`SQLException`。为了解决这些问题,文章介绍了MyBatis框架的优势,如简化代码编写、自动资源管理、SQL与代码分离、支持对象关系映射(ORM)、简化事务管理和内置缓存机制。通过具体示例展示了MyBatis如何优化数据库操作。理解JDBC的原理有助于更好地掌握ORM框架。
21 0
|
5月前
|
SQL XML Java
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
71 3
|
5月前
|
Java 数据库连接 API
后端开发之用Mybatis简化JDBC的开发快速入门2024及数据库连接池技术和lombok工具详解
后端开发之用Mybatis简化JDBC的开发快速入门2024及数据库连接池技术和lombok工具详解
63 3
|
6月前
|
Java 数据库连接 数据库
Mybatis JDBC No enum constant org.apache.ibatis.type.JdbcType.TEXT异常处理
Mybatis JDBC No enum constant org.apache.ibatis.type.JdbcType.TEXT异常处理
324 0
|
6月前
|
SQL Java 数据库连接
mybatis plus :mybatis简化了jdbc,mybatisplus简化了mybatis
mybatis plus :mybatis简化了jdbc,mybatisplus简化了mybatis
140 0
|
6月前
|
SQL Java 数据库连接
【Mybatis】从 JDBC 到 MyBatis
【Mybatis】从 JDBC 到 MyBatis
202 0