boolean exists = false; for (Map<String, Object> exist : jxMjKhTxService.query(current)) { if (exist.get("jsbh").equals(current.get("jsbh")) && exist.get("sm").equals(current.get("sm")) && exist.get("code").equals(current.get("code")) ) { exists = true; break; } } if (!exists) { toBeInserted.add(current); } querry 方法怎么写 使用mybatis
时间: 2024-02-01 11:14:31 浏览: 149
假设你的查询语句是在 `mapper.xml` 中编写的,可以使用 MyBatis 提供的 `select` 标签进行查询。具体的查询语句可以根据你的需求进行编写,以下是一个示例:
```
<!-- 在 mapper.xml 中定义查询语句 -->
<select id="query" parameterType="java.util.Map" resultType="java.util.Map">
SELECT jsbh, sm, code FROM table_name WHERE some_condition = #{some_param}
</select>
```
在 Java 代码中,可以使用 MyBatis 提供的 `SqlSession` 对象执行查询语句,并将查询结果转换成 `Map` 类型的列表。以下是一个示例:
```
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
// 获取 Mapper 对象
YourMapper yourMapper = sqlSession.getMapper(YourMapper.class);
// 执行查询语句
List<Map<String, Object>> resultList = yourMapper.query(yourParamMap);
// 处理查询结果
boolean exists = false;
for (Map<String, Object> exist : resultList) {
if (exist.get("jsbh").equals(current.get("jsbh")) && exist.get("sm").equals(current.get("sm")) && exist.get("code").equals(current.get("code")) ) {
exists = true;
break;
}
}
if (!exists) {
toBeInserted.add(current);
}
} finally {
sqlSession.close();
}
```
其中,`YourMapper` 是你定义的 Mapper 接口,`yourParamMap` 是传递给查询语句的参数。在上述示例中,我们使用了 `List<Map<String, Object>>` 类型来存储查询结果,可以通过 `resultType` 属性指定返回类型。
阅读全文