PlayFramework,如何注册BeanPersistListener? [英] PlayFramework, how to register a BeanPersistListener?

查看:74
本文介绍了PlayFramework,如何注册BeanPersistListener?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我发现了 BeanPersistListener 我想注册一些模型,但没有找到任何文档,无论是Ebean还是PlayFramework都没有提供有关如何集成它的文档.

I discovered the BeanPersistListener that I'd like to register to some of my models, but I didn't find any documentation, from Ebean nor PlayFramework on how to integrate it.

从文档中:

可以通过类路径搜索自动找到BeanPersistListener,也可以通过ServerConfiguration.addEntity()以编程方式添加BeanPersistListener.

A BeanPersistListener is either found automatically via class path search or can be added programmatically via ServerConfiguration.addEntity().

显然,它不是自动找到的(我在实现的方法中添加了一些Logger.info,但未显示任何内容),所以我想通过ServerConfiguration添加它,但是如何?在哪里?

Apparently, it isn't found automatically (I added some Logger.info in the implemented methods, and nothing was shown), so I'd like to add it via ServerConfiguration, but how? where?

我也怀疑这是版本问题.从我所看到的,BeanPersistListener来自Ebean 2.6.0,但是我找不到正在运行哪个版本的Ebean PlayFramework(我正在使用2.0.4).

I'm also suspecting it's a version problem. From what I've seen, BeanPersistListener is from Ebean 2.6.0, but I can't find which version of Ebean PlayFramework is running (I'm using 2.0.4).

推荐答案

First Play 2.0.4使用Ebean版本2.7.3

First Play 2.0.4 uses Ebean version 2.7.3 [1]

要注册您的侦听器,您可以尝试使用ServerConfigStartup,如此文档中所示:

And for registering your listener, you could try to use a ServerConfigStartup as shown in this documentation:

package models;

import com.avaje.ebean.config.ServerConfig;
import com.avaje.ebean.event.ServerConfigStartup;
import com.avaje.ebean.event.BeanPersistListener;

public class MyServerConfigStartup implements ServerConfigStartup {
    @Override
    public void onStart(ServerConfig serverConfig) {
        serverConfig.add(new BeanPersistListener() {
            ....
        });
    }
}

我从未测试过,我认为值得尝试:-)

I never tested it, I think it is worth a try :-)

评论更新:

您需要将这些类放在models包下或models包的子级下,以便Ebean可以找到它们.

You'll need to put these classes under the models package or a child of the models package so that Ebean can find them.

这篇关于PlayFramework,如何注册BeanPersistListener?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆