给定以下代码,我试图确定实体模型中的特定字段是否是
java.util.Date
CriteriaBuilder
.
在没有警告的情况下安全地确定实体字段类型的正确方法是什么?
CriteriaBuilder builder = em.getCriteriaBuilder();
CriteriaQuery<ExclFlagViewBE> cq = builder.createQuery(ExclFlagViewBE.class);
Root<ExclFlagViewBE> entity = cq.from(ExclFlagViewBE.class);
Expression<String> field = entity.get(key);
Class<? extends String> type = field.getJavaType();
if (Objects.equals(type, Date.class)) {
}
equals() between objects of inconvertible types
Class<capture of ? extends String> and Class<Date>
type.equals(Date.class)
当字段是日期时,也会计算为true,但会产生相同的警告(显然)