当前课程知识点:软件开发实训--动态网站开发 >  12 UEditor富文本编辑器 >  12.4文件上传问题处理 >  12.4.1文件上传问题处理

返回《软件开发实训--动态网站开发》慕课在线视频课程列表

12.4.1文件上传问题处理在线视频

下一节:13.1.1网站配置相关类实现

返回《软件开发实训--动态网站开发》慕课在线视频列表

12.4.1文件上传问题处理课程教案、知识点、字幕

同学你好

欢迎回到软件开发实训课堂

上节课我们把图片对画框已经使用起来了

但是在上传图片时遇到了问题

这节课我们来看一下这些问题该怎么处理

在打开对话框的时候

我们发现他有一个错误

说后台后端配置项没有正常加载

这是因为他在加载配置文件时

没有找到配置文件

我们需要纠正一下它的配置文件加载路径

打开我们的项目

在ueditor这个ui的项目里边

找到GSP文件夹

下面有一个config.json

我们把它移动到我们的目录下去

我们就直接复制一份

把它移过去

移到哪里

放在我们的

百度加载的包里边

我们看哪一个文件加载了它

来看一下

配置manager应该是manager

加载了他

我们来看是不是manager

这在加载这个文件看一下

确实是manager在加载

那么这个文件加载它在什么地方

我们把这个注释掉

然后把我们的配置文件给它粘到这里来

这样我们配置文件就过来了

注释掉这个文件名后

他会出一个错误在这里

说获得配置文件的路径

这块有错

然后我们去找到谁来调用这个方法

我们在本地里边先找一个

把它注释掉就知道了

找到加载的位置

readfile读取文件这块来调用这个方法来返回

我们的文件路径为readfile这个函数

它要的是一个字符串路径

我们把它改掉

在这里

它需要一个流

我们直接给它一个流

input

stream

config

就等于当前这个类configmangae

一定要写对

class

getresource

注意看它可以作为流来进行处理

那么路径我们直接给出这个文件名就可以了

现在把我们的文件名打开

复制它

这样就得到了一个输入流

把输入流交给流就可以了

这样就替换了他的方法调用

然后这里边实际上已经不需要了

这里边pass可以

取消了

不用读文件路径

取消后这里面也一样的就不要了

无需传递任何参数

直接加载配置文件就可以了

现在我们再来看一下

它的上传功能是否正常

打开浏览器

看一下

上传插件不能正常使用

这里边看一下 文件

我们需要把它传过去

打开我们的项目文件

pom.xml来看一下

java下面没有上传

所以只有properties和include

这里我们加上一项

把json文件也包含进来

这样Java目录下的json就可以被发布到

我们需要的产品目录下目标目录下

这样的话 就可以运行它了

我们直接发布一下

清理并构建

这样目标位置就会被删掉

重新发布

把我们需要的内容都给它复制过去

目标位置就在文件夹下

根据自己的机器创建的项目位置去找他

可以看到他是否已经存在

修改完成后我们重新登录

打开对话框

你会看到一个本地上传中出现了

点击选择图片说明我们的后端配置已经完成

这样你就可以上传图片了

当你上传成功后

你就可以选择这个图片

点击上传

出现了405错误

我们来看一下405

在我们的项目后台看看有没有错误

这里边它需要一个post请求

所以我们还需要把我们的控制器进行修改

改成request mapping

这样的话无论是 的请求

还是pose的请求都可以实现

我们登录后

再来看

上传成功

但是显示未找到上传数据

来看一下他的错误消息

说得不到

SRC这个数据我们来看一下

它的S2返回的是什么

我们输出C数据

重新刷新

选择一张图片我们上传

这个是虽然上传成功了

但是他并没有得到这个图片

看一下

这个是

这是我们需要的路径

它不存在

我们来找一下我们的路径

看看它存到了什么位置上

这是配置文件里面

去找一下

执行上传图片的action名称

提交图片表单名称

我们的图片字段不需要改

这是因为它的框架的名称

我们来看一下

这是它的类型

是否压缩

没有存储位置

我们把这个路径给它改掉

直接就是upload下面的image

其它的路径我们不存在

只有一个upload

所以也不需要 之类的

目录了

在我们的根目录下有一个up load

这个是存在的

把所有的有关这样的路径都给它改过来

上传视频的路径

上传其他文件的路径

改完后我们重新发布它

我们重新测试我们的上传

开始上传

找到这个错误消息

看一下这个错误消息是什么原因引起的

在这里

文件上传时出现了错误

我们来看一下错误的类型是什么

把他错误消息打印出来

加一个确认的方法

我们通过

调试的模式来运行他的程序来监控一下

设置一个断点

来看一下

我们再次上传看一下

这个就过来了

然后我们跟踪一下到底是发生了什么错误

可见我们的文件流是空的

并没有得到上传的内容

我们来看一下

它返回一个new best

这个消息是未知类型的错误

给出的错误

我们无法正常上传图片

那么在这里我们需要把它改成

自身的文件上传的相关包

我们来看一下

首先我们来判断

是否上传的

请求是一个文件上传请求

我们来做修改

先把前面这些变量都删了

判断是否为 请求可以留下

然后我们来判断它是否多文件

这里边用spring提供的方式来判断

说如果

请求对象instanceof

multi

http server let

这是一个多部分请求

就是文件上传的请求

如果他是这个类型

就说明他是一个文件上传的

请求

如果他是这个请求

我们就把为request给它转换成

文件上传的请求

这些个我们就可以不需要了

如果说是 请求

把编码设置为UTA8格式

那么这里设置编码的格式是

setcharacterencoding

我们需要捕获异常

把所有的异常都给它捕获进来

catch

设置编码完成后

我们就判断一下他是否上传了文件

如果M2点get

multifilemap

镜像它的尺寸是小于等于0的

这就说明它没有返回数据

所以我们就return一个new besestate

把它返回去

false

notfound

没有上传的数据

如果说它大于零

我们就获取这些数据

iterator

multipart

file iterator

Mr.get

filemap

得到我们所有的文件结合

values

iterator获得枚举

我们便利所有文件

我们把上面这些全部删掉

把有用的留下

先得到第一个文件

while tierator

hasnext

存在下一个文件

我们就去获取它

multipartfile

得到文件后

我们把下面的这些信息拿出来

第一个是储存的路径

我们依然用他原来的代码

第二个

获取文件名

包括后缀

这些个都可以拿得到

我们把这些内容给它放进去

格式化一下代码

文件名的获取

通过file对象的get

originalfilename

初始化名称

来得到相关的名字

下面这个可以不变

得到后缀得到最大值

我们来看一下

下面还有错误

这是得到文件流

file

我们获得输入流

把它改成getinputstream

这样我们的文件就修改完成了

我们重新来进行文件上传看一下

把代码格式化一下

重新登录

要确保我们的文件是上传成功的

浏览

点击图片选择

开始文件上传

如果你能看到勾的话

说明我们的文件是上传成功的

点击确定

这样的在控制台你就看到数据已经过来了

打开我们的模板文件

把这个注释去掉

让图片显示出来

重新刷新

上传

然后确定

这样我们就得到了我们需要的图片

有关 它的图片对话框以及文件的

上传就讲到这里

我们下节课再见

软件开发实训--动态网站开发课程列表:

1 前端需求分析

-1.1课程介绍

--1.1.1课程介绍

--1.1.2课程介绍PPT

--1.1.3随堂测试

-1.2网站需求分析

--1.2.2网站需求分析

--1.2.3需求PPT

--1.2.4随堂测试

-1.3网站首页分析

--1.3.1网站首页分析

--1.3.2首页分析PPT

--1.3.3随堂测试

-1.4导航菜单分析

--1.4.1导航菜单分析

--1.4.2课程PPT

--1.4.3随堂测试

-1.5内容区域分析

--1.5.1内容区域分析

--1.5.2课程PPT

--1.5.3随堂测试

-1.6内容副页面分析

--1.6.1副页面分析

--1.6.2课程PPT

--1.6.3软件系统需求分析

-1.7编写需求文档

-1.8需求分析理解

2 后端分析

-2.1后端页面总体分析

--2.1.1后端页面总体设计

--2.1.2课程PPT

--2.1.3随堂测试

-2.2用户管理功能设计

--2.2.1用户管理功能分析

--2.2.2课程PPT

--2.2.3随堂测试

-2.3内容与分类功能分析

--2.3.1内容与分类功能分析

--2.3.2课程PPT

--2.3.3随堂测试

-2.4网站配置功能设计

--2.4.1网站配置功能设计

--2.4.2课程PPT

--2.4.3软件系统设计

--2.4.4随堂测试

-2.5数据库及表结构分析

--2.5.1数据库及表结构分析

--2.5.2课程PPT

--2.5.3数据库设计

-总体设计文档

3 接口设计

-3.1前台模板约定

--3.1.1前台模板约定

--3.1.2课程PPT

--3.1.3随堂测试

-3.2网站配置接口设计

--3.2.1网站配置接口设计

--3.2.2课程PPT

--3.2.3随堂测试

-3.3菜单接口设计

--3.3.1菜单接口设计

--3.3.2课程PPT

--3.3.3随堂测试

-3.4内容接口设计

--3.4.1内容接口设计

--3.4.2课程PPT

--3.4.3随堂测试

-3.5幻灯片接口设计

--3.5.1幻灯片接口设计

--3.5.2课程PPT

--3.5.3随堂测试

-补充设计文档

-3.7接口设计

4 功能设计

-4.1用户管理功能设计

--4.1.1用户管理功能设计

--4.1.2课程PPT

--4.1.3随堂测试

-4.2菜单管理功能设计

--4.2.1菜单管理功能设计

--4.2.2课程PPT

--4.2.3随堂测试

-4.3内容管理功能设计

--4.3.1内容管理功能设计

--4.3.2课程PPT

--4.3.3随堂测试

-4.4网站配置信息设计

--4.4.1网站配置信息设计

--4.4.2课程PPT

--4.4.3随堂测试

-完成设计文档

-4.6随堂测试

5 环境搭建与开发

-5.1开发环境搭建

--5.1.1环境搭建

--5.1.2随堂测试

-5.2Web前端环境搭建

--5.2.1Web前端环境

-5.3创建用户实体

--5.3.1用户实体创建

--5.3.2随堂测试

-5.4用户实体表创建与初始化

--5.4.1用户实体表创建与初始化

--5.4.2随堂测试

-5.5用户数据访问接口实现

--5.5.1用户数据访问接口实现

--5.5.2随堂测试

-5.6环境搭建问题

-5.7环境搭建问题

6 用户管理功能实现

-6.1用户服务层接口实现

--6.1.1用户服务层接口实现

--6.1.2随堂测试

-6.2用户列表和编辑控制器实现

--6.2.1用户列表和编辑控制器实现

--6.2.2随堂测试

-6.3用户存储和删除控制器实现

--6.3.1用户存储和删除控制器实现

-6.4用户添加、编辑界面实现

--6.4.1用户添加、编辑界面实现

-6.5用户管理添加用户调试

--6.5.1用户管理添加用户调试

-6.6开发

7 用户管理功能实现二

-7.1用户查询模板实现

--7.1.1用户查询模板实现

--7.1.2随堂测试

-7.2用户信息编辑的实现

--7.2.1用户信息编辑的实现

-7.3单个用户删除实现

--7.3.2单个用户删除实现

-7.4多个用户删除实现

--7.4.1多个用户删除实现

8 用户管理功能实现三

-8.1用户列表分页基本实现

--8.1.1用户列表分页基本实现

-8.2用户列表查询结果分页实现

--8.2.1用户列表查询结果分页实现

-8.3通用日期处理

--8.3.1通用日期处理

-8.4整型日期处理

--8.4.1整型日期处理

--8.4.2随堂测试

-8.5枚举数据的应用

--8.5.1枚举数据的应用

--8.5.2Spring Boot开发

9 后台主界面实现

-9.1登录逻辑实现

--9.1.1登录逻辑实现

--9.1.2随堂测试

-9.2登录界面及流程调试

--9.2.1登录界面及流程调试

--9.2.2随堂测试

-9.3管理主界面实现

--9.3.1管理主界面实现

--9.3.2随堂测试

-9.4授权验证拦截器实现

--9.4.1授权验证拦截器实现

--9.4.2随堂测试

-9.5拦截器调试

--9.5.1拦截器调试

10 分类管理实现

-10.1分类接口实现

--10.1.1分类接口实现

-10.2分类添加、编辑实现

--10.2.1分类添加、编辑实现

-10.3分类树结构实现

--10.3.1分类树结构实现

-10.4分类删除实现

--10.4.1分类删除实现

--10.4.2随堂测试

11 内容管理实现

-11.1内容实体定义

--11.1.1内容实体定义

-11.2相关接口定义

--11.2.1相关接口定义

-11.3服务接口实现

--11.3.1服务接口实现

-11.4内容添加、编辑模板实现

--11.4.1内容添加、编辑模板实现

-11.5内容添加、编辑控制器实现

--11.5.1内容添加、编辑控制器实现

-11.6内容检索页面实现

--11.6.1内容检索页面实现

-11.7内容分类树实现

--11.7.1内容分类树实现

12 UEditor富文本编辑器

-12.1修改UEditor相关问题

--12.1.1修改UEditor相关问题

-12.2整合UEditor到内容编辑界面

--12.2.1整合UEditor到内容编辑界面

-12.3UEditor图片对话框应用

--12.3.1UEditor图片对话框应用

-12.4文件上传问题处理

--12.4.1文件上传问题处理

13 网站配置管理实现

-13.1网站配置相关类实现

--13.1.1网站配置相关类实现

-13.2网站配置界面模板实现

--13.2.1网站配置界面模板实现

-13.3网站配置调试

--13.3.1网站配置调试

14 网站前端组件实现

-14.1网站首页布局实现

--14.1.1网站首页布局实现

-14.2菜单Vue组件实现

--14.2.1菜单Vue组件实现

--14.2.2随堂测试

-14.3幻灯片Vue组件实现

--14.3.1幻灯片Vue组件实现

-14.4滚动Vue组件实现

--14.4.1滚动Vue组件实现

--14.4.2随堂测试

-14.5滚动接口实现

--14.5.1滚动接口实现

-14.6滚动接口调试

--14.6.1滚动接口调试

-14.7幻灯片接口实现

--14.7.1幻灯片接口实现

15 网站前端页面实现

-15.1首页区域实现

--15.1.1首页区域实现

-15.2首页内容脚本实现

--15.2.1首页内容脚本实现

-15.3首页完善

--15.3.1首页完善

-15.4Vue组件放入单文件

--15.4.1Vue组件放入单文件

-15.5详细页面实现

--15.5.1详细页面实现

-15.6前端问题

16 测试与发布

-16.1网站测试介绍

--16.1.1网站测试介绍

--16.1.2课程PPT

-16.2功能测试

--16.2.1功能测试

--16.2.2课程PPT

-16.3打包发布

--16.3.1打包发布

-16.4部署运行

--16.4.1部署运行

--16.4.2随堂测试

12.4.1文件上传问题处理笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。