5月6日--建国(mybatis批量查询,mybatis批量插入)

偶像就在自己身边,把自己变得充实。这个年纪你要不在将就,多思考多充实,一身很短,制定自己生涯规划,一个小白。

今日dinner

  1. 批量查询代码【返回的是一个一个对象所以用list<>来接受】
第一步mapper.java:List<UserDo>是你要返回的数据,List<Interger>ids是你要传入的数据。
List<UserDo> getUserById(@Param("ids") List<Integer> ids);
第二步mapper.xml:重要 in 插入 <foreach collection=“ids” item="id" separator="," open="AND id IN(" close=")">
#{id}
</foreach>
<select id="getUserById" resultMap="AllUserListMap">
SELECT
id,
email,
user_name,
phone_number,
status,
create_time
FROM
sys_user
WHERE 1=1
<foreach collection=“ids” item="id" separator="," open="AND id IN(" close=")">
#{id}
</foreach>
</select>
第三步service.java:
List<UserDo> getUserById(List<Integer> ids);
第四步serviceimpl.java:
@Override
public List<UserDo> getUserById(List<Interger> ids){
  return userMapper.getUserByIds(ids>;
}
第五步controller.java:
@ApiOperation("根据id集合查询用户列表信息")
@PostMapping("get_user_by_ids")
public List<UserDo> getUserById(@RequestBody List<Interger> ids){
return userService.getUserById(ids);
}
  1. 批量插入数据
第一步mapper.java:插入成功返回Integer
Integer insertList(@Param("userlist") List<UserDo> list);
第二步mapper.xml:注意插入的数据是实体数据。
<insert id="insertList" parameterType="com.yida.model.OrderFaceSheetMonitorPeopleDO" useGeneratedKeys="true">
insert into basic_order_face_sheet_monitor_people
(
user_name,
email,
phone,
status,
create_time
)
values
<foreach collection="userlist" item="item" separator=",">
(
#{item.userName},
#{item.email},
#{item.phone},
#{item.status},
#{item.createTime}
)
</foreach>
</insert>
第三步service.java:
Integer insertList(List<UserDo> list);
第四步serviceimpl.java
第五步controller.java
  1. 查询 多个实体类数据:返回List, selectAll 传入参数List ids;

  2. 插入多个实体类数据:返回Integer,insertDo 传入参数List list;

  3. mybatis 查询多个id的数据:open="AND id IN("close=")"
    <foreach collection="ids" item="item" separator="," open="AND id IN("close=")">

  1. PostMan里面写入的参数字段都是对应实体类中的字段:userName,createTime

  2. List userDoList,List ids 在PostMan里面都是用[ 进行传参 ]

BUG总结

  1. No primary or single public constructor found for interface:没有为接口找到主构造函数或单个公共构造函数
    后端接口参数没有加@RequestBody参数

  2. There is no getter for property named
    批量插入的时候应该插入到 实体类中

posted @ 2022-05-07 00:14  思考与感悟  阅读(73)  评论(0)    收藏  举报