/** * 自定义构造器 * * @param args 构造参数 * @return this */ public Builder<F, T> constructor(String... args) { builder.constructorB(args); return this; }
/** * 排除属性 * * @param fields 要排除的属性名称 * @return this */ public OrikaCopier.Builder<F, T> skip(String... fields) { if (fields != null && fields.length != 0) { for (String field : fields) { builder.exclude(field); } // Orika 默认使用全参构造,这时 skip() 不生效,需要使用不包含 skip 属性的构造方法, // 所以 Copiers 将默认值改为了无参构造,用户也可以在调用 skip() 后使用 constructor() 方法自己指定 // https://github.com/orika-mapper/orika/issues/135 builder.constructorB(); } return this; }