繁体   English   中英

在MAPPER XML的SELECT语句中传递多个参数

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM