Java 如何使用Ebean in-Play框架将初始数据加载/插入数据库?
我需要一些初始数据从csv文件到数据库。我在玩Eben!框架我读了那本书。它说使用YAML文件存储数据并调用Ebean.save。这是在测试中完成的 我的问题是: 我应该在哪里插入数据?测试可能不是理想的地方,因为这些数据应该用于生产 我是否可以编写自己的代码,从现有的csv文件中获取数据,而不是使用YAML文件 任何建议或文件链接将不胜感激Java 如何使用Ebean in-Play框架将初始数据加载/插入数据库?,java,playframework,ebean,Java,Playframework,Ebean,我需要一些初始数据从csv文件到数据库。我在玩Eben!框架我读了那本书。它说使用YAML文件存储数据并调用Ebean.save。这是在测试中完成的 我的问题是: 我应该在哪里插入数据?测试可能不是理想的地方,因为这些数据应该用于生产 我是否可以编写自己的代码,从现有的csv文件中获取数据,而不是使用YAML文件 任何建议或文件链接将不胜感激 谢谢 通过进一步搜索,我发现解决方案如下所述 执行初始插入的代码需要挂接到游戏的启动中 挂接Play的启动非常简单,只需创建一个名为Global的类,该类
谢谢 通过进一步搜索,我发现解决方案如下所述 执行初始插入的代码需要挂接到游戏的启动中 挂接Play的启动非常简单,只需创建一个名为Global的类,该类在根包中实现GlobalSettings,并重写onStart方法。现在,让我们通过创建app/Global.java文件来实现这一点。挂接播放的启动非常简单,只需创建一个名为Global的类,该类在根包中实现GlobalSettings,并重写onStart方法。现在让我们通过创建app/Global.java文件来实现这一点 注意,它说类需要在根包中 代码示例:
import play.*;
import play.libs.*;
import com.avaje.ebean.Ebean;
import models.*;
import java.util.*;
public class Global extends GlobalSettings {
@Override
public void onStart(Application app) {
// Check if the database is empty
if (User.find.findRowCount() == 0) {
Ebean.save((List) Yaml.load("initial-data.yml")); // You can use whatever data source you have here. No need to be in YAML.
}
}
}
通过进一步搜索,我发现解决方案如下所述 执行初始插入的代码需要挂接到游戏的启动中 挂接Play的启动非常简单,只需创建一个名为Global的类,该类在根包中实现GlobalSettings,并重写onStart方法。现在,让我们通过创建app/Global.java文件来实现这一点。挂接播放的启动非常简单,只需创建一个名为Global的类,该类在根包中实现GlobalSettings,并重写onStart方法。现在让我们通过创建app/Global.java文件来实现这一点 注意,它说类需要在根包中 代码示例:
import play.*;
import play.libs.*;
import com.avaje.ebean.Ebean;
import models.*;
import java.util.*;
public class Global extends GlobalSettings {
@Override
public void onStart(Application app) {
// Check if the database is empty
if (User.find.findRowCount() == 0) {
Ebean.save((List) Yaml.load("initial-data.yml")); // You can use whatever data source you have here. No need to be in YAML.
}
}
}
Play Framework 2.4解决方案,用于在应用程序启动时使用Ebean加载初始数据: 首先,创建一个要在其中执行初始数据加载的类。根据这份文件 确保将MainModule类添加到application.conf
# modules
play.modules.enabled += "module.MainModule"
Play Framework 2.4解决方案,用于在应用程序启动时使用Ebean加载初始数据: 首先,创建一个要在其中执行初始数据加载的类。根据这份文件 确保将MainModule类添加到application.conf
# modules
play.modules.enabled += "module.MainModule"
这是不赞成的