Java文件上传细讲(3)

简介: Java文件上传细讲(3)

SmartUpload

要使用SmartUpload组件,就需要导入smartupload.jar开发包

快速入门


   //实例化组件
        SmartUpload smartUpload = new SmartUpload();
        //初始化上传操作
        smartUpload.initialize(this.getServletConfig(), request, response);
        try {
            //上传准备
            smartUpload.upload();
            //对于普通数据,单纯到request对象是无法获取得到提交参数的。也是需要依赖smartUpload
            String password = smartUpload.getRequest().getParameter("password");
            System.out.println(password);
            //上传到uploadFile文件夹中
            smartUpload.save("uploadFile");
        } catch (SmartUploadException e) {
            e.printStackTrace();
        }


测试

同样地,我们可以上传文件到uploadFile文件夹中。代码量也的确减少很多!

也能够获取普通字段的参数



image.png


上传文件名的中文乱码和上传数据的中文乱码

我把文件名改成中文,就乱码了:



image.png


表单提交过来的中文数据也乱码了


image.png


上面已经说了,上传文件的数据的表单进行了二进制封装,所以使用request对数据编码编码,对于表单提交过来的数据是不奏效的!


FileUpload解决乱码

使用FileUpload解决乱码问题是十分简单的


解决中文文件名乱码,得到解析器以后,就直接设置解析器的编码为UTF-8就行了!


//设置upload的编码
        fileUpload.setHeaderEncoding("UTF-8");


解决表单数据乱码,在获取表单值的时候,按照UTF-8编码来获取


String value = fileItem.getString("UTF-8");


效果:


image.png


SmartUpload解决乱码

这个组件解决乱码问题有点麻烦,在网上找了各种办法也没找到简单的…


所以,如果数据不涉及到中文就使用SmartUpload组件,涉及到中文数据就使用FileUpload组件吧!


参考简书:https://www.jianshu.com/p/8f7fca0f6a6f


目录
相关文章
|
4月前
|
存储 Java 文件存储
|
8月前
|
Java API
77.【JavaWeb文件上传和邮件发送04】(三)
77.【JavaWeb文件上传和邮件发送04】
46 0
|
8月前
|
缓存 网络协议 Java
Java手写简单文件上传服务器
Java手写简单文件上传服务器
49 0
|
9月前
|
存储 安全 Java
解析 Java 的 MultipartFile 接口:实现文件上传的全面指南
在现代的 Web 开发中,文件上传是一个常见的需求,而 Java 中的 `MultipartFile` 接口正是用来处理这类任务的重要工具。无论是上传图片、音频、视频还是其他文件类型,`MultipartFile` 都提供了便捷的方法来处理文件的接收和存储。本文将带您深入探索 Java 中的 `MultipartFile` 接口,揭示其功能、用法以及在实际开发中的应用场景。
|
12天前
|
缓存 前端开发 Java
15:Servlet 3.0文件上传与下载-Java Web
15:Servlet 3.0文件上传与下载-Java Web
27 5
|
28天前
|
运维 编译器 API
对象存储oss使用问题之进行文件上传时报错java.io.EOFException如何解决
《对象存储OSS操作报错合集》精选了用户在使用阿里云对象存储服务(OSS)过程中出现的各种常见及疑难报错情况,包括但不限于权限问题、上传下载异常、Bucket配置错误、网络连接问题、跨域资源共享(CORS)设定错误、数据一致性问题以及API调用失败等场景。为用户降低故障排查时间,确保OSS服务的稳定运行与高效利用。
29 0
|
1月前
|
JavaScript 前端开发
javaweb文件上传和下载
javaweb文件上传和下载
|
6月前
|
Java
java servlet 文件上传 req.getPart null 返回空值
java servlet 文件上传 req.getPart null 返回空值
72 0
|
2月前
|
存储 前端开发 Java
[java后端研发]——文件上传与下载(2种方式)
[java后端研发]——文件上传与下载(2种方式)
|
8月前
|
Java UED
Java多线程实现文件上传详解
文件上传是Web应用程序中常见的功能之一,用户可以通过网页将文件从本地计算机上传到服务器。在处理大文件或多用户并发上传的情况下,为了提高性能和用户体验,常常使用多线程来实现文件上传功能。本文将详细介绍如何使用Java多线程实现文件上传,包括上传原理、多线程实现、代码示例等内容。
222 0