第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