manhunt
manhunt
2009-08-21 22:34

用javabean对应数据库表为主键(int型)作为criteria查询条件时,会查询出所有表中数据?

  • hibernate

亲自试了下,假如id为主键 也是标识列 查询时居然会查处所有数据?换了其它列作为条件查询时就没问题了,这是怎么回事啊?
[b]问题补充:[/b]
[code="java"]
//这是dao层的方法
public List search(PetInfo condition) {
// TODO Auto-generated method stub
return super.getHibernateTemplate().findByExample(condition);
}
//这里main方法测试
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");

    PetInfoDao x = (PetInfoDao) context.getBean("petInfoDao");
    PetInfo petInfo = new PetInfo();
    petInfo.setPetId(new Integer(1));//这里无论设置都少都会查询所有数据,即使数据表没有那个值
    List list = x.search(petInfo);
    PetInfo pet = (PetInfo) list.get(0);
    System.out.println(petInfo.getPetId()+":"+pet.getPetId()+"list size: "+list.size());
}

[/code]

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答