可能是数据库内存的数据编码格式和java代码查到的数据格式不同,也有可能是以前数据库内存的数据类型是char或者其他定长的,后来改为varchar2(...);具体为什么找到不值,没有确定原因,有知道原因的大家可以交流下
一以下是代码,unique取不到值,care,value都有值,在数据库直接执行SQL是可以查到值得,而且是部分没有数据:
public static Object uniqueObject(Class clazz, String care, Object value) {
Object unique = null;
try {
Query query = HibernateUtil.currentSession().createQuery(
"from " + clazz.getSimpleName() + " where " + care + " =:"
+ care);
query.setParameter(care, value);
unique = query.uniqueResult();
} catch