Java笔记--Mybatis传入参数(一)--2021-05-10

13 篇文章 0 订阅

一、传入参数

从java代码中把数据传入到mapper文件的sql语句中,上个文章我们讲过,mybatis可以动态生成dao接口的实现类。那么我们在调用这个实现类的方法时,一定会有方法要传参使用,mybatis对于传参也有操作,下面将举例:

1.1 一个简单类型的参数

简单类型: mybatis把java的基本数据类型和String都叫简单类型。在mapper文件获取简单类型的一个参数的值,使用 #{任意字符}
如:

	//接口:
	Student selectStudent(int i);

	//通过SqlSession对象的getMapper()方法,获得接口的实现类
	StudentDao studentDao= sqlSession.getMapper(StudentDao.class);
	// 注:StudentDao.class为接口的类对象

	//调用studentDao的方法,执行数据库的操作
    Student selectStudent = studentDao.selectStudent(1001);

	//这时将会使用mapper文件的sql语句了,sql语句是
	<select id="selectStudent" parameterType="int" resultType="com.apps.bean.Student">
        select * from stu where id=#{i};
        //#{i}中的内容i可以是任意字符,因为这个方法只有一个参数,同时参数类型也是简单类型
    </select>
    
	<!-- parameterType:写在mapper文件中的 一个属性。 表示dao接口中方法的参数的数据类型。
         parameterType它的值是java的数据类型全限定名称或者是mybatis定义的别名
         例如:全限定名称:java.lang.Integer
              别名:int
         注意:parameterType不是强制的,mybatis通过反射机制能够发现接口参数的类型。
    -->

1.2 多个简单类型的参数

使用@Param命名参数
如:

	//接口 
	List<Student> selectMulitParam(@Param("myname") String name, @Param("myage") Integer age)
	// 格式 (@Param("参数名") String 形参名),中的参数名可以是任意字符,只要这个参数名在mapper文件使用时一样就行。
	
	//中间的步骤和第一个案例一样,获取SqlSession对象调用访求方法,获取接口实现类,调用指定方法
	List<Student> students = mapper.selectMulitParam("张德帅", 18);
	
	//mapper文件:
     <select>
        select * from student where name=#{myname} or age=#{myage}
        //这里的#{myname}的内容,要和接口中方法参数中@Param("myname")中的内容对应
	 </select>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张德帅-001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值