sqlSession原生crud

1、框架介绍

1.1软件架构(三层)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、mybatis

2.1、ORM介绍
在这里插入图片描述
什么是mybatis
官网:https://mybatis.org/mybatis-3/zh/index.html
在这里插入图片描述
mybatis的优势
在这里插入图片描述
MyBatis框架的缺点:
在这里插入图片描述
mybatis入门案例
开发步骤:
在这里插入图片描述
创建表

CREATE TABLE user (
    id BIGINT(20) NOT NULL COMMENT '主键ID',
    name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
    age INT(11) NULL DEFAULT NULL COMMENT '年龄',
    email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',    
    PRIMARY KEY (id)
     );

添加数据

INSERT INTO user (id, name, age, email)
VALUES (1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'), 
(5, 'Billie', 24, 'test5@baomidou.com');

2、新建maven项目,添加依赖

<dependencies>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.48</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
    </dependency>
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.5.6</version>
    </dependency>
</dependencies>

3、新建实体类

public class User {
    private Integer id;
    private Integer age;
    private String name;
    private String email;
}

4、新建映射文件
在这里插入图片描述
在这里插入图片描述
显示时还是 .
在这里插入图片描述
新建UserMapper.xml 类似于以前的xxxxDao

<?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   StudentMapper   DogMapper-->
<mapper namespace="UserMapper">
    <!--  select标签是专门用来执行查询的sql  <select></select>称为:执行单元
      id:是这个执行单元的唯一标识符   作用是区别多个执行单元
      resultType:映射结果类型    就是说把sql查询到的记录晨映射成哪个类型(实体类)
      完全限定名:包名+类名      标签体就写我们要执行sql      -->
    <select id="listAll" resultType="com.ujiuye.pojo.User" >
        SELECT * FROM `user`
    </select>
</mapper>

5、新建全局配置文件
在这里插入图片描述

<?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>
    <!-- environment环境   default默认环境=development  -->
    <environments default="development2">
        <environment id="development">
            <!--    事务管理        -->
            <transactionManager type="JDBC"/>
            <!--     数据源       -->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis1221"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
    <!--  映射   告诉mybatis我们的sql在哪里 -->
    <mappers>
        <mapper resource="com/ujiuye/mapper/UseraMapper.xml"/>
    </mappers>
</configuration>

6、测试类

/**
 * 后面我们整合了spring后SqlSessionFactory与SqlSession都交给spring创建与管理
 */
public class UserTest {
    @Test
    public void test1() throws IOException {
        //配置的路径
        String path="mybatis-config.xml";
        //创建输入流对象
        InputStream inputStream = Resources.getResourceAsStream(path);
        //构建工厂
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream);
        //获取SqlSession   与数据之间的一个会话
        SqlSession sqlSession = factory.openSession();
        //执行sql   statement:执行单元的位置    命名空间+执行单元的id
        List<User> list = sqlSession.selectList("UserMapper.listAll");
        //输出  jdk1.8新特性
        list.forEach(System.out::println);
        //关闭
        sqlSession.close();
    }
 }

运行结果
在这里插入图片描述

完成增删除改查

添加
修改映射文件UserMapper,添加执行单元
在这里插入图片描述
添加测试方法
在这里插入图片描述
修改
在这里插入图片描述
修改测试方法
在这里插入图片描述
删除
修改映射文件UserMapper,添加执行单元
在这里插入图片描述
删除测试方法
在这里插入图片描述
查单个
修改映射文件UserMapper,添加执行单元
在这里插入图片描述
查询测试方法
在这里插入图片描述
传多个参
修改映射文件UserMapper,添加执行单元
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值