持久层框架,用于简化JDBC开发
负责将数据保存到数据库的那一层代码
JavaEE三层架构:表现层、业务层、持久层
免除了几乎所有JDBC代码及设置参数和获取结果集的工作。
1、导入查询user表中所有的数据
create DATABASE mybatis;
use mybatis;
drop table if exists tb_user;
create table tb_user(
id int PRIMARY KEY auto_increment,
username varchar(20),
password varchar(20),
gender char(1),
addr varchar(30)
);
INSERT into tb_user VALUES(1,'张三','123','男','北京');
INSERT into tb_user VALUES(2,'李四','234','女','天津');
INSERT into tb_user VALUES(3,'王五','11','男','西安');
SELECT * from mybatis
2、新建maven项目
3、导入mybatis依赖
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.5</version>
</dependency>
</dependencies>
导入数据库依赖
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>
导入测试依赖junit
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13</version>
<scope>test</scope>
</dependency>
导入logback-core依赖(写日志)
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.20</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
导入logback.xml文件
4、配置mybastic-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>//修改
<property name="url" value="${jdbc.url}"/>//修改
<property name="username" value="${jdbc.username}"/>//修改
<property name="password" value="${jdbc.password}"/>//修改
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="EmployeeMapper.xml"/>
</mappers>
</configuration>
配置sql映射表
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--namespace:名称空间。写接口给的全类名,相当于告诉MyBatis这个配置文件是实现哪个接口的。-->
<mapper namespace="test">
<!--resultType=""指定查询数据封装结果的时候使用自定义封装规则-->
<select id="getCatById" resultType="com.avb.pojo.User">
select * from tb_user;
</select>
<!--<!–type指定为哪个javaBean自定义封装规则,id是唯一标识–>
<resultMap id="mycat" type="smq.javabean.Cat">
<!–id指定主键列的对应规则,column指定哪一列是主键列,property指定cat的哪个属性封装id这个列数据–>
<id column="id" property="id"/>
<!–普通列–>
<result column="cName" property="name"/>
<result column="cgender" property="gender"/>
<result column="cAge" property="age"/>
</resultMap>-->
</mapper>
主文件
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!--<properties resource="dbconfig.properties"/>--> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql:///mybatis"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <mapper resource="UserMapper.xml"/> </mappers> </configuration>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
2022-11-01 php-XHTML与HTML区别