MyBatis是一种使用Java编程语言的持久层框架,它提供了一种将SQL语句与Java方法参数、返回值进行映射的方式,使得开发者可以使用简单的配置来执行SQL查询、更新和删除等操作,而无需编写过多的JDBC代码。
MyBatis的概念:
1 框架是一款半成品软件,我们可以基于这个半成品软件继续开发,来完成我们个性化的需求!
2 ORM(Object Relational Mapping 对象关系映射):指的是持久化数据和实体对象的映射模式。
3:mybatis 是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。
4 mybatis通过xml或注解的方式将要执行的各种 statement(声明)配置起来,并通过java对象和statement中sql的动态参数进行映射生成最终执行的sql语句。
5 最后mybatis框架执行sql并将结果映射为java对象并返回。采用ORM思想解决了实体和数据库映射的问题,对jdbc 进行了封装,屏蔽了jdbc api 底层访问细节,使我们不用与jdbc api 打交道,就可以完成对数据库的持久化操作。
MyBatis的主要优点包括:
1. 简化了持久层代码的编写,提高了开发效率;
2. 避免了SQL注入等安全问题;
3. 提高了代码的可维护性和可读性;
4. 支持动态SQL语句的生成;
5. 可以与Spring等常见的框架进行集成。
在使用MyBatis时,主要需要掌握以下几个方面:
1. MyBatis配置文件的编写及配置项的含义;
2. 映射文件的编写,包括SQL语句的书写、参数的传递和结果集的映射;
3. MyBatis的基本操作,包括查询、更新、删除等;
4. 动态SQL语句的生成,包括if, choose, foreach等标签的使用;
5. MyBatis与Spring的集成方式。
MyBatis的使用方法:
①添加MyBatis的maven包
②创建user数据表
③编写User实体类
④编写核心文件MyBatis-Config.xml
⑤编写映射文件UserMapper.xml 和 UserMapper接口
⑥编写测试类
会话(session)和事务的区别
会话,在应用程序中连接数据库要执行连接,然后会关闭,这算一次会话。
一个session可以启动多个事务,session指一次连接。一个session中可以完成多个事务。
一个事务 是指一个操作单元,要么成功,要么失败,没有中间状态。
事务呢,就好比在打开会话后要执行程序中的某一个或多个对数据库进行的操作。