这里主要研究研究向Mybatis中传参的几种方式。总结一下,顺便记录在此。
1.实体类入参
dao方法
public void addAdmin(Admin admin);
mapper中
<insert id="addAdmin" parameterType="com.znkj.entity.Admin"> insert into t_admin (a_acount,a_password,a_power,a_name) values(#{a_acount},#{a_password},#{a_power},#{a_name}) </insert>
2.通过下标入参,需要注意的是第一个参数下标为0
dao方法
public List<T_user> queryT_userByPage(String page,String pageSize);
mapper中
<select id="queryT_userByPage" resultMap="ResultMap"> select u_id,u_account,u_password,u_power,u_phone,u_name from t_user limit #{0},#{1} </select>
3.通过dao方法中@param注解入参
dao方法
public int addUserrolemanage(@Param("userid") int userid,@Param("roleid") int roleid);
mapper中
<insert id="addUserrolemanage"> INSERT INTO `userrolemanage` (`user_id`, `role_id`) VALUES (#{userid},#{roleid}) </insert>
4.通过list集合入参
dao方法
public int insertUserNoticeStatus(@Param("list")List<UserNoticeStatus> list);mapper中
<select id="insertUserNoticeStatus"> insert into usernoticestatus (notice_id,user_id,status) values <foreach collection="list" item="uns"> (#{uns.user_id},#{uns.c_id},#{uns.status}) </foreach> </select>
5.通过map集合入参
首先将参数封装进map集合中,再传入dao方法中
dao方法
public int addAdmin(Map<String, Object> map) ;
mapper中
基本上就这几种入参方式,欢迎指正。
<insert id="addAdmin" parameterType="Map"> insert into t_admin (a_acount,a_password,a_power,a_name) values(#{a_acount},#{a_password},#{a_power},#{a_name}) </insert>
基本上就这几种入参方式,欢迎指正。