FormData和RestEasy的实例

html的script

//上传文件
var fileObj = document.getElementById("id").files[0];
//url
var FileController = "url";

// FormData 对象
var form = new FormData();
form.append("file", fileObj);
//input text的内容
form.append("id", text.value);

// XMLHttpRequest 对象
var xhr = new XMLHttpRequest();
// xhr.responseType = 'json';
xhr.open("post", FileController, false);
xhr.onload = function(e)
{
  if (this.status != "200") {
   //返回错误....处理这里写
  }
  // 返す値の取得
  var reponseObject = jQuery.parseJSON(this.response);

};
// callback
// xhr.onreadystatechange = processResponse;
xhr.send(form);
}

Resource.java


public Response addUserBatch (MultipartFormDataInput input) {

// フォーム
Map<String, List<InputPart>> uploadForm = input.getFormDataMap();

// textValue
InputPart inputTenantPart = uploadForm.get("key").get(0);
***重要:String aaaId = inputTenantPart.getBodyAsString();

// ファイル
List<InputPart> inputParts = uploadForm.get("file");
InputPart inputPart = inputParts.get(0);
MultivaluedMap<String, String> header = inputPart.getHeaders();
String fileName = HttpRequestUtil.getFileName(header);
int index = fileName.lastIndexOf(Constant.Symbol.DOT);
if (index != -1) {
    String suffix = fileName.substring(index);

} else {
    status = Status.NOT_FOUND;

    return Response.status(status).entity(mapMutiAddResult).build();
}

InputStream inputStream = inputPart
        .getBody(InputStream.class, null);
}
/************************************************/


// ファイルの読む
BufferedReader reader = new BufferedReader(
        new InputStreamReader(inputStream,
                Constant.Charset.SHIFT_JIS));
csvReader = new CSVReader(reader);

// 内容をリストに格納する.
resultList = csvReader.readAll();

// 空文字列の行の場合、
for (String[] line : resultList) {
    if (StringUtil.isEmpty(StringUtils.join(line))) {
        // 総行数
        emptyRecordCount = emptyRecordCount + 1;
    }
}

// 处理文件的内容.

// ファイル内容のチェック
try {
    // 一行目からループ
    for (int i = 1; i < resultList.size(); i++) {


        // カレント行
        String[] row = resultList.get(i);


        // カレント行が空文字列の行の場合、
        if (StringUtil.isEmpty(StringUtils.join(row))) {
            continue;
        }
        // カレント行の列数のチェック、エラー場合、
        if (row.length < Constant.HEADERLINE_LENGTH) {
            // 次の行に遷移する。
            continue;
        }


    }

} catch (Exception exception) {

}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值