使用mybatis+springboot将listMapString Object insert到数据库写一个代码示例
假设我们有一个名为User的实体类,包含属性id、name和age,我们需要将一个List<Map<String, Object>>对象插入到数据库中,可以按照以下步骤进行操作:
- 在mapper接口中定义插入方法:
public interface UserMapper {
void batchInsert(List<User> userList);
}
- 在mapper.xml文件中实现插入方法:
<insert id="batchInsert" parameterType="java.util.List">
insert into user(id, name, age)
values
<foreach collection="list" item="item" separator=",">
(#{item.id}, #{item.name}, #{item.age})
</foreach>
</insert>
- 在Service层中处理List<Map<String, Object>>数据,转化为List
对象并调用mapper方法进行插入:
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public void batchInsert(List<Map<String, Object>> userList) {
List<User> users = new ArrayList<>();
for (Map<String, Object> userMap : userList) {
User user = new User();
user.setId((Integer) userMap.get("id"));
user.setName((String) userMap.get("name"));
user.setAge((Integer) userMap.get("age"));
users.add(user);
}
userMapper.batchInsert(users);
}
}
需要注意的是,插入的List<Map<String, Object>>对象中的key必须与实体类User的属性名相同,否则无法转化为User对象
原文地址: http://www.cveoy.top/t/topic/fonx 著作权归作者所有。请勿转载和采集!