关于mybatis的学习(基于动力节点的视频)

本文介绍了三层框架结构,包括界面层的servlet、Spring MVC和数据访问层的MyBatis。详细讲解了如何在pom.xml中配置MyBatis和MySQL,以及如何实现基本的增删改查操作,包括Student实体类、DAO接口和Mapper映射文件。此外,还涵盖了MyBatis对象类的使用和工具封装。

1.框架基本知识

  三层对应的处理框架
       界面层---servlet---springmvc(框架)
       业务逻辑层---service类--spring(框架)
       数据访问层---dao类--mybatis(框架)

  三层对应的包
       界面层: controller包 (servlet)
       业务逻辑层: service 包(XXXService类)
       数据访问层: dao包(XXXDao类)
 三层中类的交互
       用户使用界面层--> 业务逻辑层--->数据访问层(持久层)-->数据库(mysql)

2.mybatis基本

1.基本骨架

2.在pom.xml文件中加入maven坐标

<dependencies>
//坐标
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
//mybatis依赖
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.5.1</version>
    </dependency>
//mysql依赖
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.9</version>
    </dependency>
  </dependencies>

 3.在pom.xml中加入maven插件

 <build>
    <resources>
      <resource>
        <directory>src/main/java</directory><!--所在的目录-->
        <includes><!--包括目录下的.properties,.xml 文件都会扫描到-->
          <include>**/*.properties</include>
          <include>**/*.xml</include>
        </includes>
        <filtering>false</filtering>
      </resource>
    </resources>
  </build>

 4.在domain包中加student实体类

属性加get,set方法

 5.在dao包中加studentdao接口

6.编写 Dao 接口 Mapper 映射文件 StudentDao.xml

1. 在 dao 包中创建文件 StudentDao.xml

2. 要 StudentDao.xml 文件名称和接口 StudentDao 一样,区分大小写的一样。

7.创建mybatis主配置文件

8.创建mybatis测试类

3.基本的增删改查操作

1.在Studentdao接口增加方法

List<Student> selectMulitposition(String name,Integer age);

2.StudentDao.xml 加入 sql 语句

namespace绑定dao接口的。

id与接口中的方法名相同,resultType是接口中方法返回对象所属类的全限定类名

在select标签中写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">
<mapper namespace="org.example.dao.StudentDao">

 <select id="selectMulitposition" resultType="org.example.domain.Student">
     select  id,name ,email,age from student where name=#{arg0}  or age=#{arg1}
                                                 
    </select>
</mapper>

3.在测试类中写测试方法

@Test
public void testInsert() throws IOException {
 //1.mybatis 主配置文件 
 String config = "mybatis-config.xml";
 //2.读取配置文件 
 InputStream in = Resources.getResourceAsStream(config);
 //3.创建 SqlSessionFactory 对象 
 SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
 //4.获取 SqlSession
 SqlSession session = factory.openSession();
 //5.创建保存数据的对象 
 Student student = new Student();
 student.setId(1005);
 student.setName("张丽");
 student.setEmail("zhangli@163.com");
 student.setAge(20);
 //6.执行插入 insert
 int rows = session.insert(
"com.bjpowernode.dao.StudentDao.insertStudent",student);
 //7.提交事务 
 session.commit();
 System.out.println("增加记录的行数:"+rows);
 //8.关闭 SqlSession
 session.close();
 
}

4.mybatis对象类

1.Resources 类

2.SqlSessionFactoryBuilder 类

3.SqlSessionFactory 接口

4.SqlSession 接口

5.MyBatisUtil 工具类(将上述类封装到工具类中,避免代码重复臃肿)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值