关于mybatis动态sql,MultipartFile,jsp页面404

第1、关于mybatis动态sql逗号处理的方法
UPDATE
    b_scene_info
<trim prefix="set" suffixOverrides=",">
    <if test="sceneName!=null">
        scene_name=#{sceneName,jdbcType=VARCHAR},
    </if>
    <if test="sceneState!=null">
        scene_state=#{sceneState,jdbcType=VARCHAR},
    </if>
    <if test="sceneType!=null">
        scene_type=#{sceneType,jdbcType=VARCHAR},
    </if>
    <if test="stateFlag!=null">
        state_flag=#{stateFlag,jdbcType=VARCHAR},
    </if>
    <if test="seedInterfaceTable!=null">
        seed_interface_table=#{seedInterfaceTable,jdbcType=VARCHAR},
    </if>
    <if test="seedDateCycle!=null">
        seed_date_cycle=#{seedDateCycle,jdbcType=VARCHAR},
    </if>
    <if test="candInterfaceTable!=null">
        cand_interface_table=#{candInterfaceTable,jdbcType=VARCHAR},
    </if>
    <if test="candDateCycle!=null">
        cand_date_cycle=#{candDateCycle,jdbcType=VARCHAR},
    </if>
    <if test="createDate!=null">
        create_date=#{createDate,jdbcType=VARCHAR},
    </if>
    <if test="updateDate!=null">
        update_date=#{updateDate,jdbcType=VARCHAR},
    </if>
</trim>
WHERE
     s_Id=#{sId,jdbcType=BIGINT}
遇到的坑:
    一、<trim prefix="set" suffixOverrides=",">代替了SET关键词
    二、最后一个值后面也要加上逗号(这个纯属本身失误)
第2、关于springMVC一种404错误的缘由
    JSP 页面form表单经过name传过来的值在后台用实体接收只能用String 与 int,其余的数据类型如Date使用代码转换(有时候想不起来)
第3、关于form传送file类型的值 后台使用 MultipartFile接收的方法
    前台代码:
    <form  action="<%=request.getContextPath() %>/taskInfo/taskSave.do" id="taskSave" enctype="multipart/form-data" method="post">
        <input type="file" class="file" name="file" id="seedFile">
        <input type="file" class="file" name="file" id="candFile">
    </form>
    后台代码:
    public String taskSave(HttpServletRequest request,TaskInfo taskInfo,@RequestParam MultipartFile[] file) {
        for (int i = 0; i < file.length; i++) {
            String pathType = i==0 ? "seedFilePath" : "candFilePath" ;
            String fileType = i==0 ? "hc_seed_" : "hc_cand_";
            //上传地址配置
            String path = contPath + File.separator + "datafiles" + File.separator + "file" + taskInfo.gettId() + propertyUtil.getProperty(pathType).replace("/", File.separator);
            String fileName= fileType +taskInfo.gettId()+".txt";
            targetFile = new File(path, fileName);
            if (!targetFile.exists()) {
                targetFile.mkdirs();
            }
            //文件上传
            file[i].transferTo(targetFile);
            if(i==0){
                taskInfo.setSeedPath(path + fileName);
                taskInfo.setSeedNum(propertyUtil.readFileLine(targetFile));
            }else{
                taskInfo.setCandPath(path + fileName);
                taskInfo.setCandNum(propertyUtil.readFileLine(targetFile));
            }
        }
    }
遇到的坑:
    一、enctype="multipart/form-data" ,form这个属性必须有spring

相关文章
相关标签/搜索