00:00
好,接下来呢,我们在这个这个plan呢先out enter一下,把这个yes的BA呢在我们map结构当中create出来,然后接下来呢,在这个位置我们在al enter一下,把这个statement呢在X文件当中呢再create出来,好,这面呢我们就进入了到到了Di map这个XL文件当中,然后在这里面呢,我们就写批量保存的circle考那这个circle我就不啰嗦了,因为之前咱们大家在前面的啊JBC阶段的时候,你像这种circle扣啊就经常会写,所以咱们呢就直接粘过来啊,如果你忘了批量保存circle扣怎么写的话,正好在这复习一下,复制一下,然后呢,这面呢我就。粘贴过来是吧,上面这个我就删掉了,好,那我们整个这个批量保存呢,是这样的,首先呢,我insert into date啊,往这个表里存数据,然后这个表里面的123456个字段啊,六个字段呢,因为我要批量保存,所以后面values values后面呢,是用原括号把这个呃。
01:04
所有的这个数据呢,啊的每一个值呢,都给它放在这个圆括号里,然后不同的这个值之间呢,肯定是用逗号隔开,这是一条记录,有两条记录是吧,这三条记录啊,那因为我们后面用就呃外面用了for each,所以这块呢,就直接做个循环就行了,然后记录和记录之间呢,用逗号隔开啊,然后接下来呢,我们来便利谁呢,就电利传进来的这个呃,List是吧,我们在这个位置。不是传进来一个类嘛,好,我们就遍利这个类,便利这个类,把每一个类似的值呢,都放在这个item里面,那么item里面的这个成员属性呢,其实就是我们要插入的这个数据记录的具体的列了啊,我们都把它一次的配到这个位置就可以了,所以这块呢,就是。我们的批量保存的这么一个搜Q语句的一个实现,然后接下来呢,我们这个实现完成之后啊,咱们把这个呃,应用程序重新启动一下,看看能不能能使这个完成这个批量保存的最后的工作,那么在执行这个批量保存任务之前呢,咱们先把数据库当中这表里的数据全删一下啊,Ctrl ctrl a,然后呢,在这个地方直接删除54条记录就可以了。
02:24
好这面的,呃,应用程序呢,也成功的启动了,成功启动了之后,注意呢,我现在呢,要执行这个批量保存了,咱们看一看这次呢能不能成功啊,然后呢,就选择文件。选择这个数据字典初始化数据啊,大家注意啊,不要点execute了啊,有可能成功,有可能失败,那你会发现它是不是失败了,失败了不要着急,我们来看一下它具体是什么原因失败的,在我们的控制台上,它会打印一个常见错误,这个常见错误呢,叫做文件上传错误哈,那具体错误发生在什么位置呢?这个地方49行,49行在哪。
03:04
49行是不是在这个地方就是抛的这个异常啊,啊抛异常里面肯定有异常对象啊,那我们再往下找看看异常错误跟踪站啊,就是他抛的这个异常对象,最后肯定会输出错误跟踪站,这个错误跟踪站里面它输出什么信息,我们在这里面找到一个关键信息,在这大家看这个是错误跟踪站当中的关键信息,叫做invalid fund statement。Statement没找到,没找到有这样的几个原因。第一个原因。X数据文件不存在,第二个原因,XML数据statement和这面的这面不匹配,呃,这两个原因都排除是吧?第三个原因,XL数据。文件的位置不不对不对,现在我们这个就是第三个原因,就是这个XML这个文件呀,默认情况下在我们的spring put当中啊,它实际上是应该被放在resources下面的,如果我们的XM文件被放在resources下面的,它就能够而且是放在resources下面的XML这个。
04:19
里面啊,它就能够自动的被啊,就是读取,但是呢,如果你放在别的目录下,你放在别的目录下,它呢,可以做一个设置,什么设置啊,就是这个设置,我们之前设置过显示的设置。明白吧,你可以设置一下它啊,你说我的这个S的文件默认情况下应该是这个目录啊,这个目录它就你就不用写啊,但是如果你是别的目录,因为我们前面有这么多包结构嘛啊,那你就必须写上,必须写上的话呢,它就能从这个目录当中找到SL文件了,但是前提是这个S文件也必须放在resource下面,也就是说你需要在resource下面建一个。com文件夹,Com文件夹下面建个艾文件夹,依次建起来之后,再把所有的S文件放到这个里面,然后文件夹的层次结构根据这个目录结构建就行了。所以呢,现在就有一种方案,就是把这个XL。
05:14
这呢,把它移到哪?把它移到resources下面啊,当然这是其中的方案之一,那么既然我们的代码生成器默认情况下,就把这个XL给我们生成到这个里面了,说明是有方法能够让苗就在这里面待着的,明白吧,所以X不一定非要放在resource下面,是可以放在我们的这个Java目录下面的,只不过啊,是可以放在我们的Java目录下面的,只不过需要我们做一个配置,什么配置呢?还有笔记。这块有一个叫做。Build的配置,这个Bill的配置呢,就是项目打包的时候,会将Java目录中的所有的X苗也进行打包,默认情况下,项目打包的时候,我们的resources目录下的X才会被打包,而Java目录下的所有的资源文件,比如说XL啊,比如说properties呀,比如说ya email这些文件在Java目录下都会被忽略掉啊,Java目录下它只认Java文件,那现在我们的XML文件呢,放在了Java目录下,那怎么才能让我们的啊maven它在进行项目打包的时候不忽略S毛呢?我们配这样一个节点叫做resources resource在Java这个路径下的所有的XML不被过滤掉啊,就不忽略,所以我们把这个复制一下。
06:38
好,那么我们把它放在我们的home里面啊。然后呢,接下来呢,我们在最后这个位置添加这个build节点就可以了,好,然后这面呢,我们。把应用程序啊,重新启动一下啊,把这面重新启动。
07:15
好,那接下来呢,我们已经启动了这个应用程序了,启动完成之后呢,我们来看一下这边我们的,呃,再来上传一下啊,再来上传一下,所以我们这边已经上次我们刷新一下吧。刷新一下重来啊刷新。然后呢,数据字典管理导入,然后这面呢,我们选择try it out,选择文件,然后我们选择数据字典初始化数据,然后这块呢,我们选择execute和execute,好,接下来呢,我们来看这边就就写数据字典批量导入成功,那么我们先来看一下数据库啊,刚才已经都删掉了,我们刷新一下是不是数据就导进来了,那么我们再来看一下我们的日志。日志这一面呢,看这面是不是就你看。
08:05
他这就不断的倒嘛。好,解析一条两条三条四条五条好解析五条之后,五条数据备存条数据库,然后呢,开始执行批量插入操作,这是五条记录,插入了五条记录之后呢,五条记录被存储条数据不成功,对吧?好,这是第一次,然后接接下来呢,再解析一条两条,三条,四条五条好,又五条数数据被存条数据库,又执行批量插入,然后五条解析成功,以此类推,一共存了50条记录之后呢,最后的那四条记录它不够五条了,所以呢,他应该就是在那个收尾的时候做的啊,然后最后的四条记录被存了数据库,好然后接下来呢,更新了四条,四条被存储所有数据解析完成,Excel导入成功,这样的话,我们整个的导入工作呢,就。做完了好,那这块就是完整的一个Excel导入的一个后台接口的一个实现流程。
我来说两句