用HQL查询出来的对象是持久化对象吗?

问题描述

类Member对应表member,主键是自增的,字段名id,类Series对应表series,其中有个member字段,指向member表的id类Series中的member属性已经做了注解:@ManyToOne(targetEntity=Member.class)@JoinColumn(name="member")publicMembergetMember(){returnmember;}

现在有一段代码Seriesseries=newSeries();.....series.setMember(member);session.save(series);//报错,hibernate把member当成一个二进制数据varbinary往数据库里存,当然报错了,应该存member的id才对,怎样让hibernate知道这里要存的是member的id而不是把member对象存进去呢?

解决方案

解决方案二:
错误可以贴出来么?
解决方案三:
吧代码给全了!!!
解决方案四:
报错正常因为你实体类中member这个属性代表映射的类可是你的@JoinColumn里面的也用了member这个属性名JPA就会用这个member属性来作为映射的外键。而你member又是个对象当然会出现这种情况。正常的数据库设计你Series表的应该是memberId才对要么你改成memberId要么你把你member属性换个名字别与这个字段名相同
解决方案五:
你里面就是放的menber对象你是做了关联么关联做好了的话你存对象进去也没关系他数据会自动存id的啊
解决方案六:
我发现问题了,是代码没自动编译,代码是正确的。HQL查出来的是持久化对象吗?
解决方案七:
引用5楼qw7w7的回复:

我发现问题了,是代码没自动编译,代码是正确的。HQL查出来的是持久化对象吗?

数据库中有数据,session中有兑现,就是持久化对象。你说的这种情况是持久化对象。

时间: 2024-08-18 04:16:41

用HQL查询出来的对象是持久化对象吗?的相关文章

[NHibernate]HQL查询

目录 写在前面 文档与系列文章 查询的几种方式 HQL查询 一个例子 总结 写在前面 上篇文章介绍了nhibernate在项目中的基本配置,包括数据库连接字符串的设置,映射文件的配置及需注意的地方,这篇文章将介绍nhibernate的查询方法. 文档与系列文章 [Nhibernate]体系结构 [NHibernate]ISessionFactory配置 [NHibernate]持久化类(Persistent Classes) [NHibernate]O/R Mapping基础 [NHiberna

ssh-使用SSH框架,hql查询时候语句有问题,怎么修改????

问题描述 使用SSH框架,hql查询时候语句有问题,怎么修改???? org.springframework.orm.hibernate3.HibernateQueryException: Path expected for join! [select a.title,a.docSize,a.createTime,b.value,c.value from com.aodong.juice.wendang.entity.JuiceDocument as a left join JuiceCombo

hql-一个关于HQL查询语句的问题

问题描述 一个关于HQL查询语句的问题 查询一个实体类的部分属性,比如,这个实体类中有另外的一个实体类,但不想去查询这个实体类,只想查询原来实体类的私有属性,应该怎么写语句? 解决方案 可以直接写SQL的,查询字段只查询某些属性就可以了.类似: session.createQuery("select username,age from User where id=2");

hibernate hql查询问题

问题描述 hibernate hql查询问题 遇到个hibernate hql查询的问题,求高手解答 实体类A包含实体类T属性,实体类T有两个子类T1,T2,代码如下: A{ T t; } T{ } T1 extends T{ } T2 extends T{ } 现在我要查询A,条件是T为T2的类型,HQL语句应该怎么写? 解决方案 除了Java类与属性的名称外,查询语句对大小写并不敏感. 所以 SeLeCT 与 sELEct 以及 SELECT 是相同的,但是 org.hibernate.eg

大神帮帮忙-ssh中2个表联合hql查询流程问题

问题描述 ssh中2个表联合hql查询流程问题 我的hql语句是用Guide 和UserGuide这两个表进行连接查询结果,执行hql后用Guide接收其返回值,那么我需要在Guide实体类中将UserGuide实体类做为属性引入,是不是这样的流程,还有没有其他要注意的.最好有一些代码让我参考参考. 解决方案 你这样也行. 你要做两表联查,也可以根据外键,来用hql语句查询到数据.其实查询数据有很多种方法,你觉得哪一种你熟悉,或者性能好,或者你感觉方便,你就可以 使用哪一种,看需求就行了.我推荐

hql查询报错。。。。实体类问题

问题描述 hql查询报错....实体类问题 hql语句: String hql="from CouponPublishEntity e inner join e.couponpool c where c.owner='"+userId+"' and e.pubid in ("+ids+") "; 报错 [org.jeecgframework.core.common.exception.GlobalExceptionResolver]全局处理异常捕

hql 查询问题 求指导!!!!

问题描述 hql 查询问题 求指导!!!! 消息表message: id title fb_user_id(发布消息者的id)用户表user: id, name中间表message_user: id message_id user_id(接受消息者的id)已有用户id=001;查询此用户发布的消息(message.fb_user_id=001)以及接受的消息(message_user.user_id=001),用一条hql语句查询求指导 解决方案 select * from message m

s2sh-S2SH框架中用session.createQuery(hql)查询出异常.

问题描述 S2SH框架中用session.createQuery(hql)查询出异常. 本人搭了个s2sh的框架,在用session.createQuery(hql)查询的时候出现异常,起先我以为是session未获取到,后来验证session是获取到了的,传入的参数也是获取到了的,但是还是有异常.代码如下,里面做了大量的打印语句来验证对象是否为空.public User findUser(User user) { if(user!=null){ Session session=this.get

hibernate-Hibernate一对多中,在多方的关联对象如果提供getter方法,hql查询不出结果的问题

问题描述 Hibernate一对多中,在多方的关联对象如果提供getter方法,hql查询不出结果的问题 entity @Entity @Table(name = "tb_many", catalog = "ecs") public class Many implements Serializable { private static final long serialVersionUID = 1L; @Id @Column(name="mid"