`

如何在struts2中结合HttpClient进行文件上传

阅读更多

最近遇到了用httpclient进行上传文件的问题,下面我就和大家简单的说一下:

package com.imps.action;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.List;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.PostMethod;
public class TabinfoAction extends BaseAction
{
private File[] myFile;

private String[] myFileFileName;// 文件名

private Integer[] myFileFileSize;// 文件大小

private String[] myFileContentType;// 文件类型


public String uploadPost()
{
String posturl ="http://127.0.0.1:8080/settabimage.aspx";
System.out.println(posturl);
String status=null;
for(int i=0;i<myFile.length;i++)
{
FileInputStream file=new FileInputStream(myFile[i]);
InputStream in = new BufferedInputStream(file);
PostMethod post=new PostMethod(posturl);
post.setRequestBody(in);
HttpClient client = new HttpClient();
client.executeMethod(post);
String response=new String(post.getResponseBodyAsString().getBytes("ISO-8859-1"),"UTF-8");
post.releaseConnection();
in.close();
file.close();
}
}


public File[] getMyFile() {
return myFile;
}


public void setMyFile(File[] myFile) {
this.myFile = myFile;
}


public String[] getMyFileFileName() {
return myFileFileName;
}


public void setMyFileFileName(String[] myFileFileName) {
this.myFileFileName = myFileFileName;
}


public Integer[] getMyFileFileSize() {
return myFileFileSize;
}


public void setMyFileFileSize(Integer[] myFileFileSize) {
this.myFileFileSize = myFileFileSize;
}


public String[] getMyFileContentType() {
return myFileContentType;
}


public void setMyFileContentType(String[] myFileContentType) {
this.myFileContentType = myFileContentType;
}package com.imps.action;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.List;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.PostMethod;
public class TabinfoAction extends BaseAction
{
private File[] myFile;

private String[] myFileFileName;// 文件名

private Integer[] myFileFileSize;// 文件大小

private String[] myFileContentType;// 文件类型


public String uploadPost()
{
String posturl ="http://127.0.0.1:8080/settabimage.aspx";
System.out.println(posturl);
String status=null;
for(int i=0;i<myFile.length;i++)
{
FileInputStream file=new FileInputStream(myFile[i]);
InputStream in = new BufferedInputStream(file);
PostMethod post=new PostMethod(posturl);
post.setRequestBody(in);
HttpClient client = new HttpClient();
client.executeMethod(post);
String response=new String(post.getResponseBodyAsString().getBytes("ISO-8859-1"),"UTF-8");
post.releaseConnection();
in.close();
file.close();
}
}


public File[] getMyFile() {
return myFile;
}


public void setMyFile(File[] myFile) {
this.myFile = myFile;
}


public String[] getMyFileFileName() {
return myFileFileName;
}


public void setMyFileFileName(String[] myFileFileName) {
this.myFileFileName = myFileFileName;
}


public Integer[] getMyFileFileSize() {
return myFileFileSize;
}


public void setMyFileFileSize(Integer[] myFileFileSize) {
this.myFileFileSize = myFileFileSize;
}


public String[] getMyFileContentType() {
return myFileContentType;
}


public void setMyFileContentType(String[] myFileContentType) {
this.myFileContentType = myFileContentType;
}

千万记住不要记忘记关闭流和释放http连接

分享到:
评论

相关推荐

    struts2 android httpclient 上传文件

    Struts2、Android和HttpClient是三个关键的技术领域,它们在本次文件上传的场景中相互结合。Struts2是一个流行的Java Web框架,用于构建MVC(模型-视图-控制器)结构的应用程序。Android是Google开发的移动操作系统...

    ssh文件上传下载,很简答的东西

    Struts 1.x有一个`FileUpload`动作,而在Struts 2中,文件上传是通过`CommonsFileUpload`库实现的,该库是Apache Commons项目的一部分,提供了处理HTTP多部分请求的能力。 在Struts 2中,你通常需要配置一个`...

    Android文件上传.rar

    本文将详细解析如何在Android系统中实现文件上传,主要围绕"Android文件上传"这一主题展开,结合提供的博客链接以及压缩包内的示例代码(test和struts2fileupload)进行说明。 首先,理解文件上传的基本流程至关...

    java多文件上传

    在Struts中实现文件上传,你需要配置struts.xml文件,定义一个表单bean来接收文件字段,并在Action类中处理上传请求。Struts提供了`org.apache.struts.action.ActionForm`和`org.apache.struts.upload.FormFile`类来...

    android上传照片到服务器

    这个场景中,我们可以通过Android SDK提供的API结合网络请求库(如HttpClient或OkHttp)来实现。以下是一些关键的知识点: 1. **权限获取**: 在AndroidManifest.xml文件中,需要添加读取存储和相机的权限,以便...

    ssh框架工程

    在这个小说网项目中,Struts2接收用户的请求,调用相应的Action类执行业务逻辑,然后将结果转发到指定的JSP页面进行渲染展示。Struts2的拦截器机制允许自定义处理流程,如权限控制、日志记录等,增强了应用的灵活性...

    spring_2.5_web.zip

    4. **commons-fileupload.jar**: 这是Apache Commons FileUpload库,提供了处理HTTP请求中文件上传功能的支持。在Spring MVC中,它可以方便地处理用户通过表单上传的文件。 5. **portlet-api.jar**: Portlet API 是...

    JAVA上百实例源码以及开源项目源代码

    FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户可以在终端上...

    java开源包2

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包1

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包11

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包3

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包6

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包5

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包10

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包4

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包8

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包7

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包9

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

Global site tag (gtag.js) - Google Analytics