mybatis入门篇
什么是MyBatis?
MyBatis 是一个优秀的基于 Java 的持久层框架,它内部封装了 JDBC,使开发者只需关注
SQL 语句本身,而不用再花费精力去处理诸如注册驱动、创建 Connection、配置 Statement
等繁杂过程。
以下是mybatis的对应链接接口关系层的示意图。

mybatis的工作原理的示意图

其中mapper.xml的配置是对jdbc中api增删改查的操作映射,mybatis的配置是对jdbc基本操作。
mybatis的动态代理的第一个程序演示操作(重要),我们工作中使用的也是mapper的动态代理
我们按照生活中的学生的实例来操作;
首先我们先定义一个学生的类,来对应我们应该操作的表

并定义出他们的get和set的方法以及他们初始化的函数(其中csid是关联班级表使用的)
在我们定义表之前还需要去定义mybatis的配置:

这个property的name和值对应的是数据库连接池(外部的jar包),使用的类型是jdbc,数据库链接地址,数据名称,数据库账户名和数据库的密码

这里对应的是mapper的映射配置,是单独的映射配置。
构建好配置之后我们开始构建数据库的表

构建dao的操作
dao的操作构建就是定义接口,为之后动态代理做映射的准备

之后我们打开mappe.xml来配置

重要!!
这里的dao和mapper的命名空间是必须一致。
dao的方法和对应的id也是要必须一致的。
之后我们来定义测试类,测试类定义
定义测试类的工厂必须有三个步骤
1.我们必须得到一个工厂类是sqlSessionFactory这个工厂类里包含
2.在构建sqlSessionFactor中需要在io输入流中InputStream里Resources.getResourceAsStream的方法Z(把我们设置的mybatis的地址放入)

3.之后有在SqlSessionFactoryBuilder().build(inputStream);里构建出sqlSessionFactory。
4.之后在sqlSessionFactory.openSession();的方法里取出SqlSession的实例对象的。

5.有了SqlSession的实例对象我们可以使用getMapper来进行操作。其中getMapper里的参数对象应该是dao.class对象。
有了getMapper里动态代理的实例对象我们就可以对他做增删改查的操作。
我们来构建一个查询操作,返回Mapper.xml来看一下

resultType就是最后查询之后封装类型
所以我们对应的 mytest是

之后就可以对数据库进行简单入门的crud的操作。
查询成功

下一篇我们将对动态sql和最重要的关联操作进行复习和演示。
浙公网安备 33010602011771号