Mybatis学习(配置映射文件和代码编写)

配置映射文件 Mybatis学习(配置映射文件和代码编写)
文章图片
1.png SqlMapConfig.xml 配置mybatis的运行环境,数据源、事务等。
Mybatis学习(配置映射文件和代码编写)
文章图片
2.png 根据用户id(主键)查询用户信息

  1. 创建po类

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    3.png
  2. 映射文件
    映射文件命名:
    User.xml(原始ibatis命名),mapper代理开发映射文件名称叫XXXMapper.xml,比如:UserMapper.xml、ItemsMapper.xml
    在映射文件中配置sql语句。

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    4.png
  3. 在SqlMapConfig.xml加载映射文件
    在sqlMapConfig.xml中加载User.xml:

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    5.png
  4. 程序编写

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    6.png
根据用户名称模糊查询用户信息
  1. 映射文件
    使用User.xml,添加根据用户名称模糊查询用户信息的sql语句。

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    7.png
  2. 程序代码

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    8.png
添加用户
  1. 【Mybatis学习(配置映射文件和代码编写)】映射文件
    在 User.xml中配置添加用户的Statement

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    9.png
  2. 程序代码

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    10.png
  3. 自增主键返回
    mysql自增主键,执行insert提交之前自动生成一个自增主键。
    通过mysql函数获取到刚插入记录的自增主键:
    LAST_INSERT_ID()
    是insert之后调用此函数。
    修改insertUser定义:

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    1.png
  4. 非自增主键返回(使用uuid())
    使用mysql的uuid()函数生成主键,需要修改表中id字段类型为string,长度设置成35位。
    执行思路:
    先通过uuid()查询到主键,将主键输入 到sql语句中。
    执行uuid()语句顺序相对于insert语句之前执行
Mybatis学习(配置映射文件和代码编写)
文章图片
2.png
通过oracle的序列生成主键:
SELECT 序列名.nextval()insert into user(id,username,birthday,sex,address) value(#{id},#{username},#{birthday},#{sex},#{address})

删除用户
  1. 映射文件

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    3.png
  2. 代码

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    4.png
更新用户
  1. 映射文件

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    5.png
  2. 代码

    Mybatis学习(配置映射文件和代码编写)
    文章图片
    6.png
附加 mybatis和hibernate本质区别和应用场景 hibernate:是一个标准ORM框架(对象关系映射)。入门门槛较高的,不需要程序写sql,sql语句自动生成了。
对sql语句进行优化、修改比较困难的。
应用场景:
适用与需求变化不多的中小型项目,比如:后台管理系统,erp、orm、oa。。
mybatis:专注是sql本身,需要程序员自己编写sql语句,sql修改、优化比较方便。mybatis是一个不完全 的ORM框架,虽然程序员自己写sql,mybatis 也可以实现映射(输入映射、输出映射)。
应用场景:
适用与需求变化较多的项目,比如:互联网项目。

    推荐阅读