h2数据库数据迁移到mysql数据库
在网上搜了一些方法,有的说有一些坑,有的操作起来看起来很麻烦,这里我尝试了一种实现方式,未必很好,但是自己用了一下,没发现坑,也还算方便,记录分享一下。适用于表数量少,数据量小。示例如下:
- 在项目中,将数据查出并序列化到文件中,数据库实体类需实现Serializable接口,定义一个serialVersionUID:
…
public class User implements Serializable {
public static final long serialVersionUID = 0L;
…
- 序列化到文件:
List all = userDao.findAll();
try (ObjectOutputStream objectOutputStream = new ObjectOutputStream(new FileOutputStream(“data.txt”))) {
objectOutputStream.writeObject(all);
} catch (Exception e) {
e.printStackTrace();
}
- 将数据库配置修改为mysql,并从文件读出数据写入msyql数据库:
try (ObjectInputStream objectInputStream = new ObjectInputStream(new FileInputStream(“data.txt”))) {
List list = (List) objectInputStream.readObject();
userDao.saveAll(list );
} catch (Exception e) {
e.printStackTrace();
}