2012-04-19 73 views
0

我已经创建了一个javaee应用程序,其中包括使用朴素贝叶斯进行情感分析。为了使情感算法有效,我们必须先对它进行训练,所以我想创建一个对象来处理训练,只要服务器开始一次又一次地避免训练。我想过使用单例ejb来做到这一点,但我不知道这是否是正确的方法,也有朋友建议使用托管bean。这些方法对我的问题有哪些优缺点?我是朝着正确的方向看,还是只是在错误的树上吠叫?Javaee mbean vs singleton

+0

也许看看http://stackoverflow.com/questions/9651132/jsf-singleton-vs-application-scoped-managed-bean-differences – djmj 2012-04-19 22:37:02

回答

1

MBean非常适合在运行时修改应用程序的状态。如果您想在运行时更改算法的训练并使用MBean,那么在启动时也可以使用它们进行初始化。

此外,我建议在包含您的算法的类的设计中,将您在训练过程中计算的系数进行外化。然后,您可以坚持这些系数,而不必重新运行培训。开始时,您的应用程序将从持久性加载系数。

将可加载系数与MBean结合使用,可以使用后者在运行时检索或重新加载系数集。你会想确保重新加载它们是原子的。这将使您能够随时随地调整您的分析。