记录:412
场景:使用MyBatis批量查询(select)、批量插入(insert)、批量更新(update)、批量删除(delete)操作MySQL数据库。
版本:JDK 1.8,Spring Boot 2.6.3,mybatis-3.5.9,MySQL-5.7.33。
1.批量查询
提供两种方式。
方式一,返回值: List<CityPO>。
方式二,返回值: List<Map<String, Object>>。
1.1在CityBatchMapper中接口代码
@Repository
public interface CityBatchMapper {
// 1.1批量查询
List<CityPO> queryCity1_1(List<Long> paraList);
// 2.1批量查询
}
1.2 在CityBatchMapper.xml中SQL代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.hub.example.mapper.CityBatchMapper">
<!--1.1批量查询-->
<select id="queryCity1_1" parameterType="java.util.ArrayList" resultType="com.hub.example.domain.CityPO">
select CITY_ID AS "cityId",
CITY_NAME AS "cityName",
LAND_AREA AS "landArea",
POPULATION AS "population",
GROSS AS "gross",
CITY_DESCRIBE AS "cityDescribe",
DATA_YEAR AS "dataYear",
UPDATE_TIME AS "updateTime"
from t_city
WHERE CITY_ID IN
<foreach collection="list" item="cityId" open="(" separator="," close=")">
#{cityId}
</foreach>
</select>
<!--2.1批量查询-->
<select id="queryCity2_1" resultType="java.util.Map">
select CITY_ID AS "cityId",
CITY_NAME AS "cityName",
LAND_AREA AS "landArea",
POPULATION AS "population",
GROSS AS "gross",
CITY_DESCRIBE AS "cityDescribe",
DATA_YEAR AS "dataYear",
UPDATE_TIME AS "updateTime"
from t_city
WHERE CITY_ID IN
<foreach collection="list" item="cityId" open="(" separator="," close=")">

该文介绍了如何在SpringBoot应用中利用MyBatis实现对MySQL数据库的批量查询、插入、更新和删除操作。通过定义CityBatchMapper接口和对应的XML文件,展示了不同方法处理批量数据的方式,包括List<CityPO>和List<Map<String,Object>>类型的参数。此外,文中还提供了测试代码和实体类CityPO的相关信息。
最低0.47元/天 解锁文章
512

被折叠的 条评论
为什么被折叠?



