java读取JSON文件数据并插入mysq
时间: 2024-03-26 18:39:54 浏览: 129
idea Java 解析json文件并导入mysql数据库
可以按照以下步骤来读取JSON文件数据并插入MySQL数据库:
1. 使用Java中的FileReader类或者BufferedReader类读取JSON文件,并将其存储为字符串。
2. 使用Java中的JSON库,比如Jackson或者Gson,将JSON字符串转换为Java对象。
3. 遍历Java对象,将其转换为SQL语句,并插入到MySQL数据库中。
以下是一个示例代码,用于读取JSON文件并将其插入到MySQL数据库中:
```
import java.io.BufferedReader;
import java.io.FileReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import com.google.gson.Gson;
public class InsertJSONtoMySQL {
public static void main(String[] args) {
String fileName = "data.json"; // JSON文件路径
String url = "jdbc:mysql://localhost:3306/test"; // MySQL连接地址
String user = "root"; // MySQL用户名
String password = "123456"; // MySQL密码
try {
// 读取JSON文件
BufferedReader br = new BufferedReader(new FileReader(fileName));
String jsonStr = "";
String line;
while ((line = br.readLine()) != null) {
jsonStr += line;
}
br.close();
// 将JSON字符串转换为Java对象
Gson gson = new Gson();
Data data = gson.fromJson(jsonStr, Data.class);
// 连接MySQL数据库
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url, user, password);
// 插入数据
String sql = "INSERT INTO table_name (field1, field2, field3) VALUES (?, ?, ?)";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, data.getField1());
ps.setInt(2, data.getField2());
ps.setDouble(3, data.getField3());
ps.executeUpdate();
// 关闭连接
ps.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
class Data {
private String field1;
private int field2;
private double field3;
public String getField1() {
return field1;
}
public void setField1(String field1) {
this.field1 = field1;
}
public int getField2() {
return field2;
}
public void setField2(int field2) {
this.field2 = field2;
}
public double getField3() {
return field3;
}
public void setField3(double field3) {
this.field3 = field3;
}
}
```
其中,Data类是根据JSON数据格式定义的Java类,用于存储从JSON文件中读取的数据。在插入数据时,需要将Data类的属性值设置为PreparedStatement中的参数值。
阅读全文