1 使用注解方式
1.1 一对一
ClazzModel.java (返回前端的模型)
1 | public class ClazzModel { |
ClazzMapper.java
1 | "select * from poll_clazz") ( |
1.2 一对多
QuestionModel.java
1 |
|
QuestionMapper.java
1 | "select * from poll_questions") ( |
1.3 多对多
业务介绍: 有一张问卷表(questionnaire),一张题库表(question),一张问卷与题库的桥表(qq)
希望能查出所有的问卷,每个问卷有对应的题
思路:我们先查出所有的问卷,然后通过问卷id 在桥表中查找出此问卷中的所有问题
QuestionnaireModel.java
1 | public class QuestionnaireModel{ |
QuestionnaireMapper.java
1 | "select * from poll_questionnaire") ( |
QQMapper.java
1 | "select * from poll_questions where id in (select questions_id from poll_qq where questionnaire_id=#{id})") ( |
1.4 注意:
分步查询有时候非常浪费数据库资源,我们可以采用懒加载方式,当有需要的时候才进行分步查询
使用:fetchType=FetchType.LAZY
1 |
|
2 使用xml配置方式
2.1 一对一
1 |
|
2.2 一对多
1 | <resultMap type="com.User" id="userAndItemsResultMap"> |