2 jjery jjery 于 2016.09.13 16:17 提问

关于mybaits多对多的映射的一个问题

相关:mybatis, 多对多映射,junit
1. 问题log
图片说明
注释:一直提示说语法错误,但是我检查很多次,没有问题啊。另外我用成功的例子复制过来,照样改还是这样,我认为不是语法问题。
2. many2many.xml
图片说明
3. junit方法
图片说明
4. package图
图片说明
5. bean Group
图片说明
6. bean Member
图片说明
7. 数据库table group
图片说明
图片说明
8. 数据库table member
图片说明
图片说明
9. table link_group_and_member,用来联立group 和 member的多对多关系
图片说明
图片说明
图片说明
10. 现在的问题是执行insertGroup会出错,insertMember缺可以,两者都是多对多的关系,注意看bean,各有一个List<对方>的对象。没理由一个可以,另外一个不可有。而且报的还是语法问题,关键是语法是从成功的方法中改过来的,替换表等相关的,没理由会错啊

2个回答

xubo_ob
xubo_ob   2016.09.13 16:56
已采纳

group 是数据库关键词,解析的时候不会直接解析成表名字,所以会出错。

改个表名字就好了

jjery
jjery 试过了,你说对的。感谢
接近 2 年之前 回复
hizzyzzh
hizzyzzh   2016.09.13 16:37

你错误信息中是updateGroup方法中出的错,你贴的是insert的方法,贴出来看看update的信息吧。

jjery
jjery 最后想一下,还是更新了。谢谢。
接近 2 年之前 回复
jjery
jjery 抱歉,已解决。我说明一下,insert和update方法都提示语法错误这个问题。图我就不更新了。
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Mybatis高级映射多对多查询
紧接着上一篇文章:Mybatis高级映射一对多查询 写 一、开发准备 1、新建数据表(四张表)和添加测试数据 DROP TABLE IF EXISTS `items`;DROP TABLE IF EXISTS `orders`;DROP TABLE IF EXISTS `user`;DROP TABLE IF EXISTS `orderdetail`;/*items是商品表*/C
多对多映射关系
举个例子来说,就是用户与角色。一个用户可以属于多个角色,而一个角色又可以拥有多个用户。文字表述就是这样了,看一下用图的直观表示。 实体关系图   表格关系图         当关系两方有一端为一时,我们让多的一端维护关系,可以减少数据的冗余,提高效率。那要是多对多的话,如果还在某一方维护数据,那缺点就一点都没有避免。那怎么解决这个问题呢?我们呢采用第三张表格来维护这个关系。即上图中
处理 Mybatis 中一对多、多对一、多对多映射的黑魔法
前言先看看Mybatis官方介绍MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。注意,这里是简单的XML! 可是,当我们的数据库表关系错综复杂,表与表之存在一对多、多对一、多对多
Mybatis中多对多映射详解
Mybatis中多对多映射详解 对于在mybatis中的多对多的处理,其实我们可以参照一对多来解决注意】 注:这是从student这边出发所做的一些操作,从course一边开始操作是一样的,因为俩者的关系是多对多(对称的). 同时不论是一对一还是一对多还是多对多,都不能在mybatis中进行级联保存、更新、删除,我们需要使用sql语句控制每一步操作 <resultMap id="StudentResultWithCourses" type="Student" extends="St
MyBatis 关联映射之多对多
紧接着上一篇 MyBatis 一对多关联映射,这里介绍 MyBatis 多对多关联关系的实现:一个学生可以选多门课,一个课也可以由多个学生选。
hibernate——多对一和一对多映射浅析
首先应该清楚多对一和一对多只是站在不同的角度看待问题,其本质是一样的。在思考这个问题的时候,不要把这两个概念混在一起,这样不容易理解,而要分开,站在不同的角度去解决同一个问题。 就拿员工和部门的例子来说,我们站在不同的角度,可能会遇到如下的几种情况: 站在员工的角度看,是多对一的关系:  1、来了新员工,但是还不知道该分配到哪个部门,只有先把员工保存到员工表中,部门那一列设为空,待以后再更新
hibernate中多对多映射配置详细解析
本工程以项目与开发人员构成多对多的关系来展开,构建多对多的关系,具体实现代码如下所示: 1.hibernate.cfg.xml文件 <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/
Mybaties的关联映射(嵌套结果映射,嵌套查询映射)
1.嵌套查询映射(不提倡,查询两次,会产生N+1问题@): resultMap id=”blogResult” type=”Blog”>        ="author" column="blog_author_id"            javaType="Author" select=”selectAuthor” />    resultMap>                      
(经典)Hibernate多对多关系映射(五)
多对多关系是产生在三张表的关系中的,必须有一张中间表,必须保证中间表只有两个字段,必须是复合主键,必须是另两张表的外键。 如果按照多对多关系来设计类,例如:学生选课 这里只创建学生和课程类,中间表不生成对应的pojo。 类中通过以下方式表示关系: 1)  学生会选择多门课程,因此在学生类中包含了多个课程类的对象,使用Set集合来保存。 2)  一门课程有多个学生选择,因此课程类中也要包含
Java - 举一个多对多关联的例子,并说明如何实现多对多关联映射。
例如:商品和订单、学生和课程都是典型的多对多关系。可以在实体类上通过@ManyToMany注解配置多对多关联或者通过映射文件中的和标签配置多对多关联,但是实际项目开发中,很多时候都是将多对多关联映射转换成两个多对一关联映射来实现的。...