将MySQL一张表的数据迁移到MongoDB数据库的Java代码示例
时间: 2023-09-20 20:10:01 浏览: 52
以下是一个简单的Java代码示例,用于将MySQL数据库中一个表的数据迁移到MongoDB数据库中:
```java
import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class MySQLToMongoDB {
public static void main(String[] args) {
try {
// MySQL数据库连接配置
String mysqlUrl = "jdbc:mysql://localhost:3306/test";
String mysqlUser = "root";
String mysqlPassword = "password";
Connection mysqlConn = DriverManager.getConnection(mysqlUrl, mysqlUser, mysqlPassword);
Statement mysqlStmt = mysqlConn.createStatement();
// MongoDB数据库连接配置
MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase mongoDatabase = mongoClient.getDatabase("test");
MongoCollection<Document> mongoCollection = mongoDatabase.getCollection("myCollection");
// 从MySQL表中读取数据
String sql = "SELECT * FROM myTable";
ResultSet resultSet = mysqlStmt.executeQuery(sql);
// 将数据插入MongoDB
while (resultSet.next()) {
Document document = new Document();
document.append("id", resultSet.getInt("id"));
document.append("name", resultSet.getString("name"));
document.append("age", resultSet.getInt("age"));
mongoCollection.insertOne(document);
}
// 关闭连接
mysqlStmt.close();
mysqlConn.close();
mongoClient.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在此示例中,我们使用了MySQL的JDBC驱动程序和MongoDB的Java驱动程序。我们首先连接到MySQL数据库,并使用SELECT语句从要迁移的表中获取数据。然后,我们将数据插入MongoDB中的一个集合中。最后,我们关闭了所有连接。