mybatis注解开发动态sql,mybatis多表关联查询注解

  mybatis注解开发动态sql,mybatis多表关联查询注解

  00-1010 Mybatis的注释实现复杂映射开发多对多查询和多对多查询的模型添加多对多查询的语句CourseMapper接口方法使用注释配置Mapper测试类多对多配置摘要

  00-1010在实现复杂关系映射之前,我们可以通过映射文件中的配置来实现。用批注开发后,我们可以用@Results批注、@Result批注、@One批注和@Many批注完成复杂关系的配置。

  

目录

 

  00-1010多对多查询需求:查询学生及对应的课程信息。

  00-1010对应的sql语句:

  SELECT DISTINCT s.id,s.name,s . age FROM stu s,stu _ Cr sc WHERE sc . sid=s . id SELECT c . id,c.name FROM stu_cr sc,course c WHERE sc . cid=c . id AND sc . sid=# { id }

  00-1010公共接口课程映射器{//根据学号查询所选课程@ select (select c.id,c.name from stu _ Cr sc,course c where sc.cid=c.id,sc.sid=# {id} )公共摘要列表课程select by id(integer id);}

  00-1010公共接口学生映射器{//query all @ select( select distinct s . ID,s.name,s.age from students,stu _ Cr sc WHERE sc . sid=s . ID )@ Results({ @ Result(column= ID ,property=id ),@Result(column=name ,property=name ),@Result(column=age ,Property= age ),@ result (property= courses ,//所包含对象的变量名javaType=List.class,//的实际数据类型要查询中间表和课程表/* many,@Many固定编写的一对多查询select属性:指定在哪个接口调用哪个查询方法*/Many=@ Many(select= com . yyl . Many _ to _ Many . course mapper . selectbysid )})公共抽象列表学生select all(); }

  00-1010公共类test 01 { @ test public void select all()抛出异常{//1。加载核心配置文件inputstream is=resources . getresourcestream( mybatisconfig . XML );//2.获取SqlSession工厂对象sqlsessionfactory sqlsessionfactory=new sqlsessionfactory builder()。构建(is);//3.通过工厂对象获取SqlSession对象SQL session SQL session=sqlsessionfactory . open session(true);//4.获取StudentMapper接口的实现类对象student Mapper=SQL session . get Mapper(student Mapper . class);//5.调用实现类对象中的方法,得到结果liststudentlist=mapper . selectall();//6.(student student 3360 list){ system . out . println(student . getid(), student.getname(), student.getage()))的处理结果;list course courses=student . get courses();for (Course cours :课程){ system . out . println( t cours);}} //7.释放资源SQL session . close();is . close();}}运行结果如下:

  00-1010注释描述@Results封装了映射关系的父注释。Result[] value():定义结果数组@结果包映射关系的子注释。列属性:被查询表属性中的字段名称属性:实体对象中的属性名称javaType属性:被包含对象的数据类型many属性:一对多查询固定属性@一对多查询的many注释。选择属性:指定要在此调用的接口中的方法。这篇关于MyBatis的文章附有插图和注释,这里介绍了多对多查询的开发。更多相关MyBatis多对多查询,请搜索热门IT之前的文章或者继续浏览下面的相关文章。我希望你以后能更多地支持流行音乐!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: