0

我有一些构建 Hibernate Search 模型的通用方法。

基本上它需要 2 个键和一些输入。键1!=键2

例子

public SearchModel getSearchModelA(String key1, String key2, List<String>)...

public SearchModel getSearchModelB(String key1, String key2, String input)...

我可以知道我应该如何重构这个类,因为

1)客户端总是需要提供2个密钥(最好的方法将它们结合起来?

调用者示例

Helper.getSearchModelB(CONSTANTS.getKeyABC, CONSTANTS.getKeyABC,abc)

并且密钥可能很长。

2) 班级越来越大,我希望班级保持在 1000 行以下

我已经提供了一个带有所有帮助方法的静态类来创建它,SearchModel但是调用者是一个 Facade 并且很混乱。

4

1 回答 1

1

您可以使用varargs,而不是使用 List 作为最终参数:

public SearchModel getSearchModelA(String key1, String key2, String... input)

这将接受单字符串参数(但将其放入单元素数组)或多字符串参数(表示为字符串数组而不是列表)。

于 2013-03-05T17:18:14.367 回答