java - 如何编写使用 Excel 文件的 RestService 帖子?

标签 java excel rest post

我必须编写一个 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/

相关文章:

java - Dagger 2 : @Component. Builder 缺少所需模块或组件的 setter : [appi. example.com.dagger.AppModule]`

python - 在 Excel 中删除 Pandas 条件格式

excel - MS Access 中存在空白记录时 VBA 数据类型不匹配

vba - 如何避免每次循环都需要激活工作表

java - JSONArray 对数据进行额外转义

java - PreAuthorize ("isAuthenticated()") 不适用于 RestController

java - 如何从protoc.exe获取类文件

java - 如何从具有泛型类型的抽象类调用方法(使用 java 反射)

java - 无法在 Java 的 CopyOnWriteArraySet 中删除或找到对象

java - spring-boot REST POST API 发送文件