(volley multirequest 后台实现) restful 多文件 表单 上传

简介:   restful demo(有数据库,rest soap 共存)restful cxf maven jdbctemplate 类似七牛 图床 设计 demo   http://knight-black-bob.

 

restful demo(有数据库,rest soap 共存)restful cxf maven jdbctemplate 类似七牛 图床 设计 demo 

 http://knight-black-bob.iteye.com/blog/2276961

 

 

android volley ,多文件 表单上传 http://knight-black-bob.iteye.com/blog/2311805


 
 

 

(volley  multirequest 后台实现)  restful   多文件 表单 上传

@POST
	@Consumes("multipart/form-data")  
	@Path("/createFeed")
	public Response createFeed(  List<Attachment>attachments,@Context HttpServletRequest request ) {
		long userFrom = 0;
		String userNickname = null,userIcon = null,location = null,content = null;
		 List<FileKv>  fileList = new ArrayList<FileKv>();
		for (Attachment attach : attachments) {  
	            DataHandler dh = attach.getDataHandler();  
	            System.out.println(attach.getContentType().toString());  
	           // text/plain;charset=UTF-8
	            if (attach.getContentType().toString().contains("text/plain")) {  
	                try {  
	                    System.out.println(dh.getName());  
	                    System.out.println(writeToString(dh.getInputStream()));  
	                    
	                    if ("userFrom".equals(dh.getName())) { 
	                    	userFrom = Long.valueOf( writeToString(dh.getInputStream()));
						}else if("userNickname".equals(dh.getName())) { 
							userNickname =  writeToString(dh.getInputStream()) ;
						}else if("userIcon".equals(dh.getName())) { 
							userIcon =  writeToString(dh.getInputStream()) ;
						}else if("location".equals(dh.getName())) { 
							location =  writeToString(dh.getInputStream()) ;
						}else if("content".equals(dh.getName())) {
							content =  writeToString(dh.getInputStream()) ;
						}	                    
	                    
	                } catch (Exception e) {  
	                    e.printStackTrace();  
	                }  
	            } else if(attach.getContentType().toString().contains("application/octet-stream")){ 
	            	String path = request.getRealPath("/");
	            	String picSaveName = DatetimeUtil.getYMDHMS_ms(new Date());
	                try {  
	                    writeToFile(dh.getInputStream(), path +"img/feed/"+ picSaveName+".png");  
	                    fileList.add(new  FileKv(dh.getName(),picSaveName));
	                } catch (IOException e) {  
	                    e.printStackTrace();  
	                }  
	            }else{
	            	
	            }  
	        }
		 Feed feed = new Feed(); 
		 feed.setUserFrom(userFrom);
		 feed.setUserNickname( userNickname );
		 feed.setUserIcon( userIcon );
		 feed.setLocation( location );
		 feed.setContent( content );
		 feed.setClicknum(0);
		 feed.setInsertTime(new Date());
		 feed.setLastUpdateTime(new Date());
		 int feedId = feedDao.saveFeedReturnFeedId(feed);
	     for (FileKv kv : fileList) {
	    	 feedPicDao.saveFeedPic(new FeedPic(feedId, kv.fileName, Constants.BASEIP+"/RepositoryPic/WebService/rest/showPic/feed/"+kv.fileSaveName, new Date(), new Date() ));
		 }
		
		QueryResultJson result = new QueryResultJson(400, "error", null);
		result = new QueryResultJson();
			result.retcode = 200;
			result.retmsg = "success";
		return Response.ok(result).build();
	}

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和PayPal捐助),没钱捧个人场,谢谢各位。



 
 
 谢谢您的赞助,我会做的更好!

 

 

 

目录
相关文章
|
6月前
|
前端开发 JavaScript
解决Ajax发送DELETE请求时后台无法接收到参数的问题(Restful风格)
解决Ajax发送DELETE请求时后台无法接收到参数的问题(Restful风格)
184 0
|
存储 JavaScript 前端开发
vue-admin-chart实现管理后台登陆页面,axios请求restful接口,Composition API风格
vue-admin-chart管理后台登陆界面是基于Vue3.2 vue-cli5 vue-router4 ElementPlus2.2 Pinia2.0状态管理存储 axios网络请求等搭建,采用TS(TypeScript)脚本语言,以Composition api风格编写,采用axios请求远程Restful API接口调试。
135 0
vue-admin-chart实现管理后台登陆页面,axios请求restful接口,Composition API风格
|
前端开发 程序员 API
后台服务之RESTful API
后台服务之RESTful API
268 0
后台服务之RESTful API
|
API 对象存储 网络架构
OSS restful API 调用 get,遍历目录中的文件,python发http request示例
发送get 请求,遍历目录下的所有文件,代码中*** 的部分改成实际内容,这个API说明文档在bucket操作里面。rest请求主要问题在拼header时authorization可能会有问题,注意计算签名时的入参。#tested env: python version v3.9.6 #author: Fred #2022-1-11 import hmac import hashlib impo
648 0
|
Web App开发 Java Android开发
Java 利用SpringBoot为Android,iOS等移动平台搭建简单的Restful后台接口平台
  作为移动端开发者来说,一般情况下,我们是不需要管理后台接口,只需要调用就可以了;但有时候,我们想要自己来实现接口,就得需要搭建自己的后台接口 当然实现方式有很多,我对Java比较熟悉,这里就说下用Java等框架来实现Restful接口。
1779 0
|
前端开发 .NET API
使用 Swagger UI 与 Swashbuckle 创建 RESTful Web API 帮助文件
本文旨在介绍如何使用常用的 Swagger 和 Swashbuckle 框架创建描述 Restful API 的交互界面,并为 API 用户提供丰富的探索、文件和操作体验。
5124 0
|
6天前
|
JSON 关系型数据库 测试技术
使用Python和Flask构建RESTful API服务
使用Python和Flask构建RESTful API服务
|
14天前
|
SQL 缓存 测试技术
构建高性能RESTful API:最佳实践与避坑指南###
—— 本文深入探讨了构建高性能RESTful API的关键技术要点,从设计原则、状态码使用、版本控制到安全性考虑,旨在为开发者提供一套全面的最佳实践框架。通过避免常见的设计陷阱,本文将指导你如何优化API性能,提升用户体验,确保系统的稳定性和可扩展性。 ###
52 12
|
9天前
|
JSON 缓存 API
探索后端开发中的RESTful API设计原则
【10月更文挑战第41天】在后端开发的广阔天地中,API的设计如同绘制一幅精细的地图,指引着数据的流向和前端的交互。本文将带你走进RESTful API的世界,一起探索如何用简洁高效的设计原则来构建一个清晰、可维护且易于理解的API结构。我们将从RESTful API的基础概念出发,通过实际案例分析,揭示如何在实践中应用这些设计原则,并讨论如何在复杂的业务逻辑中保持API的简洁性和一致性。