首页 > 数据库 >011.Mybatis中SQL传参

011.Mybatis中SQL传参

时间:2022-11-02 21:13:44浏览次数:44  
标签:传参 Exception goods param 011 session SQL Mybatis MyBatisUtils

1.在good.xml中编辑sql语句(单参数)

<!-- 单参数传递,使用parameterType指定参数的数据类型即可,SQL中#{value}提取参数-->
<select id="selectById" parameterType="Integer" resultType="com.imooc.mybatis.entity.Goods">
select *
from t_goods
where goods_id = #{value}
</select>

1.1在MybatisTest.java中增加测试用例

 /**
     * 传递单个SQL参数
     *
     * @throws Exception
     */
    @Test
    public void testSelectById() throws Exception
    {
        SqlSession session = null;
        try
        {
            session = MyBatisUtils.openSession();
            Goods goods = session.selectOne("goods.selectById", 1603);//1603代表传入的参数
            System.out.println(goods.getTitle());
        }
        catch (Exception e)
        {
            throw e;
        }
        finally
        {
            MyBatisUtils.closeSession(session);
        }
    }

2.在good.xml中编辑sql语句(多参数)

 <!-- 多参数传递时,使用parameterType指定Map接口,SQL中#{key}提取参数   #{limt}代表多少条数据-->
    <select id="selectByPriceRange" parameterType="java.util.Map" resultType="com.imooc.mybatis.entity.Goods">
        select * from t_goods
        where
            current_price between  #{min} and #{max}
        order by current_price
            limit 0,#{limt}
    </select>

2.1在MybatisTest.java中增加测试用例

  /**
     * 传递多个SQL参数
     *
     * @throws Exception
     */
    @Test
    public void testSelectByPriceRange() throws Exception
    {
        SqlSession session = null;
        try
        {
            session = MyBatisUtils.openSession();
            Map param = new HashMap();
            param.put("min", 100);
            param.put("max", 500);
            param.put("limt", 10);
            List<Goods> list = session.selectList("goods.selectByPriceRange", param);
            for (Goods g : list)
            {
                System.out.println(g.getTitle() + ":" + g.getCurrentPrice());

            }
        }
        catch (Exception e)
        {
            throw e;
        }
        finally
        {
            MyBatisUtils.closeSession(session);
        }
    }

 

标签:传参,Exception,goods,param,011,session,SQL,Mybatis,MyBatisUtils
From: https://www.cnblogs.com/LLL0617/p/16852447.html

相关文章

  • 兄弟组件传参_bus封装
    vue3Bus兄弟组件传参typeBusClass={emit:(name:string)=>voidon:(name:string,callBack:Function)=>void}typeParamsKey=string|number|sy......
  • shell传参内容超过10个如何获取
    编写脚本中如果我们命令行传参个数超过10个,无法获取第九个以后的值测试:(可以看到,从第10个传参开始,无法获取正确传参内容)[root@localhost]#cattest.sh#!/bin/bashtes......
  • mybatisPlus 逆向工程-通过表格创建实体类
    1、引入依赖<!--SpringBoot集成mybatis-plus框架--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus......
  • 学习vue3(四)(生命周期,父子组件传参,动态组件)
    组件的生命周期简单来说就是一个组件从创建到销毁的过程成为生命周期在我们使用Vue3组合式Api是没有 beforeCreate和 created这两个生命周期的,用setup函数代替,......
  • MyBatis-Plus
    前言数据库访问的发展最初始,在Java项目中直接使用jdbc来访问数据库,创建Connection、ResultSet等;后来,对jdbc的操作进行了封装,创建了很多的工具类,如DBUtil;再后......
  • MyBatis
    Mybatis官方文档:https://mybatis.org/前言狂神的环境JDK1.8MySQL5.7Maven3.6.1IDEA学会标准建表注意引擎、字符集、主键非空、其他字段不为空等设置。d......
  • Spring -Mybatis整合
    核心:spring整合mybatis  spring-dao.xml<?xmlversion="1.0"encoding="UTF8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="ht......
  • 010.Mybatis数据查询
    1.Mybatis数据查询步骤   2.在mappers映射器下创建文件(src/main/resources/mappers/goods.xml)<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEmapper......
  • 009.初始化工具类MyBatisUtil
    1.MyBatisUtils工具类,创建全局唯一的SqlSessionFactory对象(src/main/java/com/imooc/mybatis/utils/MyBatisUtils.java)packagecom.imooc.mybatis.utils;importorg.a......
  • springboot + mybatis 框架的搭建
    分享一下搭建框架的心得,有什么不对的地方欢饮大家指正。 下面是pom.xml里面的配置!!!<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/......