返回顶部
首页 > 资讯 > 服务器 >怎么使用Java服务器处理图片上传
  • 814
分享到

怎么使用Java服务器处理图片上传

2023-07-02 12:07:27 814人浏览 独家记忆
摘要

这篇文章主要介绍了怎么使用Java服务器处理图片上传的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Java服务器处理图片上传文章都会有所收获,下面我们一起来看看吧。一、简述第一:浏览器上传图片实现;第二

这篇文章主要介绍了怎么使用Java服务器处理图片上传的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Java服务器处理图片上传文章都会有所收获,下面我们一起来看看吧。

一、简述

第一:浏览器上传图片实现;

第二:微信小程序上传图片实现;

二、图片上传功能实现

处理H5的单文件上传实现:

package cn.ncist.tms.attachment.controller; import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.util.HashMap;import java.util.Map; import javax.servlet.Http.httpservletRequest;import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Controller;import org.springframework.WEB.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.multipart.MultipartFile; @RequestMapping(value = "/fileUpload")@Controllerpublic class AttachmentUpload {            @RequestMapping(value = "/doFileUpload",method = RequestMethod.POST)    @ResponseBody    public Map<String,Object> doFileUpload(HttpServletRequest request,            HttpServletResponse reponse,            @RequestParam("file") MultipartFile srcFile) throws IOException{                                //1.变量声明        Map<String,Object> result = null;// 返回结果变量        FileOutputStream fos = null;     //写入文件的变量        File destFile = null;    //写入的目的地文件(distination)                try {            result = new HashMap<String,Object>();                        //2.参数验证            if(srcFile == null){                throw new RuntimeException("上传文件不存在");            }            if(srcFile.getBytes().length == 0){                throw new RuntimeException("上传文件内容为空");            }                        //3.操作文件对象,写入本地目录的文件中                        //3.1 截取文件后缀            String ext = srcFile.getOriginalFilename().substring(srcFile.getContentType().lastIndexOf( ".")+1);            //3.2 实例化目标文件,根据当前的操作系统,指定目录文件,            destFile = new File("D:"+File.separator+"descFolder"+File.separator+"descFile."+ext);            //3.3 实例化流            fos = new FileOutputStream(destFile);            //3.4 获取写入的字节数组,并写入文件                byte[] srcBytes = srcFile.getBytes();            fos.write(srcBytes);            fos.flush();            //4.对输入、输出流进行统一管理            //已在文件finally代码块处理                        result.put( "code", "S");            result.put( "msg", "服务调用成功");            result.put( "path", destFile.getAbsolutePath());            return result;        } catch (Exception e) {            // TODO: handle exception            e.printStackTrace();            result = new HashMap<String,Object>();            result.put( "code", "F");            result.put( "msg", "服务调用失败");            result.put( "path", null);            return result;        } finally{            //关闭系统资源,避免占用资源.            if(fos != null){                fos.close();            }        }    }}

微信或手机APP上传图片文件的代码实现:

import java.io.BufferedInputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.util.Enumeration;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set; import javax.annotation.Resource;import javax.servlet.ServletInputStream;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse; import org.jboss.Netty.handler.codec.http.HttpRequest;import org.springframework.mock.web.MockMultipartFile;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.multipart.MultipartFile;import org.springframework.web.multipart.MultipartHttpServletRequest; import com.hlinkcloud.ubp.core.constant.RedisKeyConstant;import com.hlinkcloud.ubp.core.service.RedisService;import com.hlinkcloud.ubp.core.util.BaseStringUtil;import com.hlinkcloud.ubp.facade.bean.common.FastDFSFile;import com.hlinkcloud.ubp.facade.bean.common.FileManagerConfig;import com.hlinkcloud.ubp.facade.service.common.FileInfoService;import com.hlinkcloud.ubp.facade.service.permission.UserService;import com.hlinkcloud.ubp.facade.util.DictionaryCommUtil; import fr.opensagres.xdocreport.core.io.internal.ByteArrayOutputStream; @Controller@RequestMapping("/wx_upload")public class WxUploadImgBusiness {     @Resource    private UserService userService;     @Resource    private RedisService redisService;     @Resource(name = "commonUtil")    private DictionaryCommUtil commUtil;     @Resource    private FileInfoService fileService;         @RequestMapping("/getUploadFilePath")    @ResponseBody    public Map<String, Object> doWxUploadFile(HttpServletRequest request, HttpServletResponse response) {         HashMap<String, Object> map = new HashMap<String, Object>();                try {                                     // 1.将请求转化为操作流的请求对象.            MultipartHttpServletRequest req = (MultipartHttpServletRequest) request;            MultipartFile picture = req.getFile("file");                        if(picture != null && picture.getBytes().length != 0){                // 2.将图片上传到服务器                byte[] bytes = picture.getBytes();                String ext = picture.getOriginalFilename().substring(                        picture.getOriginalFilename().lastIndexOf(".") + 1                        );                // (备注:下列代码为内部业务代码,可根据公司自身的需求,进行更改)                                                map.put("code", "S");                map.put( "msg", "服务调用成功");                map.put("statusCode", 200);                map.put("data", filePath);            }else{                throw new RuntimeException("上传图片异常或空图片!");            }        } catch (IOException e) {            e.printStackTrace();            map.put("code", "F");            map.put("msg", "服务调用失败");            map.put("statusCode", 500);            map.put("data", null);        }        return map;    }            @RequestMapping(value = "/doUploadFileOfCI" , method = RequestMethod.POST )    public @ResponseBody Map<String,Object> doUploadFile(            HttpServletRequest request,//请求对象            HttpServletResponse response) throws IOException{//响应对象                System.out.println("doTestMultipartFile:");                MultipartHttpServletRequest req = (MultipartHttpServletRequest) request;        //此时说明请求对象是MultipartHttpServletRequest对象        MultipartFile picture = req.getFile("UploadedImage");                //遍历请求得到所有的数据.        if(req != null){                        //获取所有属性名            Enumeration enume= req.getAttributeNames();            while(enume.hasMoreElements()){                System.out.println("enume:"+enume.nextElement());            }                        //获取所有文件名            Iterator<String> fileNames = req.getFileNames();            while(fileNames.hasNext()){                System.out.println("fileNames:"+fileNames.next());            }                        //获取操作文件的map            Map<String,MultipartFile> fileMap =  req.getFileMap();            if(fileMap != null && fileMap.size() > 0){                Set<String> set = fileMap.keySet();                for(String key:set){                    System.out.println("String:"+key);                }            }                        //获取请求流            InputStream is = req.getInputStream();            System.out.println("InputStream:"+is);            int length = -1;            while( (length = is.read()) != -1 ){                System.err.println("data:"+length);            }                        //获取所有请求参数            Enumeration enumee = req.getParameterNames();            while(enumee.hasMoreElements()){                System.out.println("enumee:"+enumee.nextElement());            }        }                System.out.println(picture);                        return null;    } }

关于“怎么使用Java服务器处理图片上传”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“怎么使用Java服务器处理图片上传”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网服务器频道。

--结束END--

本文标题: 怎么使用Java服务器处理图片上传

本文链接: https://lsjlt.com/news/341839.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么使用Java服务器处理图片上传
    这篇文章主要介绍了怎么使用Java服务器处理图片上传的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Java服务器处理图片上传文章都会有所收获,下面我们一起来看看吧。一、简述第一:浏览器上传图片实现;第二...
    99+
    2023-07-02
  • Java服务器处理图片上传的方法
    本文实例为大家分享了Java服务器处理图片上传的具体代码,供大家参考,具体内容如下 一、简述 第一:浏览器上传图片实现; 第二:微信小程序上传图片实现; 二、图片上传功能实现 1.处...
    99+
    2024-04-02
  • java实现图片上传至服务器
    实现的思路:工具:MySQL,eclipse首先,在MySQL中创建了两个表,一个t_user表,用来存放用户名,密码等个人信息,一个t_touxiang表,用来存放上传的图片在服务器中的存放路径,以及图片名字和用户ID,T_touxian...
    99+
    2021-04-29
    java 实现 图片 上传 服务器
  • 轻松创建nodejs服务器(10):处理上传图片
    本节我们将实现,用户上传图片,并将该图片在浏览器中显示出来。 这里我们要用到的外部模块是Felix Geisendörfer开发的node-formidable模块。它对解析上传的文件数据做了很好...
    99+
    2022-06-04
    上传图片 轻松 服务器
  • jsp怎么使用smartupload上传图片
    要使用SmartUpload上传图片,可以按照以下步骤进行操作:1. 首先,你需要下载SmartUpload的jar文件,并将其添加...
    99+
    2023-08-20
    jsp
  • vue2使用 tinymce富文本编辑器-图片上传、粘贴图片上传致服务器
    安装tinymce富文本编辑器插件 npm i tinymce npm i @tinymce/tinymce-vue 创建Editor.js文件 封装组件 以便使用 impor...
    99+
    2023-09-04
    前端 javascript vue
  • vue怎么将图片上传到服务器
    这篇文章主要介绍“vue怎么将图片上传到服务器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue怎么将图片上传到服务器”文章能帮助大家解决问题。一、准备工作下载 vue-quill-editorn...
    99+
    2023-06-27
  • java使用CKEditor实现图片上传功能
    java如何使用CKEditor实现图片上传功能,具体内容如下根据实际需要下载指定的CKEditor删除文件ckeditor/plugins/image/dialogs/image.js预览框中文本内容,并修改hidden属性值为显示上传选...
    99+
    2023-05-31
    ckeditor 上传 ava
  • 使用Ajax怎么上传图片并预览
    使用Ajax怎么上传图片并预览?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。最近在使用ThinkPHP5开发项目中客户有一个需求是在图片上传时附带预览功能。虽然...
    99+
    2023-06-08
  • 使用canvas怎么对图片压缩上传
    使用canvas怎么对图片压缩上传?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。首先得有一个上传按钮。<input type="file"&...
    99+
    2023-06-09
  • 使用springboot怎么在后台上传图片
    这篇文章给大家介绍使用springboot怎么在后台上传图片,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。先配置启动类继承WebMvcConfigurer重写方法@SpringBootApplication//@Map...
    99+
    2023-06-14
  • 使用Java上传图片到阿里云服务器的详细指南
    随着互联网技术的发展,图片的上传和存储已经成为了一个非常常见的需求。本篇文章将详细解释如何使用Java上传图片到阿里云服务器,包括上传图片的基本流程,Java代码实现,以及可能出现的问题和解决方法。 一、基本流程 1. 创建阿里云账号并开通...
    99+
    2023-10-30
    阿里 上传图片 服务器
  • java怎么限制上传图片大小
    在Java中,可以通过以下步骤限制上传图片的大小: 获取上传图片的文件大小。可以使用`file.length()`方法获取文件的...
    99+
    2023-10-24
    java
  • Vue中实现图片上传,上传后的图片回显,存储图片到服务器 【使用对象存储OSS】
    文章目录 1 前提知识1.1 服务端签名后直传1.1.1 流程和源码解析1.1.2 实现步骤 1.2 Aliyun Spring Boot OSS 示例(接入微服务)1.2.1 简略说明1.2.2步骤 2、项目中实际...
    99+
    2023-08-24
    vue.js 服务器 javascript
  • Golang怎么限制木马图片上传服务器
    这篇文章主要讲解了“Golang怎么限制木马图片上传服务器”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Golang怎么限制木马图片上传服务器”吧!项目背景自己开发了一个云对象存储服务,用于...
    99+
    2023-06-29
  • java怎么实现图片上传并显示
    在Java中实现图片上传并显示的一种常见的方法是使用Servlet和JSP。下面是一个简单的示例代码: 创建一个Servlet类来...
    99+
    2023-10-24
    java
  • js实现上传图片到服务器
    本文实例为大家分享了js实现上传图片到服务器的具体代码,供大家参考,具体内容如下 HTML //多张图片上传multiple <input type="file" id...
    99+
    2024-04-02
  • 上传图片至亚马逊服务器
    1. 选择合适的图片格式和大小 在将图片上传至亚马逊服务器之前,首先需要选择合适的图片格式和大小。常见的图片格式包括JPEG、PNG和GIF。JPEG是最常用的格式,适合存储照片和复杂的图像。PNG格式适合存储透明背景的图像,而GIF格式...
    99+
    2023-10-27
    亚马逊 上传图片 服务器
  • 怎么用php实现图片上传
    这篇文章主要介绍了怎么用php实现图片上传的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用php实现图片上传文章都会有所收获,下面我们一起来看看吧。一、创建html页面首先,我们要创建一个html页面,这个...
    99+
    2023-07-05
  • PHP后台系统中图片无法上传怎么处理
    这篇文章主要介绍了PHP后台系统中图片无法上传怎么处理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。           &...
    99+
    2023-06-22
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作