溫馨提示×

MyBatis使用HashMap動態(tài)組裝查詢條件

小樊
86
2024-08-02 01:19:11
欄目: 編程語言

MyBatis允許使用HashMap來動態(tài)組裝查詢條件。下面是一個示例:

首先,在Mapper XML文件中定義一個select語句,如下所示:

<select id="selectByCondition" parameterType="map" resultType="com.example.User">
    SELECT * FROM user
    WHERE 1=1
    <if test="username != null">
        AND username = #{username}
    </if>
    <if test="email != null">
        AND email = #{email}
    </if>
</select>

然后在Java代碼中調用該查詢,傳入一個HashMap作為參數:

Map<String, Object> paramMap = new HashMap<>();
paramMap.put("username", "john");
paramMap.put("email", "john@example.com");

List<User> userList = sqlSession.selectList("com.example.UserMapper.selectByCondition", paramMap);

在這個例子中,我們使用HashMap作為參數傳遞給selectByCondition查詢,根據HashMap中存儲的鍵值對動態(tài)組裝查詢條件。如果HashMap中的某個鍵對應的值不為null,就會加入相應的查詢條件中。

這種方式可以靈活地根據傳入的參數來動態(tài)構建查詢條件,使得查詢更加靈活和易于維護。

0