ssm往mysql中导入excel出现的错误

来源:互联网 发布:linux监控tomcat进程 编辑:程序博客网 时间:2024/06/18 15:11

小编通过ssm框架来实现往数据库中导入excel表格遇到了好多问题,在此特意整理出来,以供大家参考,喜欢的可以点一下关注。

错误1:在SpringMVC中没有配置MultiparResolver


解决方法:在spring3mvc-servlet.xml中配置MultiparResolver

<!-- SpringMVC文件上传 -->    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">        <!--defaultEncoding:请求的编码格式必须和用户JSP的编码一致,以便正确读取表单中的内容。             uploadTempDir:文件上传过程中的临时目录,上传完成后,临时文件会自动删除             maxUploadSize:设置文件上传大小上限(单位为字节) -->        <property name="defaultEncoding" value="UTF-8" />        <property name="maxUploadSize" value="102400000" />        <!--uploadTempDir可以不做设置,有默认的路径,上传完毕会临时文件会自动被清理掉         <property name="uploadTempDir" value="upload/temp"></property> -->    </bean> 

错误2:缺少jar包


解决方法:查看自己的项目中是否有commons-fileupload-1.3.3.jar、commons-io-2.5.jar、jxl-2.6.jar(核心jar包就不说了)


错误3:未找到上传的文件


解决方法:这是因为文件没有传过去,在这里小编是通过提价form表单的形式传的文件,发送ajax不知如何向后台传文件

问题4:


解决方法:这是因为时间格式的问题,小编的xls中时间那一列有空值,小编刚开始没有判断。下面是时间格式的处理

// 时间的格式转换SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");// 时间的转换if (map.get(16) != "") {Date birth = sdf.parse(map.get(16));vo.setBirth(new SimpleDateFormat("yyyy-MM-dd").format(birth));} else {        //如果不给于空值,数据库会默认当前时间vo.setBirth("");}


错误5:发现sql语句报错



解决方法:发现在提取excel表格中空值,在这里小编捣鼓了半个小时才搞明白,还是代码不够严谨。一般报这个错是在传值和sql语句中导致的错误。

想要了解如何导入ecxel,请看ssm往mysql中导入excel表格




原创粉丝点击