MyBatis入门操作

MyBatis入门操作

一.Mybatis简介

1.原始jdbc操作

  • 查询数据

原始jdbc操作

  • 插入数据

原始jdbc操作(插入数据)

2.原始jdbc操作的分析

  • 原始jdbc开发存在的问题如下:

    1. 数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能

    2. sql语句在代码中硬编码,造成代码不易维护,实际应用sql变化的可能较大,sql变动需要改变java代码。

    3. 查询操作时,需要手动将结果集中的数据手动封装到实体中。插入操作时,需要手动将实体的数据设置到sql语句的占位符位置

  • 应对上述问题给出的解决方案:

    1. 使用数据库连接池初始化连接资源

    2. 将sql语句抽取到xml配置文件中

    3. 使用反射、内省等底层技术,自动将实体与表进行属性与字段的自动映射

3.什么是Mybatis

  • mybatis是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。

  • mybatis通过xml或注解的方式将要执行的各种statement配置起来,并通过java对象和statement中sql的动态参数进行映射生成最终执行的sql语句。

  • 最后mybatis框架执行sql并将结果映射为java对象并返回。采用ORM思想解决了实体和数据库映射的问题,对jdbc进行了封装,屏蔽了jdbcapi底层访问细节,使我们不用与jdbcapi打交道,就可以完成对数据库的持久化操作。

#{}底层使用PreparedStatment,其中的值和类型有关常用于代表列值。${}底层使用Statement,不区分数据类型,常用于表示表名或列名(前提保证不存在注入风险)


MyBatis入门操作
https://zhstzzy.github.io/2022/06/28/MyBatis入门操作/
作者
zhstzzy
发布于
2022年6月28日
许可协议