心急吃不了热豆腐--hibernate一对多报错找不到列名

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'product0_.FACTORYID' in 'field list'
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:395)
    at com.mysql.jdbc.Util.getInstance(Util.java:370)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1038)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4187)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4119)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2570)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2731)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2799)
    at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2139)
    at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2306)
    at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.extract(ResultSetReturnImpl.java:70)
    ... 14 more

 

错误出现原因是在one-to-many的column属性值我填写的是本持久类对应的数据库表的主键,其实应该填写的是主表的对应外键

posted @ 2016-04-17 19:23  guodaxia  阅读(158)  评论(0编辑  收藏  举报