一、增
<insert id="addInOrder" parameterType="XXX.model.InOrder"> INSERT INTO inorder <trim prefix="(" suffix=")" suffixOverrides="," > <if test="inId != null and inId !=''" > inId, </if> <if test="gender != null and gender !=''" > gender, </if> <if test="modifiedDate != null and modifiedDate !=''" > modifiedDate, </if> </trim> <trim prefix="values (" suffix=")" suffixOverrides="," > <if test="inId != null and inId !=''" > #{inId,jdbcType=VARCHAR}, </if> <if test="gender != null and gender !=''" > #{gender,jdbcType=INTEGER}, </if> <if test="modifiedDate != null and modifiedDate !=''" > #{modifiedDate,jdbcType=VARCHAR}, </if> </trim> </insert>
二、删
<delete id="deleteInOrderById" parameterType="java.lang.String" > delete from inorder where inId = #{inId,jdbcType=VARCHAR} </delete>
三、改
Controller层传值代码:
@PostMapping("/OverInOrder")
@ResponseBody
@Transactional
public Message OverInOrder(@RequestParam(value = "InIds[]")String[] InIds, HttpSession session){
User user= (User)session.getAttribute("loginUser");
inOrderService.OverInOrder(InIds,"结单",user.getUserName());
return new Message("", "success");
}
DAO层代码:
public int OverInOrder(@Param("inIds") String[] inIds, @Param("status") String status, @Param("modifiedBy") String modifiedBy);
Mapper 的XML文件:
<update id="OverInOrder" parameterType="java.lang.String"> update inorder <set > <if test="status != null and status !=''" > status=#{status,jdbcType=VARCHAR}, </if> <if test="modifiedBy != null and modifiedBy !=''" > modifiedBy=#{modifiedBy,jdbcType=VARCHAR}, </if> modifiedDate= SYSDATE(), outTime= SYSDATE() </set> WHERE inId IN <foreach collection="inIds" item="inId" index="index" open="(" close=")" separator=","> #{inId} </foreach> </update>
四、查
<select id="getInOrderAll" resultType="XXX.model.InOrder" parameterType="XXX.model.InOrder"> select * from inorder <trim prefix="where 1=1" suffix=" " suffixOverrides="," > <if test="inId != null and inId !=''" > and inId=#{inId,jdbcType=VARCHAR} </if> <if test="gender != null and gender !=''" > and gender=#{gender,jdbcType=INTEGER} </if> <if test="inTime != null and inTime !=''" > and inTime>=#{inTime,jdbcType=VARCHAR} </if> </trim> ORDER BY createrDate DESC; </select>
关于SQL查询的技巧还有很多,像<where>和<selectKey>等。。。
待续。。。