java – HIbernate没有获取数据库记录中字段为null的值
发布时间:2020-05-24 13:04:43 所属栏目:Java 来源:互联网
导读:我使用下面的hibernate代码从数据库中获取数据. SessionFactory factory = null; Session session = null; try { factory = getSessionFactory(); session = factory.openSession(); final Criteria
|
我使用下面的hibernate代码从数据库中获取数据. SessionFactory factory = null;
Session session = null;
try {
factory = getSessionFactory();
session = factory.openSession();
final Criteria criteria = session
.createCriteria(CrfEmailDataBean.class);
criteria.add(Restrictions.eq(CAMPN_NBR,campNbr));
returnList = criteria.list();
} catch (Exception e) {
logger.error(e.getMessage());
throw new DAOException(e);
} finally {
DBUtil.close(factory,session);
}
if (logger.isInfoEnabled()) {
logger.info(LOG_METHOD_EXIT);
}
return returnList;
}
在CrfEmailDataBean类中,我已经声明了一个私有的字符串crfEmailTypeCd;数据库中为null的字段.由于null,它不在返回列表中设置记录.如果我去数据库中的字段内输入一个值,它就会获取. 我尝试直接在sql数据库上运行查询,形成的查询是正确的并获取所有数据. 为什么不提取该记录?我该如何解决这个问题? 解决方法当你使用类型属性原语相同时,需要设置默认值,相同的零(0)或(a)(..)private int number; private int value; private char option; 如果hibernate数据库准备就绪,那么当Hibernate生成器的转换器出错时 >这种从不用户原始类型的解决方案 第一项 private Integer number; private Integer value; private Character option; 最后一项测试 public class Test{
public static void setInt(int value){
System.out.println(value);
}
public static void main(String[] args)
{
Integer testValue=null;
Test.setInt(testValue);
} } (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
