上传文件分为同步上传以及异步上传,同步上传表示文件同表单其他信息一同上传。 准备工作 导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency&…
聊数组和链表前,我们首先需要知道内存和如何存放数据的。内存就像大超市寄存处,寄存处有非常多的柜子。每个柜子都有标号(内存地址),柜子用来存放行李(存放数据)。取柜子里的行李时,需要知道柜子标号。 数组 有时候我们的行李有很多,一个柜子存放不下,那么就需要使用多个柜子来存。熟悉Java的都知道,Java里的数组能够存放多个变量值。Java数组类似于一些连续在一起的柜子。 但是数组有一个非常大的缺陷,…
二分法非常容易理解,它的核心思想是折半查找,直到查到目标元素(也可能找不到)。使用二分法有一个前提条件:元素必须是已经排好序的。 二分法和一般查找的算法时间复杂度对比: 一般查找 O(n) 二分法 O(logn) 二分查找比一般查找快的多,当元素个数n为1024时,一般查找需要执行1024次,而二分法只需要执行10次。当元素个数越多,后者就比前者更快的多。 实现二分法也比较容易,关键有两点: 折半…
sort命令是linux系统中常用的命令,它的功能是给标准输入中的行进行排序,默认是通过字典序进行排序的。今天,展示如果通过C语言编写一个类似功能的程序。 # sort <<eof > Hello Paul. > How are you going? > Very well. What about you? > I'm good. > eof Hello Paul. How …
以前,我刚开始学习JavaSe时,还不知道有ArrayList类。刚开始存多个元素时,都是使用数组。但感觉使用数组,不是那么方便。因为Java和php不一样(但和C一样),数组从定义起,其长度就被确定了,不能再被修改了。如果给数组长度定的太大,那么多余的空间浪费感觉挺可惜,但如果给小了,程序就会出问题。 等学习到了集合时,知道了有ArrayList,使用它时,我们不用费心思考虑到底给多个的容量,每…
C语言中的getchar以及putchar函数配合使用,可以完成许多非常有用的功能。比如今天要说的类似于linux命令cat、wc功能。 getchar函数用于从标准输入中读取一个字符,每读取一个字符后,指针向下移动。如果遇到了字符为EOF则表示标准输入流里字符已全部读取完毕。 putchar函数用于向标准输出中输入一个字符 cat 实现该功能比较简单,每次使用getchar读取一个字符后,就使用…
之前自己只在linux系统上安装过MySQL,对于Windows系统,我之前都是使用集成工具——Wampserver。安装这个软件后,Apache、Mysql以及PHP就全部安装成功了。这次,只想单独安装Mysql,所以去官网上下载了5.7.32的安装包。 自己在安装Mysql时,出现了许多问题,vc库、MysqlServer启动不起来等等。到最后,放弃了使用安装包安装的方式,转而使用压缩包的方式…
Object中有一个equals方法,用来测试两个对象是否相等。该方法判断两个对象相等的条件是,两个对象的引用是否相等。如果两个对象的引用相等的话,那么毋庸置疑这两个对象一定相等。 但是,我们经常需要对对象的字段进行比较,如果两个对象具有相同的字段值,就认为这两个对象相等。比如,有两个员工姓名、年龄以及薪水相等的话,就认为他们相等。 下面我们来重写父类的equals方法,不再比较引用,而是比较几个…