Code Bye

hibernate联表查询

请问各位大侠 使用hibernate 如何用 HQL 实现下面的 sql语句

select  a.id,a.name, b.name bname from a join b on b.typeid = a.id
HQL?

a 对应实体 A,b 对应实体B,
如果不用加 一对一,一对多关系的时候,改咋做呢?
因为我每次加 了 一对多关系后,都会级联删除,添加,很恶心,即使这样设置了 也不管用,还是一起删除或添加

@OneToMany(cascade=CascadeType.REFRESH,mappedBy=”tplugintype”,fetch=FetchType.LAZY)  

总结:
问题1: 能在不设置 一对一,一对多关系的时候 直接用HQL 查询出 想要的结果吗?
问题2:为啥我设置了cascade = CascadeType.REFRESH ,mappedby 也设置了,为啥 还会级联删除 添加呢?
以上问题 以第一个为主 请各位大侠不吝指教。


20分
select  a.id,a.name, b.name  from  B类名 b inner join b.A对象字段 a

20分
请问你添加或删除时,有没把对象取出来。如果你只想删除某个字段,不是全部,应该是更新;如果你想添加某个属性,数据库中已经存在,那应该也是更新。更新就需要先把对象取出来再去操作,不然就会导致其他属性被覆盖。取出对象后再去设置其中某个属性。
我做的是删除操作,而不是让某个字段为null

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明hibernate联表查询