IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MyBatis 实现增删改操作 -> 正文阅读

[大数据]MyBatis 实现增删改操作

在前面快速入门的案例中,已经实现查找所有用户操作了,接下实现增删改。增删改的实现也非常的简单。步骤和前面快速入门案例中的实现是一样的。

添加新用户

我们先来编写配置文件,在原来的映射配置中添加 insert 标签,

<insert id="insetUsesr" parameterType="com.itbbfx.entity.UserEntity">
    insert into t_user (username,birthday,sex,address) values (#{userName},#{birthday},#{sex},#{address})
</insert>

测试代码的实现

@Test
public void myBatisInsertTest() throws IOException, ParseException {
    //1. 加载核心配置文件
    InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
    // 2. 获取 SqlSessionFactory 工厂对象
    SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);

    //3. 获取SQLSession 会话对象
    SqlSession sqlSession = sqlSessionFactory.openSession();
    UserEntity userEntity =new UserEntity();
 //   userEntity.setId(2);
    userEntity.setUserName("小冰");
    userEntity.setBirthday(new Date());
    userEntity.setSex("男");
    userEntity.setAddress("xxxxx");

    int insertUser = sqlSession.insert("insetUsesr",userEntity);
    if(insertUser>0){
        System.out.println("添加成功");
    }else {
        System.out.println("添加失败");
    }
    sqlSession.commit();
    sqlSession.close();
}

插入操作注意问题

? 插入语句使用 insert 标签

? 在映射文件中使用 parameterType 属性指定要插入的数据类型

?Sql 语句中使用#{实体属性名}方式引用实体中的属性值

?插入操作使用的API是 sqlSession.insert(“命名空间.id”,实体对象);

?插入操作涉及数据库数据变化,所以要使用 sqlSession 对象显示的提交事务,即 sqlSession.commit()

修改操作

还是先来编写我们的配置文件

<update id="updateUser" parameterType="com.itbbfx.entity.UserEntity">
    update t_user set username=#{userName},birthday=#{birthday} where id =#{id}
</update>

测试代码的实现


@Test
public void myBatisUpdateTest() throws IOException, ParseException {
    //1. 加载核心配置文件
    InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
    // 2. 获取 SqlSessionFactory 工厂对象
    SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);

    //3. 获取SQLSession 会话对象
    SqlSession sqlSession = sqlSessionFactory.openSession();
    UserEntity userEntity=new UserEntity();
    userEntity.setId(4);
    userEntity.setUserName("小冰0101");
    userEntity.setBirthday(new Date());
    int deleteUser=sqlSession.delete("updateUser",userEntity);
    if(deleteUser>0){
        System.out.println("更新成功");
    }else {
        System.out.println("更新失败");
    }

    sqlSession.commit();

    sqlSession.close();
}

修改操作注意问题

? 修改语句使用 update 标签

? 修改操作使用的 API 是 sqlSession.update(“命名空间.id”,实体对象);

删除操作

映射配置文件的编写

<delete id="deleteUser" parameterType="int">
    delete from t_user where id =#{id}
</delete>

测试代码的实现

@Test
public void myBatisDeletcTest() throws IOException, ParseException {
    //1. 加载核心配置文件
    InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
    // 2. 获取 SqlSessionFactory 工厂对象
    SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);

    //3. 获取SQLSession 会话对象
    SqlSession sqlSession = sqlSessionFactory.openSession();
    UserEntity userEntity=new UserEntity();
    //userEntity.setId(4);
    int deleteUser=sqlSession.delete("deleteUser",4);
    if(deleteUser>0){
        System.out.println("删除成功");
    }else {
        System.out.println("删除失败");
    }

    sqlSession.commit();

    sqlSession.close();
}

删除操作注意问题

? 删除语句使用delete标签

?Sql语句中使用#{任意字符串}方式引用传递的单个参数

?删除操作使用的API是sqlSession.delete(“命名空间.id”,Object);

这里我们只是简单的实现这几个操作,后续的课程文章中会继续跟大家详细探讨这些标签一些属性。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-03-30 18:32:03  更:2022-03-30 18:33:22 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 6:08:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码