MyBatis中的会话和连接有什么区别?

时间:2019-05-06 01:10:42

标签: jdbc mybatis

使用JDBC,我了解每个连接代表与数据库的物理tcp连接。

但是在MyBatis中,没有连接而是有会话,那么会话和连接之间有什么区别?

当我打开一个会话或关闭一个会话时,内部会发生什么?这是否意味着创建/关闭连接?

1 个答案:

答案 0 :(得分:0)

首先,JDBC连接不代表物理TCP连接。 TCP连接基本上只允许执行很少的操作,主要的操作是在连接的另一端向应用程序发送字节数组。

JDBC连接在下面使用 TCP连接,但这是一个更高级别的抽象,它允许应用程序执行更高级的操作,即执行SQL查询。

类似地,mybatis中的SQLSession使用JDBC连接,但它是更高级的概念。主要是,它允许执行sql查询并将结果映射到映射所指定的对象。