spring MVC 读取csv文件并写入数据库
时间: 2023-09-09 18:13:07 浏览: 157
首先需要在 Spring MVC 中添加相关依赖,如 opencsv 和 mysql-connector-java。然后可以编写一个 Controller 类来处理读取 CSV 文件和写入数据库的逻辑,示例代码如下:
```java
@Controller
public class CsvController {
@Autowired
private DataSource dataSource; // 注入数据源
@RequestMapping("/upload")
public String upload(MultipartFile file) throws IOException {
InputStream input = file.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(input));
CSVReader reader = new CSVReaderBuilder(br).build();
String[] nextLine;
while ((nextLine = reader.readNext()) != null) {
// 读取 CSV 文件中的每一行数据,并将其写入数据库
String name = nextLine[0];
int age = Integer.parseInt(nextLine[1]);
// 写入数据库的逻辑
Connection conn = dataSource.getConnection();
PreparedStatement stmt = conn.prepareStatement("INSERT INTO users (name, age) VALUES (?, ?)");
stmt.setString(1, name);
stmt.setInt(2, age);
stmt.executeUpdate();
stmt.close();
conn.close();
}
return "redirect:/";
}
}
```
在上述示例代码中,我们使用 opencsv 库来读取 CSV 文件,使用 mysql-connector-java 库来连接 MySQL 数据库,并将其注入到数据源中。然后,我们使用 Spring MVC 的文件上传功能来获取上传的 CSV 文件,使用 BufferedReader 和 CSVReader 来读取 CSV 文件的内容,将其写入到数据库中。最后,使用 redirect:/ 返回到页面。
阅读全文