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) {
}