其实我对SSH也不是非常的了解,今天遇到个怪事,所以大家帮忙分析分析:
话说有一张表A(自动生成),有一个字段sn表示编号。
A.java、AForm.java和A.xml里都有sn,但是A.hbm.xml里漏写了sn,所以数据库在自动生成表A时没有字段sn。
我在新建表A的每一条记录时,都会在A.action里的setSnAtFirst()中给AForm的sn赋值为A.length+1,由于数据库中没有sn字段~所以没赋值到数据库中去。
但是我在JSP中读取AForm的记录时,却可以读到sn的值,即A.length+1(重启服务器或者重启电脑后仍可以读到,我给setSnAtFirst()设了断点,debug发现读取时是不会赋值的)
那么请大家给我分析分析~难道form是永久存储的?那还要数据库干什么?A.length+1到底是存在哪里?事情的起因是我在A.hbm.xml里漏写了sn,加上sn后就一切正常,但是这真是太奇怪了,各位也可以还原下我的说的看会不会也出现这样的情况。