public HttpServletRequest request = ServletActionContext.getRequest();
/**
* @Methed接收请求的二进制图片生成新的图片
* @disc get binary, create pic
* @return
*/
public void uploadImages(){
try {
InputStream imgStream = request.getInputStream();
if(imgStream!=null){
String time=datefileFormat.format(new Date());
String imgfilename = time+ ".jpg";
String path = ServletActionContext.getServletContext().getRealPath("/userfiles") + File.separator + imgfilename;
File imageFile = new File(path);
if(!imageFile.exists()){
imageFile.createNewFile();
}
FileOutputStream fos = new FileOutputStream(imageFile);
byte[] Buffer = new byte[1024*1024];
int size = 0;
while((size = imgStream.read(Buffer))!=-1){
fos.write(Buffer,0,size);
}
String getPath="userfiles/"+imgfilename;
fos.close();
imgStream.close();
message="{\"success\":\"true\",\"path\":\""+getPath+"\"}";
}
} catch (Exception e) {
message="{\"success\":\"false\",\"error\":\"01:系统错误\"}";
// TODO Auto-generated catch block
e.printStackTrace();
}
this.renderJson(message);
}
遇到的问题,FLASH没有发出来二进制码, 加上以下代码成功。
FLASH没有加urlRequest.contentType = "application/octet-stream";
分享到:
相关推荐
3. **AMF(Action Message Format)通信**:AMF是一种高效的数据交换格式,常用于Flash与服务器之间的二进制通信。使用如BlazeDS或LCDS这样的服务器组件,可以实现Flash与Java之间的AMF通信,提高数据传输效率。 4....
可以创建一个Servlet或Filter来接收POST请求,其中包含JPEG图像的二进制数据。 8. 图像处理和保存:在JSP或Servlet中,可以使用Java的ImageIO库来读取和处理接收到的JPEG数据,将其保存为本地文件。此外,还可以...
- **AMF通信**:Action Message Format (AMF)是Flash用于数据交换的一种高效二进制格式。存在一些库,如BlazeDS和LCDS,允许Java服务器与Flash客户端之间使用AMF进行通信。 3. **安全考虑**: - 由于Flash的安全...
- JSP页面通常包含一个Servlet,用于接收Flash发送的数据。 - Servlet解析接收到的二进制流,并将其转换为文件形式。 - 文件存储在服务器的指定位置,或者通过数据库服务保存文件内容。 - 完成上传后,Servlet...
2. **AMF通信**:AMF是一种高效的二进制数据格式,专为Flash和服务器间的数据交换设计。通过使用像BlazeDS或LCDS这样的中间件,Flash可以以AMF格式发送和接收数据,大大提高了传输效率。Java服务器端可以使用例如Red...
在与Struts2结合使用时,jQuery Webcam会捕获用户的摄像头图像,将其编码为二进制数据,然后通过Ajax请求发送到后台Struts2 Action。 在项目实施过程中,开发人员通常需要做以下工作: 1. 配置Struts2:设置Action...
总之,通过合理的数据模型设计、数据绑定、自定义ItemRenderer以及前后端的通信配合,我们可以在Flex的DataGrid控件中成功显示来自数据库的二进制图片数据。这种技术在企业级应用中非常常见,能够提升用户体验,使得...
Servlet提供了处理POST请求的能力,可以读取请求体中的二进制数据,这些数据就是图片的原始内容。使用`HttpServletRequest`对象的`getParts()`方法,可以获取到上传的文件Part,然后通过`Part`对象的`write()`方法将...
2. **Multipart解析**:由于文件上传涉及到二进制数据,所以通常使用multipart/form-data格式。Java中,可以使用`javax.servlet.http.Part`接口或者第三方库如Apache Commons FileUpload来解析这种格式的数据。 3. ...
文件内容会被转换为二进制数据,并附加到请求的Data属性上。为了处理多张图片,每张图片都需要单独的请求,或者将所有图片合并成一个大文件再上传。 在服务器端,开发者需要编写接收并处理这些上传请求的代码。如果...
AMF3(Action Message Format version 3)是Adobe开发的一种二进制数据交换格式,用于在Flash Player和服务器之间高效地传输数据。相比AMF0,AMF3在序列化和反序列化过程中更加节省带宽,提高了数据传输速度,这对于...
这通常涉及到二进制数据的处理和图像库的使用,例如Flash中的BitmapData类。 4. **上传进度条**: 为了提供更好的用户体验,一个上传进度条会显示文件传输的状态。在Flash中,可以监听HTTPService或URLLoader对象...
然后,处理后的图像以二进制数据的形式发送到服务器。 6. **HTTP通信**:Flash与JSP之间的通信通常通过HTTP POST请求完成。Flash将图像数据作为POST请求的一部分发送到服务器,而JSP则接收这个请求,提取数据并进行...
`Loader.loadBytes()`方法接收`FileReference`对象的`data`属性(即用户选择文件的二进制数据),加载完成后,图片可以在舞台上进行展示。 4. **图片裁剪**:为了适应不同的头像尺寸要求,通常会添加裁剪功能。这...
通常,表单需要设置`enctype="multipart/form-data"`属性,以便能够处理二进制数据。在JSP中,可以使用`<form>`标签和`<input type="file">`元素来实现这一功能。 `uploadify`是一个JavaScript插件,它使用AJAX和...
`nocache.as` 文件可能是Flash项目中的关键代码,它负责创建Socket连接、接收数据以及将接收到的二进制数据解析成SWF内容。ActionScript中的Socket类提供了读写数据的方法,如`readBytes()` 和 `writeBytes()`, 用于...
- 用户选择本地图片后,FckEditor会将图片文件以二进制流的形式发送到服务器。 - 服务器端接收请求,解析文件内容,并将其保存到指定的文件系统路径或者数据库中。 - 保存完成后,服务器返回图片的URL或路径给...
4. 可执行文件或编译后的类文件(.class):Java编译后的二进制文件,用于运行服务器。 5. 配置文件(如server.properties):可能包含了服务器的配置信息,如监听端口、最大连接数等。 6. 文档和资源文件:可能包含...
- 文件数据通常以二进制流的形式发送,可能需要设置Content-Type为multipart/form-data。 4. Java后端处理: - Java服务器接收到请求后,Servlet或Controller解析请求体,提取文件数据。 - 文件数据存储到服务器...
实际上,XMLSocket可以用来传递任意的二进制或文本数据。在Flash中,XMLSocket允许创建实时聊天系统等需要实时交互的应用。 4. **实时通信与被动通信** 实时通信是指服务器和客户端可以即时交换数据,而无需等待...