MyBatis框架是Java开发过程中必不可少的框架之一。MyBatis原名IBatis,至今已经快有10年的历史,但仍旧被广泛应用,其重要性不可言喻。
Mybatis是一个优秀的ORM框架.应用在持久层. 它对jdbc的 操作数据库过程 进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection、等jdbc繁杂的过程代码.一般使用mapper代理的方式开发.直接在xml里面写sql.
在这里就和大家分享下我个人对于MyBatis框架的快速搭建,其实主要就是几个xml文件的配置。
1.
先在bin目录中导入Mybaits及其相关的jar包
这些jar包可以在我分享的链接里下载
链接: https://pan.baidu.com/s/1vJJnyMTmfTy8id-aAf1dEg 提取码: 9vbn
2.
在src下建立一个全局配置文件(xml文件),在里面引入 DTD 或 schema 文件(导入的目的是可以得到提示),如果导入后没有提示,在Window–> preference --> XML --> XMl catalog --> add 设置
location是DTD文件所在的位置
链接: https://pan.baidu.com/s/1l2gFaY1tK7b_ctqX69NeuQ 提取码: r6b9 (这是DTD文件,只要加入其中的mybatis-3-config.dtd文件即可)
之后编写xml文件
这里与JDBC相关的值以我自己的为例,各位根据自己数据库的配置来写。
<?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>
<!-- default 引用 environment 的 id,当前所使用的环境 -->
<environments default="default">
<!-- 声明可以使用的环境 -->
<environment id="default"> <!-- 使用原生 JDBC 事务 -->
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/ssm"/>
<property name="username" value="root"/>
<property name="password" value="smallming"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/zzl/mapper/FlowerMapper.xml"/>
</mappers>
</configuration>
3
新建一个以 mapper 结尾的包,在包下新建:实体类名+Mapper.xml,在其中编写需要执行的 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实现类的全路径:包名和类名 -->
<mapper namespace=" com.zzl.Flowermapper">
<!--id 方法名
parameterType定义参数类型
resultType 返回值类型
如果返回值是List,在resultType中写List的类型,
因为Mybatis封装Jdbc是逐行读取数据-->
<select id="selectAll" resultType="Flower">
select * from flower
</select>
</mapper>
4
创建一个测试类,用于测试是否成功从数据库中提取出数据。
如果成功从数据库中提取出了相应的数据,就意味着成功搭建了Mybatis框架。
public class Test {
public static void main(String[] args) throws IOException {
InputStream is = Resources.getResourceAsStream("Mybatis.xml");
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
SqlSession session = factory.openSession();
List<Flower> list = session.selectList("com.zzl.Flowermapper.selectAll");
for (Flower flower : list) {
System.out.println(flower.toString());
}
session.close();
}
}