MyBatis是一个持久化、轻量级的半自动化ORM框架,封装了所有JDBC的原始操作。查询参数以及获取结果集等。
(1)数据库连接、释放频繁造成系统资源浪费,影响系统性能
(2)SQL语句在代码中固定,不够灵活不易改动
(3)进行查询操作时,需要手动将结果集封装到实体类中。进行插入操作时,需要手动将
参数设置到占符位置
(1)使用数据库连接池初始化连接资源
(2)将SQL语句抽取到xml配置文件中
(3)使用反射、内省等底层技术,将实体类的属性与表中的字段进行自动映射
1、添加MyBatis坐标以及数据库连接驱动
-
-
org.mybatis -
mybatis -
3.4.6 -
-
-
-
com.mysql -
mysql-connector-j -
8.0.31 -
-
-
-
junit -
junit -
4.13.2 -
test -
2、编写MyBatis核心配置文件sqlMapConfig.xml
- "1.0" encoding="UTF-8"?>
- configuration
- PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-config.dtd">
- <configuration>
- <environments default="dev">
- <environment id="dev">
- <transactionManager type="JDBC">transactionManager>
- <dataSource type="POOLED">
- <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
- <property name="url" value="jdbc:mysql://localhost:3306/eshop"/>
- <property name="username" value="root"/>
- <property name="password" value="root"/>
- dataSource>
- environment>
- environments>
-
- <mappers>
- <mapper resource="mapper/UserMapper.xml">mapper>
- mappers>
-
- configuration>
3、编写MyBatis映射文件UserMapper.xml
- "1.0" encoding="UTF-8"?>
- mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="userMapper">
- <select id="findAll" resultType="com.wn.mybatis.pojo.User">
- select * from t_user
- select>
- mapper>
4、创建实体类与数据库表