/**
* 文件上传
* """
* 我对文件上传代码实现的理解
* 1. 首先我要把文件要指定一个上传的地方 比如:c:/file这个文件夹下
*
* 2. 再次我要得到上传文件的文件名称 比如 file1 那么此时这个文件的完整的路径 是 c:/file/file1
*
* 3. 那么此时c:/file/file1 就指向了file1 这个文件 那么此时 c:/file/file1 就代表一个文件
*
* 4. 那么我们就要操作这个文件 让它的内容或者说数据是前台上传的内容或者说数据(上传)
*
* 5. 那么在java 里 就提供了一个方法 让它由一个普通文件变成了一个代码可以操作的文件对象 File file = new File( c:/file/file1)
*
* 6. 此时 我们想在本地创建一个 c:/file/file1 这样的文件 那么首先应该创建 一个 c:/file 这样的文件夹file.getParent.mkdir() 这样文件夹就存在了
*
*
* 7. 我们知道文件在代码里都是通过流的方式来传输 (数据通过流传输)那么想让file 这个对象能够写数据 就必须让它创建一个流对象
* 我想让file 这个对象可以别人让往里写数据那么就必须创建它的的输出流对象(开放 让人随便写) java里这样实现 fileOutputStream = new FileOutputStream(file);
*
* 8. 此时本地这个 file 对象就做好了准备等待前台传的 formFile(这里假设前台传递文件名称叫formFile) 来往里写数据
*
* 9. 与后台相同 前台传的这个formFile我们也得让它变成流这样它才能实现写操作 它往一个文件里写数据 所以必须让它变成输入流 java里这样实现 inputStream = formFile.getInputStream();
*
* 10. 此时我们拿到了 fileOutputStream (等待输入流往里写数据) inputStream(输入流能够写数据)
*
* 11 哈哈 此时 来吧 两个流结合就把数据写到了本地 完成了文件的上传 apache给了我们一个方法 IOUtils.copy(inputStream,fileOutputStream)当然 也可以用别的方法实现
*
* 上述理解完全是个人的理解如果有不正确的地方欢迎大神指出