dao层的操作太麻烦
jdbc 连接数据库,释放空间什么的太烦了,为了简化,引入了MyBatis
Mabatis可以简化JDBC操作,实现数据的持久化
Mabatis是一个ORM产品 ORM:Object Relational Mapping
eg: person对象 person表 一一映射的关系
ORM:是一个概念,MyBatis是ORM的一个实现
还有其他的实现,例如:Hibernate
ORM可以使得开发人员 像操作数据一样操作数据库的表
流程:先在数据库中建立表,之后新建对应的实体类
再构建二者的映射关系,映射关系通过mapper.xml实现
mapper在实体类里面创建
开发mybatis程序的步骤:
1. 配置mybatis
conf.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="com.mysql.cj.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/data" />
<property name="username" value="root" />
<property name="password" value="123456" />
</dataSource>
</environment>
</environments>
<mappers>
<!-- 加載映射信息 -->
<mapper resource="org/entity/userMapper.xml" />
</mappers>
</configuration>
表 - 类
映射文件xxMapper.xml:写增删改查标签
<?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">
<mapper namespace="org.entity.userMapper">
<select id="queryUserByUsename" resultType="org.entity.user" parameterType="String">
select * from user where usename = #{usename}
</select>
</mapper>
测试类:session.selsectOne("需要查询的namespace.id","sql的参数值")