java中list集合怎么存数据库
时间: 2023-09-26 09:09:20 浏览: 168
CPD4414-Assign2
要将Java中的List集合存储到数据库中,需要先将List转换为字符串或者字节数组。常见的做法是使用Json库将List转换为Json字符串,然后将Json字符串存储到数据库的text类型字段中。
以下是一个使用Jackson库将Java中的List转换为Json字符串,并将Json字符串存储到MySQL数据库的代码示例:
```java
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<String> myList = new ArrayList<>();
myList.add("apple");
myList.add("banana");
myList.add("orange");
ObjectMapper mapper = new ObjectMapper();
try {
String jsonString = mapper.writeValueAsString(myList);
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "username", "password");
String insertSql = "INSERT INTO mytable (list_data) VALUES (?)";
PreparedStatement statement = connection.prepareStatement(insertSql);
statement.setString(1, jsonString);
statement.executeUpdate();
statement.close();
connection.close();
} catch (JsonProcessingException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
在上面的代码中,我们首先创建了一个String类型的List集合,然后使用Jackson库将List转换为Json字符串。接下来,我们使用JDBC连接到MySQL数据库,并将Json字符串插入到名为mytable的表中的list_data列中。需要注意的是,在执行插入操作之前,需要将Json字符串作为PreparedStatement的参数传递,并调用executeUpdate方法来执行插入操作。
当然,如果您的List集合中存储的是自定义对象,您需要自行实现对象转Json字符串的方法。
阅读全文