zoukankan      html  css  js  c++  java
  • Spring Boot教程(三十八)使用MyBatis注解配置详解(1)

    之前在Spring Boot中整合MyBatis时,采用了注解的配置方式,相信很多人还是比较喜欢这种优雅的方式的,也收到不少读者朋友的反馈和问题,主要集中于针对各种场景下注解如何使用,下面就对几种常见的情况举例说明用法。

    传参方式

    下面通过几种不同传参方式来实现前文中实现的插入操作。

    使用@Param

    在之前的整合示例中我们已经使用了这种最简单的传参方式,如下:

    @Insert("INSERT INTO USER(NAME, AGE) VALUES(#{name}, #{age})")
    int insert(@Param("name") String name, @Param("age") Integer age);
    

      

    这种方式很好理解,@Param中定义的name对应了SQL中的#{name}age对应了SQL中的#{age}

    使用Map

    如下代码,通过Map对象来作为传递参数的容器:

    @Insert("INSERT INTO USER(NAME, AGE) VALUES(#{name,jdbcType=VARCHAR}, #{age,jdbcType=INTEGER})")
    int insertByMap(Map<String, Object> map);
    

      

    对于Insert语句中需要的参数,我们只需要在map中填入同名的内容即可,具体如下面代码所示:

    Map<String, Object> map = new HashMap<>();
    map.put("name", "CCC");
    map.put("age", 40);
    userMapper.insertByMap(map);
    

      

    使用对象

    除了Map对象,我们也可直接使用普通的Java对象来作为查询条件的传参,比如我们可以直接使用User对象:

    @Insert("INSERT INTO USER(NAME, AGE) VALUES(#{name}, #{age})")
    int insertByUser(User user);
    

      

    这样语句中的#{name}#{age}就分别对应了User对象中的nameage属性。

    源码来源

  • 相关阅读:
    4.Spring系列之Bean的配置1
    3.Spring系列之IOC&DI
    2.Spring系列之HelloWorld
    1.spring系列之简要概述
    SVN 安装与使用
    6.用CXF编写基于Spring的WebService
    5.webService拦截器
    4.CXF所支持的数据类型
    APP消息推送及疑问解答
    VMware安装CentOS
  • 原文地址:https://www.cnblogs.com/allalongx/p/8532506.html
Copyright © 2011-2022 走看看