mybatis入参为对象

1.对象传参方式一

Dao接口中方法

bash 复制代码
    /**
     * 根据对象中保存的属性查询emp对象
     * @param emp
     * @return
     */
    List<Emp> findByEmp(Emp emp);

mapper文件

bash 复制代码
   <select id="findByEmp" resultType="com.example.domain.Emp" parameterType="com.example.domain.Emp">
        select * from emp where name = #{name} or salary=#{salary} or job_id = #{job_id}
    </select>

结论:一个java对象作为方法的参数,使用对象的属性作为参数值使用。简单的语法:#{属性名},mybatis调用此属性的getXxx()方法获取属性值

2.对象传参方式二

编写接口,指定@Param注解参数(建议不要指定)

bash 复制代码
public interface LoginMapper {

    /**
     * 使用账号和密码登录 获取用户信息
     *
     * @param login 登录参数 account password
     * @return
     */
    Person selectPersonByAccountAndPassword01(@Param("login") Login login);
}

编写映射配置文件:

bash 复制代码
<?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">
<mapper namespace="com.lihaozhe.mapper.LoginMapper">
    <!--使用账号和密码登录 获取用户信息-->
    <select id="selectPersonByAccountAndPassword01" resultType="person">
        SELECT p.id, nickname
        FROM login l
                 INNER JOIN person p
        WHERE pid = p.id
          AND account = #{login.account}
          AND auth_text = #{login.authText}
    </select>
</mapper>

mybatis传参

相关推荐
李昊哲小课5 小时前
Spring Boot 4 旅游主题实战教程 阶段三:数据持久化
spring boot·后端·mybatis·旅游
datalover6 小时前
MYBATIS=PLUS批量插入数据提效
mybatis
南城以南溫暖如初14721 小时前
从零搭建24小时自助健身系统:技术选型与核心模块实战
java·spring boot·redis·mysql·vue·mybatis
小江的记录本1 天前
【ORM 框架】MyBatis-Plus 核心特性、条件构造器、分页插件、乐观锁插件(附《思维导图》、《问题排查与实践清单》和《面试高频考点汇总》)
java·windows·spring boot·python·spring·面试·mybatis
小江的记录本1 天前
【ORM框架】MyBatis核心原理、ORM思想、MyBatis vs JPA
java·数据库·后端·spring·spring cloud·oracle·mybatis
qq_485015212 天前
MyBatis-Plus 3.x FieldStrategy 作用
java·数据库·mybatis
布谷歌2 天前
如何自定义 MyBatis枚举处理器(EnumTypeHandler):分享从 “同包同名 shadow 覆盖” 到 “官方扩展点” 的重构经历
重构·mybatis
南城以南溫暖如初1472 天前
树洞交友系统架构设计与匿名聊天实战指南
java·spring boot·mysql·系统架构·vue·mybatis·交友
凯酱3 天前
MyBatis 中 OGNL 的使用:从入门到实战
java·tomcat·mybatis
蓝缘4 天前
解决main No MyBatis mapper was found in 的警告
mybatis