使用ssh框架的web项目配置关联关系之后查询的时候报错

提示说转换错误,但是我真不知道在什么地方错了!这个就是控制台报的错!... 提示说转换错误,但是我真不知道在什么地方错了!
这个就是控制台报的错!
展开
 我来答
明月清风618
2012-05-22 · TA获得超过737个赞
知道小有建树答主
回答量:395
采纳率:100%
帮助的人:131万
展开全部
你都没有引用另外一个关联表的ID。怎么会不报错呢。你程序里面写的是Ojbect类型的。到时候在你表里面添加的是外键的Id .你不应该写成字符类型的。hibernate配置关联的时候不匹配。
追问
谁说外键一定要id的?    你看不到这里的数据是根据一个xml文件得到的吗?    请您看清题目再做回答,如果问题解决,分就是你的.      假如你不是很清楚,就不要盲目回答!
追答
汗。。哪儿来那么多话BB。。是你报错。又不是我报错。给你解决问题就非得一定正确吗?感觉不行你不会参考别人的吗?我看不当是你做东西有错。你的人品也有错!!人们都不该帮助你!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小破孩VS小傻妮
2012-05-21 · TA获得超过167个赞
知道小有建树答主
回答量:211
采纳率:100%
帮助的人:136万
展开全部
如果你图中的那对勾是外键的话,那你改下你的表中该列的字符集就可以了。改成与你设置外键的字符集一致。如果是mysql数据库一般是int或者bigint,自己改一下应该就可以了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
anyuntunri
2012-05-21 · TA获得超过1720个赞
知道小有建树答主
回答量:740
采纳率:50%
帮助的人:360万
展开全部
qxArea的id应该也是Integer类型吧,你数据库表中设计的是哪种类型?
更多追问追答
追问
public class QxNode implements java.io.Serializable {

// Fields

private Integer id;
private QxArea qxArea;
private String nodename;
private Timestamp entrytime;
private String usefor;
private Set qxPics = new HashSet(0);
private Set qxZigbees = new HashSet(0);
private Set qxNodeDatas = new HashSet(0);
这是实体类的 图片是数据库结构图! 再说了,这是myeclipse自动生成的不会错吧!
追答
已经找到原因了,就是因为数据库表里的areaname列的问题,实体类里引用的是qxArea类,在表里存的就是qxArea这个类在数据库中的表的主键id,而不是areaname,所以要改的话就把数据库表中的areaname改成areaId,把类型改成int就行了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式