我使用DAO插入对象的阵列(例如用户[])向室内表:
@Insert(onConflict = OnConflictStrategy.REPLACE)
void insertAll(User... user);
然而,可能的是,内部用户[]某些对象为空。在这种情况下insertAll()方法抛出一个NullPointerException。
是否有可能以某种方式跳过空值?我宁愿使用@Insert注释,而不是写一个自定义插入查询或预先筛选出空值的。
在这里有人可能知道某种做你想做的事的库定义的方法,但这种方法来到我的脑海里第一。
我希望房间就实现了一个工具来实现这一点,例如像@Ignore(null)
注解,但似乎这样的情况并非如此。这是我的解决方案,现在:
调用ArrayUtils.removeAllOccurences(users, null)
的方法org.apache.commons.lang3.ArrayUtils
和使用结果作为insertAll()
参数。