00:00
刚才的内容中呢,咱们完成了课程分类管理的列表功能,通过数形结构进行了显示,那下面呢,咱来完成程分类管理的另外两个功能,一个是导出,一个是导入。在实现两个功能之前,我们先来讲一个技术点,因为两个功能要用到这个技术,这个技术的名字叫做easy Excel,那下面呢,咱就来学习这个技术。那技术我们首先看一个技术的一个介绍。咱们看一下我的课件中,我这里写到啊easy Excel是阿里巴巴开源的一个Excel处理的一个框架,就他专门操作Excel表格,然后它以使用简单和节约内存著称,这是它的一个基本特点,而这个技术可以操作Excel,在操作Excel的技术中,除了这个之外,还有很多其他技术,其中还有一个比较著名的叫PY。
01:01
那我下面呢,把两个技术给各位同学做个比较,然后咱们项目中专注于用easy Excel进行操作,那下面我来写一下这两个技术。一个技术叫做咱们现在用这个easy Excel,另外一个技术叫做咱们来做一个比较,看两个技术分别有什么特点。那我这里边给各位画个图,咱们来比较着看一下这个技术。这位置啊,我来画个图。咱们来看一下啊。首先呢,第一个啊,Easy Excel跟PY它们的加载或者说解析方式是完全不一样的,那我写一下啊,咱先说PY什么特点,Poy呢,会一次性把我们的所有数据都加载到内存中,然后进行这么一个解析,这是它一个特点,就是你数据一次性都拿到内存中,然后进行解析,但是easy Excel它不是这么做的。
02:09
它是怎么做的呢?它是一行一行的进行加载解析,比如说我现在啊,比如说我这个数据有十行,那我们怎么做,我把第一行拿回来进行解析,然后再拿第二行解析,一行一行加载进行解析,它们加载方式和解析是有区别的,而这么做有什么优缺点呢?给各位说一下啊,比如说我们现在啊,用这个就是。一次性都拿过来,我举一个比较极端的例子,比如说我现在我的文件有512兆大小,而我现在的内存只有128兆,那我数据直接拿回来,内存是不是就放不下呀?它会造成内存的溢出,但是我一行一行拿回来,就不会造成内存的溢出,所以这是它的一个优缺点,另外还有缺点。
03:02
比如现在啊,我们用PY一次性把数据都拿过来,那我这里边呢,做增加、修改、删除这些是不是都方便?比如现在我在某个阶段前面加一个数据,想删除某节点后面数据都很方便,而这个操作在1EXCEL中并不方便,因为你是一行拿过来,你没法判断谁在前谁在后。但是他做查询方便,所以这个各自有各自的优缺点。当然各位注意啊,我们在实际中呢,其实一般做的应该都是这个查询操作,很少作增删改操作,如果做增删改操作,那用这个PY应该说更加的方便。那我写一下啊,它实现这个就是添加。修改。删除更加方便,而easy Excel实现查询更加方便。所以他们各自有各自的优缺点。
04:03
咱们项目中用easy Excel来实现我们这个课程分类的导入和导出功能。这个各位他知道啊,所以咱们对于他做了一个介绍,里边一些细节,比如咱会项目代码中具体说到。然后这个说完之后呢,我们再来看看内容啊,因为咱们不管是用easy Excel还是都能操作Excel表格,而在Excel表格中有一些相关的术语给各位做个介绍,因为一会儿咱们代码中会有一定的体现,那我来做个说明,说一下什么叫术语,就是一些专业说法。比如说各位看啊。我现在呢,建一个Excel文档,这个Excel给大家强调,咱们整个这个Excel它有一个术语。小这里啊,就是整个的Excel。它称为什么呢?它叫做一个workbook,就是工作部整个Excel表格称作一个workbook,这是第一个术语,然后咱再来看,写下第二个啊,就在我们的每个。
05:14
Work book里边。它有什么,有很多的这个东西叫,那咱看一下啊,比如现在我把这Excel的表格打开,各位看里边啊,咱等先打开。然后大家看这里边是不是有SHEET1,咱可以再创建第二个。SHEET2,就是这个工作表,SHIFTET12报告名字可以改,这是我们的第二部分里边有很多的she,然后咱再看第三部分写一下啊,就是现在在我们这里边的每个sheet里边。它有什么?是不是有它的行,有它的列,包括有这个单元格,是不是有这些内容,咱们看一下啊,比如在二里边我们有行有列,有单元格,所以以上就是Excel中几个基本的术语,各位把这个记住啊,整个叫workbook,每个book中有很多sheet,每个sheet里边有行有列,有单元格,这个我们就说到这里。
06:22
所以以上就是关于easy Excel的一个基本介绍。那这个介绍之后,下面呢,咱来具体用代码来讲解这个技术,首先我们先做一个基本测试,最后在项目功能中再用到。而在讲解中,咱们主要讲解两个内容,一个是写操作,一个是读操作,写操作就是像Excel中写入数据,读操作从Excel中读取数据,那咱们来做一下啊。首先我先做一个写操作,然后咱们再做读操作,我写到这里第一个。Easy Excel操作。
07:04
那写操作怎么做,给各位先说过程,然后咱用代码实现,首先第一步,大家可以想一下第一步干什么。你用的是不是一个新的技术,所以第一步呢,先引入easy Excel的依赖第一步,然后第二步呢,咱们创建一个实体类,就跟你的Excel表格对应啊,就是和Excel。表格对应,具体说是跟表格中那个列对应,就是比如说第一列都是ID,第二列是名称,第三列什么年龄,根据它对应起来,这是我们的第二部分,然后在这个这一列中设置你Excel中那个。表头部分。什么叫表头?咱一般来讲第一行是表头,第二行有你的具体内容,这是第二部分,然后咱们第三步。就来调用easy Excel中的方法实现一个写的操作,所以这就是写操作一个基本的步骤,咱们按照它来做个实现,那我下面啊,按照步骤咱们来写一下这个具体代码,咱们看怎么做啊,首先第一步引入依赖,就这个依赖,这依赖就是easy Excel,那我现在把这依赖就复制到咱们的项目中来,那我做复制啊,在项目的po点插入文件中之前应该没有这个依赖,所以咱给它复制过来。
08:31
第一步引入依赖,这步咱就完成,等他先加载出来,第一次你复制肯定会联网下载,我们需要稍微多等一会儿,我这里边已经下载过了,所以马上下载出来。然后这个完成之后,第二步呢,咱们来建个实体类啊,这里边因为我们是测试嘛,所以后把这个呢,还是写到T中,咱后面再具功能中再用到,那第二部分呢,我在里边首先我建个包,这个包我就叫做。
09:03
Excel。然后在Excel中来个实体,咱们起个名字,比如说我叫这个,呃,实体。创建啊,然后创建之后里边加上它的属性,这属性我就写两个,第一个属性我来一个private,咱。第一个。然后第二个private string,这个我就叫name,加上两个属性,然后加上之后在类上边加上一个注解,就是这个get注解生成它的get set方法跟咱们Excel中列对应,比如我就写上ID名称,当然你可以有更多值,然后写完之后,下面我们来设置它的表头信息,那怎么设置在属性上面呢?咱们加上一个注解,这注解名字叫。L里边有个属性value。
10:03
Y6中有它的值,这个值就是你的表头,比如第一个我们是用户的。编号。然后第二个是用户名称,上面写法一样。Excel。歪了。等于这个用户的。名称。所以现在咱们把第二步完成了,创建实体类,跟Excel对应,生成get德赛的方法,包括设置表头值,第一个表头用户编号,第二个用户名称,这个我们就写到这里。然后这个之后我们到第三步呢,咱来通过调用easy Excel中的方法,最终完成写操作,那我现在我再重新写上一个类,我就叫test right写操作,然后在里边呢,加上这么一个问方法,最终我们来进行实现。
11:02
那怎么做,我写一下啊。首先第一步我们先设置一下你的文件的名称和路径,就是你要写到哪个路径中哪个名称的文件里面去,那我来做个创建,我加上一个string。如在把前去,然后这个名字,比如起个名字,我就叫这个。At硅谷。点叉LSX这后缀名是Excel的后缀名,就是最终咱把这文件呢,就写到我当前电脑这个D盘里边,把文件就是咱做个创建,这是我们的第一步,然后这个写完之后,下面咱就可以调用方法进行实现,那我们来调一下啊。咱做法就是一在Excel中呢,直接。
12:03
有个方法,这方法叫right,就这个方法,然后在right里边呢,我们目前用这个参数,你看里边有很多参数,你可以传个流,可以传个文件的名称路径,可以直接传文件,都可以咱传这个。然后第一个入咱们的,第二个入实体类的class,咱们是user。然后这个写完之后给大家强调啊,就是我们。这一步执行之后呢,就相当于咱们建了一个workbook整个的Excel表格,然后咱们继续在里边点上它的下一个方法叫sheet,就是你建个sheet sheet里边呢,我可以起个名字,比如说就叫这个写操作。然后she之后在里边是不是有行列单元格,或者说有它的具体的数据,那咱再点上一个方法叫do right,你看啊do right里边咱们传入一个list集合,然后里边加上你的数据,那我现在我就建个list集合啊,List集合的过程呢,我就从课件中复制了啊,我这里边写了一个简单的方法。
13:15
咱看这方法很简单啊,它就是循环便利,然后咱们循环零到十这么多次循环,然后向里面加数据,最终放到集合中去,这个实体类改成咱们当前这个user,把这个改一下啊,改成user。这里边都是优,把依赖引入。然后咱们向里边来设置它的这个值,我来设置一下啊,就是。ID个然还有date啊里,比如写这一个Lucy,为了区分再加个I,就是LUCY1 lu2 lucy3等等,最后把数据加到list集合中去,然后把集合做个返回,这方法就是一个静态方法,然后在里边我们做个调用。
14:07
这套方法最终返回就是你的例子集合。所以现在通过这段代码,我们就完成了easy Excel的写操作,这个咱就做到了,做到之后最后把代码执行,咱们看一下最终的结果怎么样,就看一下我们现在循环这么多次的数据能不能写到一个Excel表格中去。咱们等他执行,最后试一下啊。我们看里面啊,最后提示我们说完成写操作,然后到我的D盘中咱们找一下啊,比如现在我刷新。大家看啊,是不是有这个at这个文件,然后咱把它点开,大家看一下啊,你看里边啊,用户编号,用户名称,就是咱们刚才设的表头的这个值,然后在它第二行是具体数据有零到九,包括有LUCY0到LUCY9这个值,所以大家看现在咱就完成了easy Excel的操作,所以各位通过这个步骤能把这代码最终测出来。
15:15
这个咱们就点到这里写操作。
我来说两句