优秀的编程知识分享平台

网站首页 > 技术文章 正文

MyBatis之常用基本增删改查操作篇

nanyue 2024-10-26 11:18:03 技术文章 5 ℃

MyBatis之常用基本增删改查操作学习

关于MyBatis的入门学习,请阅读小编的MyBatis之入门篇等其他篇章,在此不做详细的介绍了。

mybatis

  • MyBatis实例

  • 应用MyBatis来实现简单最常用基本的增删改查操作。

  • 对象User类

User.java

  • SqlMapConfig.xml配置

SqlMapConfig.xml

  • 根据用户id查询一个用户信息

UserMapper.xml

注意:namespace:命名空间,对sql进行分类管理,id和namespace一起标识statement。

parameterType:定义sql中的映射类型,#{id}表示使用PreparedStatement设置占位符号并将输入变量id传到sql。

resultType:定义结果映射类型。

  • 查询用户findUserByIdTest方法

findUserByIdTest.java

  • 根据用户名模糊查询用户信息

UserMapper.xml

#{}表示一个占位符,通过#{}可以实现PreparedStatement向占位符中设置值,自动进行java类型和JDBC类型转换,#{}可以有效防止sql注入。#{}可以接收简单类型或pojo属性值。如果parameterType传输单个简单类型值,#{}括号中可以使value或其它名称。

${}表示拼接sql串,通过${}可以将parameterType传入的内容拼接在sql中且不行jdbc类型转换,${}可以简单类型数值或pojo属性值,如果parameterType传输单个简单类型值,${}括号中只能是value。

  • 通过用户名模糊查询

findUserByNameTest.java

selectOne查询一条记录,如果使用selectOne查询多条记录则抛出异常。

Exception

selectList可以查询一条或多条记录。

  • 添加用户

UserMapper.xml

添加selectKey实现将主键返回

keyProperty:返回的主键存储在pojo中的哪个属性。

order:selectKey的执行顺序,是相对与insert语句来说,由于mysql的自增原理执行完insert语句之后才将主键生成,所以这里selectKey的执行顺序是after。

resultType:返回的主键是什么类型。

LAST_INSERT_ID():是mysql的函数,返回auto_increment自增列新纪录id值。

  • MySQL的UUID实现

uuid实现

Oracle的GUID实现



GUID实现

  • 用户添加insertUserTest类

insertUserTest.java

  • 删除用户

UserMapper.xml删除用户

  • 删除用户deleteUserTest类

通过id删除用户deleteUserTest.java

  • 通过id修改用户信息

UserMapper.xml修改sql

  • 修改用户updateUserTest类

updateUserTest.java

以上就是MyBatis的基本的常用的增删改查,不足之处希望大家多多指教,互相学习,共同进步!

喜欢的朋友欢迎关注啦!

Tags:

最近发表
标签列表