【发布时间】:2014-07-18 13:39:35
【问题描述】:
我有很多操作(即:静态方法在扩展 Controller 的类中返回 Result 类型)在我的应用程序中几乎相同。这是关于粗鲁的行动。我有 bdd 表,对于每个表,我执行以下操作:list、new、update... 唯一改变的是与表关联的 Model 类的类型。
如果只是类型改变,是时候调用泛型函数了!问题是:没有办法在 java 中创建通用静态函数。所以行动不能是通用的。
here 描述的解决方案不再有效。 这个特性非常重要,它一定是在某个地方实现的。我已经想过的一个想法:
动作组合
动作组合是一种在另一个函数之前调用函数的方法。由于动作不是静态的,理论上可以创建通用动作。
问题一:如何通过注解传递泛型类型?
问题 2:我已经使用动作组合来确保用户已登录。由于我的登录动作是类作用域,而通用 crud 动作将是方法作用域,所以 crud 动作将在登录动作之前处理,并且没有方法来扭转它。
结论
这非常重要,因为我将有 20 多个表,并且我想尽可能少地复制过去。
有没有办法实现可以重复使用和覆盖尽可能多次的通用动作(即:静态)。
【问题讨论】:
标签: java generics playframework-2.0