我必须编写一个 Restful 服务,该服务使用 Excel 文件将其映射到一个类中并将其写入数据库。
@POST
@Path("/insertDataInDB)
@Consumes(MediaType.???)
public Response insertDataInDB(???) {
//do Stuff
}
我的第一个想法是使用 ByteStream,而不是使用 Apache POI 解释流。 但在这里我得到了一个异常:“org.jboss.resteasy.spi.UnsupportedMediaTypeException”
@POST
@Path("/insertDataInDB")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public void insertDataInDB(@FormDataParam("inputfile")
File inputfile) {
//do Stuff
}
有谁知道要使用什么 MediaType 和什么类型的 java DataType?
或者谁有更好的主意?
最佳答案
对于有同样问题的人,这对我有用。
@POST
@Path("/insertDataInDB")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public void insertDataInDB2(@FormDataParam("inputfile")
MultipartFormDataInput inputfile) {
Map<String, List<InputPart>> uploadForm = inputfile.getFormDataMap();
List<InputPart> inputParts = uploadForm.get("inputfile");
//i have only one inputPart
InputPart inputPart = inputParts.get(0);
try {
InputStream inputStream = inputPart.getBody(InputStream.class, null);
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
XSSFSheet sheet = workbook.getSheetAt(0);
System.out.println(sheet.getSheetName());
} catch (IOException e) {
e.printStackTrace();
}
}
关于java - 如何编写使用 Excel 文件的 RestService 帖子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21383440/