创建类型作为基元类型的包装器

时间:2016-03-03 14:48:37

标签: java typechecking

我们经常会有很多实体类型的项目(Hibernate / JPA,...)。实体类型具有基本类型,如int,long或ID的字符串。我们有DAO和服务来获取和返回这些原语。

long doSomething(long blubId, long blabId, long fooId, long barId, ...)

正如您所看到的,它可能非常令人困惑。我想利用静态类型检查并为其提供类型。

long doSomething(BlubId blubId, BlabId blabId, FooId fooId, BarId barId, ...)

但这似乎效率低下。您有任何想法如何解决这个问题?

注意,在JEE上下文中有时需要使用原语进行处理(JSF支持的bean,持久性,...)

2 个答案:

答案 0 :(得分:0)

这似乎是构建器模式的主要候选者,你有一个带有DoSomethingOptions的{​​{1}}类,它通过命名方法显式创建选项,以避免混淆参数顺序。

说实话,我没有看到你的初始方法非常低效,但这实际上取决于你调用DoSomethingOptionsBuilder方法的频率以及方法的实际逻辑需要多长时间。显然,使用原始包装器会占用更多空间和一段时间,但与任何实际计算相比,它几乎无关紧要。

答案 1 :(得分:-1)

据我所知,您可能对编写已经编写的Java包装类Java Primitive Wrapper class

感兴趣