使用ftp上传文件代码解析
2017-06-22 09:50
561 查看
@RequestMapping(value = "/fileUpload") public void upload(HttpServletRequest request, HttpServletResponse respones) { // 解析器解析request的上下文 CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver( request.getSession().getServletContext()); String path = ""; // 先判断request中是否包涵multipart类型的数据, if (multipartResolver.isMultipart(request)) { // 再将request中的数据转化成multipart类型的数据 MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request; Iterator iter = multiRequest.getFileNames(); while (iter.hasNext()) { // 这里的name为fileItem的alias属性值,相当于form表单中name String name = (String) iter.next(); System.out.println("name:" + name); // 根据name值拿取文件 MultipartFile file = multiRequest.getFile(name); if (file != null) { String fileName = file.getOriginalFilename(); path = UploadServer.getUploadPathInputSteam(file, "app_store"); } } } try { // 指定允许其他域名访问 respones.setHeader("Access-Control-Allow-Origin", "*"); // 响应类型 respones.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); // 响应头设置 respones.setHeader("Access-Control-Allow-Headers", "Content-Type, x-requested-with, X-Custom-Header"); respones.getWriter().write(path); } catch (IOException e) { e.printStackTrace(); } }
public static String getUploadPathInputSteam(MultipartFile multipartFile,String projectName){ boolean falg=true; String reStr=""; String webpath = "marketdatas/"; try { String path = "/marketdatas"; String fileName = multipartFile.getOriginalFilename(); String extName = getFileExtName(fileName); fileName = PinYinUtil.getPinYin(fileName, 1); if("png".equals(extName)) { path = path+"/images/"; }else if("apk".equals(extName)) { path = path+"/apk"; }else { path = path+"/others"; } webpath = webpath + fileName; String uploadPath = path + "/" + fileName; FTPUload ftpUload=new FTPUload(); falg=ftpUload.ftpUpload(multipartFile.getInputStream(),uploadPath); if(falg==false){ reStr=GlobalVars.WEBPATH+"/error.jpg"; }else{ if(projectName==null||projectName.equals("")||projectName.equals("/")){ reStr = uploadPath; }else{ reStr =uploadPath; } reStr= GlobalVars.WEBPATH+reStr; } Thread.sleep(2000); } catch (Exception e) { reStr=GlobalVars.WEBPATH+"/error.jpg"; e.printStackTrace(); } return reStr; }
相关文章推荐
- JAVA中使用FTPClient实现文件上传下载实例代码
- JAVA中使用FTPClient实现文件上传下载实例代码
- Java代码使用FTPClient实现ftp文件上传下载和删除的功能
- JAVA中使用FTPClient实现文件上传下载实例代码
- 使用edtftpj进行ftp文件上传和下载
- jaVA使用FTP上传下载文件的问题
- C#上传下载文件ftp操作类FTPClient代码
- 截获asp.net上传文件过大IIS报错的Httpmodule代码 --方便以后使用
- php下连接ftp实现文件的上传、下载、删除文件实例代码
- php获取svn文件,然后ftp上传服务器代码
- C#上传下载文件ftp操作类FTPClient代码
- 使用透明叠加法美化文件上传界面的代码
- 使用ftp命令上传和下载文件
- 使用sun.net.ftp下载、上传文件完整版
- JAVA连接FTP服务器,并上传/下载文件代码
- (转)使用CGIC实现Web文件上传的服务端代码
- jaVA使用FTP上传下载文件的问题
- 使用批处理自动上传文件到FTP
- jQuery教程(十二)使用不苛刻的java script代码实现多文件上传
- 使用GridFTP传输文件的简单JAVA代码