如何从多部分文件中读取下载的文件(xml,txt),并将此数据逐行保存到数据库中



我只是在学习Java(Spring boot),但我需要做一个这样的小项目。我需要将文件(xml,txt)上传到服务器,逐行读取并将其放入数据库中(表中有一个字段 - 正文(类型字符串)将下载文件的内容放在那里。

我实现了文件上传到服务器(也读行),但我无法将这些数据放入数据库中。下载的文件有一个变量"完整数据",其中包含下载文件的数据。如何将其传递给变量"body",以便将其存储在数据库中?或者如何以不同的方式做?

我找到了如何将文件本身放入数据库的示例,但我需要放置文件的内容(内部文本)。

/*File download*/
@RequestMapping(value = "/upload", method = RequestMethod.POST)
public @ResponseBody String handleFileUpload(@RequestParam("name")String name,
@RequestParam("file")MultipartFile file){
if (!file.isEmpty()) {
try {
byte[] bytes = file.getBytes();
String completeData = new String(bytes);
BufferedOutputStream stream =
new BufferedOutputStream(new FileOutputStream(new File(name + "-uploaded")));
stream.write(bytes);
stream.close();
return completeData;
//              return "Вы удачно загрузили " + name + " B " + name + "-uploaded !";
} catch (Exception e) {
return "Вам не удалось загрузить " + name + " => " + e.getMessage();
}
}else{
return "Вам не удалось загрузить " + name + " потому что файл пустой.";
}
}
/*Domain*/
public class Docs {
private String body;
public Docs(){
super();
}
public Docs(String body){
super();
this.body=body;
}
public String getBody() {
return body;
}
public void setBody(String body) {
this.body = body;
}
}

我将变量"完整数据"传递给dao.addFile

dao.add(completeData);

道.class:

public void add_b_utmdocs(string body){
template.update ("insert into docs (body) values (?)", body);
}

最新更新