[英]Passing Multiple Parameters in SELECT Statement in MAPPER XML
我正在使用MyBatis和Spring框架。 我有一个数据库表存储,它具有一些字段。 我需要使用表中的2个字段(如名称和ID)从表中获取记录。
select * from STORE where Name="Mels" & Id=123
我正在为表使用MAPPER接口。 MAPPER XML包含查询。
对于单个参数查询,我可以使用以下内容。
<select id="findAllSTOREByName" parameterType="java.lang.String" resultMap="com.StoreObject">
select * from "STORE" where "NAME" = #{name}
</select>
现在,如何通过两个不同的DataType传递多个参数(如前所述)?
您必须使用可以存储数据(名称和ID)的类的对象,该对象可以是哈希图或任何其他数据类。
在调用select语句之前,请将参数放入哈希图或任何其他数据类中,然后在select中使用您的值的名称(该值存储在哈希图的键字段中或使用的类的属性的名称中)
小片段:
HashMap<String, Object> values = new HashMap<String, Object>();
values.put("id", 123);
values.put("name", "Mels");
...使用hashmap作为参数调用findAllStoreByName
将您的选择更改为以下内容:
<select id="findAllSTOREByName" parameterClass="hashmap" resultMap="com.StoreObject">
select * from "STORE" where NAME = #name# and id = #id#
</select>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.