BigInteger构造函数的切入点

时间:2019-03-01 09:37:46

标签: java spring-boot aop

我有一项服务,其中我必须将请求的所有参数分配给模型对象。请求中所有参数的类型均为String,而model的字段很少为string,有些字段为BigInteger。我正在使用BigInteger的带有字符串参数的构造函数来进行转换。但是,该请求可以包含某些字段的空值。因此,一种方法是在调用BigInteger构造函数之前检查每个字段是否为空,以防止空指针异常。由于字段数量非常大,我想知道是否可以使用AOP?如果是这样,切入点表达式应该是什么?

1 个答案:

答案 0 :(得分:2)

经典XY problem/question

只需为BigInteger创建一个工厂方法,然后使用它代替构造函数:

public static BigInteger fromString(String bigIntString) {
  if (bigIntString == null || bigIntString.length() == 0) {
    return null;
  }

  return new BigInteger(bigIntString);
}

对于这样一个简单的问题,无需利用AOP及其附带的复杂性。