JAVA相关,急

来源:百度知道 编辑:UC知道 时间:2024/05/23 16:10:58
描述一下问题:

model里:

public class Sys1 extends Sys2 implements Serializable {}

Sys1类下有email1,email2, Sys2类下有email3
getset方法对

在Controller里
Sys1 sys =new Sys1();
sys.setEmail1("111");
sys.setEmail2("222");
sys.setEmail3("333");

之后用getHibernateTemplate().save(sys)

在getHibernateTemplate().save(sys)处打断点,debug,能看见sys内的值都在。但是运行完毕后,新插入的数据只有字段email1、email2,缺少了继承的那个字段email3

请问这是怎么回事,应该怎么改正?
回答二楼:我的问题已经说的很清楚了。如果是没映射上,那别说save不上了,就连set值都set不进去。现在是set进去值了,并且走到getHibernateTemplate().save(sys)的参数里面所携带的值一个都不缺,就是save不上。私不私有就更不用说了

谁来帮我解答一下啊!!!h高手!!!

一般来说hibernate中操作的是POJO对象.
看看你的hbm文件里面email3是否和数据库里面列映射。

你应该去专业的IT开发网站去问题,如:community.csdn.net

用hibernate的时候 肯定有一个Sys1和表的 影射文件,如果在影射文件中没有配置email3,或者email3为sys2私有的属性的话,那肯定是不能save进去的