中易网

hibernate已经查询到了对象列表,想remove掉某个对象,但是remove不掉?

答案:1  悬赏:70  
解决时间 2021-11-29 03:48
employeeTypeLists= employeeTypeFacade.findAll() ;
employeeType= employeeTypeFacade.findById(employee.getEmployeeType().getId()) ;
employeeTypeLists.remove(employeeType) ; 1式

为什么1式不起作用呢 ?
我把employee.getEmployeeType().getId()这句话打印输出,正是我想移除的对象id,并且
findAll()函数内部这样写的:(抛异常语句就先不在此列出了)
String queryString = "from EmployeeType order by id";
Query queryObject = HibernateUtil.openSession().createQuery(queryString);
return queryObject.list();
查询结果是正常的,
findById()函数内部这样写的:
Session s = HibernateUtil.openSession() ;
EmployeeType instance = (EmployeeType) s.get(EmployeeType.class, id);
returninstance;查询结果也是正常的,id也正确,(findall()查询的对象列表也包括这个)

但为什么就是移除不掉??求高手解惑!!
最佳答案
你这是2个对象,employeeTypeLists中的相当于你employeeType的那个对象,和employeeType不是一个对象,地址不一样,肃然hibernate支持对象查询等操作,但是你弄混了,hibernate是用对象做数据库操作,你在list里删除元素这不是对数据库操作,你可以用循环,
for(int i=0;i if(employeeTypeLists.get(i).getId==你要删的id){
employeeTypeLists.remove(i);
}

}
用增强for如循环更好写,我不知道你的对象类型就用原for循环谢了
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么油漆工的徒弟叫好色之徒???
星街的意思是什么?星街的释义是什么啊?
谁能推荐款单反入门机型?
小孩天门在几个月内长好属于正常?
怎样注册一个汽车销售加维修的公司,都需要什
嗔忿的意思是什么啊?请解释下!
在农村,如何在短时间内将一种新产品推上市场
塑料扣板吊顶的价格多少
精油可以直接按摩面部吗?
学生上课坐在桌子上,老师怎么办
長謝的意思是什么?長謝的释义是什么啊?
爱康跑步机11209性价比怎么样?
[上海]帮忙发一些花鸟市场的地址~!
配gtx970黑将显卡需要什么配置?
华为手机充电发热严重谁知道如何解决?
推荐资讯
企业如何进行版本管理
总胆红素和直接胆红素都偏高,会是什么情
哪个品牌的电烤箱评价高?
鼻子上的黑头不停的滋生到底该怎么办?而且每
江西电视指南频道播出《吃出健康来》的让白发
太阳能专用蓄电池价格贵不贵?
松原市有电梯销售公司吗?
我想在宁波鄞州区买套房子,最近万科房产刚降
请问下现在农行是几点开门啊。我急着办卡,我
楼房顶层装修时室内如何增加隔热层?
下午吃水果会胖吗?比如香蕉、苹果.
香蕉早餐,是什么?如何做?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?