我不想在application.conf文件中定义默认数据库配置.相反,我想以编程方式构造默认的EbeanServer并将其自己注入DAO.
我遇到的问题是,如果我为EbeanServer提供程序创建一个guice绑定而没有在application.conf文件中定义任何配置,则播放错误,说它无法找到默认配置.
这是我的代码:
public class EbeanServerProvider implements Provider<EbeanServer> {
final Logger.ALogger log = Logger.of(this.getClass());
@Override
public EbeanServer get() {
ServerConfig serverConfig = new ServerConfig();
DataSourceConfig dataSourceConfig = new DataSourceConfig();
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
Config dbConfig = ConfigFactory.load(classLoader,"env/default.conf");
/* Read the config files */
final String DB_DRIVER = dbConfig.getString("db.default.driver");
final String DB_URL = dbConfig.getString("db.default.url");
final String DB_USERNAME = dbConfig.getString("db.default.username");
final String DB_PASSWORD = dbConfig.getString("db.default.password");
log.debug("{}",DB_DRIVER);
log.debug("{}",DB_URL);
log.debug("{}",DB_USERNAME);
log.debug("{}",DB_PASSWORD);
/* Load the database driver */
dataSourceConfig.setDriver(DB_DRIVER);
try{
Class.forName(DB_DRIVER).newInstance(); …Run Code Online (Sandbox Code Playgroud) 我是playframework的新手,只是在学习.我在依赖项,模块,插件和子项目之间有点困惑.他们如何彼此不同?
这是我所理解的,我可能是错的.
依赖项 - 是播放应用程序运行所需的所有库.子项目 - 是另一个父应用程序内的播放应用程序.不确定'插件'和'模块'.
有人可以解释他们有何不同?
注意:我正在使用Play 2.4和play-java,不确定定义是否随play-scala而变化.