首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

急hibernate发出sql语句出错 列名出错'trade0_accountID_accountID',该怎么解决

2012-01-12 
急急急!!hibernate发出sql语句出错 列名出错trade0_.accountID_accountID数据库中两个表关联AccountTrad

急急急!!hibernate发出sql语句出错 列名出错'trade0_.accountID_accountID'
数据库中两个表关联Account Trade
Trade表中的AccountID是外键 是Account表的主键
实体类设置的是多对一  
hibernate的sql语句发出出错了 'trade0_.accountID_accountID' 应为'trade0_.accountID 现在多了个ccountID

给为GGMM求解啊 帮帮小弟吧 错误及主要代码已贴在下面  

  
错误代码22:58:06,272 DEBUG SQL:111 - select trade0_.ID as ID1_, trade0_.accountID_accountID as accountID6_1_, trade0_.tradeDigest as tradeDig2_1_, trade0_.tradeMoney as tradeMoney1_, trade0_.tradeTime as tradeTime1_, trade0_.tradeType as tradeType1_ from Trade trade0_ where trade0_.accountID_accountID='123456'
Hibernate: select trade0_.ID as ID1_, trade0_.accountID_accountID as accountID6_1_, trade0_.tradeDigest as tradeDig2_1_, trade0_.tradeMoney as tradeMoney1_, trade0_.tradeTime as tradeTime1_, trade0_.tradeType as tradeType1_ from Trade trade0_ where trade0_.accountID_accountID='123456'
22:58:06,301 WARN JDBCExceptionReporter:233 - SQL Error: 1054, SQLState: 42S22
22:58:06,301 ERROR JDBCExceptionReporter:234 - Unknown column 'trade0_.accountID_accountID' in 'field list'


实体类Trade

Java code
package com.hyb.bank.model;import java.util.Date;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.ManyToOne;@Entitypublic class Trade {    private int ID;    private Account accountID;    private String tradeType;    private double tradeMoney;    private Date tradeTime;    private String tradeDigest;        @Id    @GeneratedValue    public int getID() {        return ID;    }    public void setID(int iD) {        ID = iD;    }        @ManyToOne    public Account getAccountID() {        return accountID;    }    public void setAccountID(Account accountID) {        this.accountID = accountID;    }    public String getTradeType() {        return tradeType;    }    public void setTradeType(String tradeType) {        this.tradeType = tradeType;    }    public double getTradeMoney() {        return tradeMoney;    }    public void setTradeMoney(double tradeMoney) {        this.tradeMoney = tradeMoney;    }    public Date getTradeTime() {        return tradeTime;    }    public void setTradeTime(Date tradeTime) {        this.tradeTime = tradeTime;    }    public String getTradeDigest() {        return tradeDigest;    }    public void setTradeDigest(String tradeDigest) {        this.tradeDigest = tradeDigest;    }        }


Dao
Java code
package com.hyb.bank.dao;import java.util.List;import javax.annotation.Resource;import org.springframework.orm.hibernate3.HibernateTemplate;import org.springframework.stereotype.Component;import com.hyb.bank.model.Account;import com.hyb.bank.model.Trade;@Componentpublic class TradeDao {    private HibernateTemplate hibernateTemplate;        public List<Trade> loadReamining(String accountID){        List<Trade> trades = hibernateTemplate.find        ("from Trade t where t.accountID='"+accountID+"'");        return trades;    }        public HibernateTemplate getHibernateTemplate() {        return hibernateTemplate;    }    @Resource    public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {        this.hibernateTemplate = hibernateTemplate;    }    }


[解决办法]
@ManyToOne的配置不全吧,加上@JoinColumn看看
[解决办法]
映射文件配置错误?
注解的方式,还没用过,帮不了你
[解决办法]
哦,又要接楼主送的分了

[解决办法]
你用的注解映射,怎么没有看见你映射的列呢?
你只映射了一个ID和一个many-to-one的关系!
其它对属生字段也要映射呀!

热点排行