准备,两张表,两个实体类,并且在类中配置关系,员工和公司是多对一,公司和员工之间是一对多关系
第一种,查询的返回值为实体类对象(一对一)
查询员工所有信息,以及员工对应的公司信息,返回值为Employee,员工表中进行了实体映射配置(private Company company)
1,查询嵌套,先把员工所有信息查出来进行封装,然后再嵌套一个查询,查询出公司的所有信息,
2,结果集嵌套
2,查询员工所有信息,以及员工对应的公司信息,返回值为Employee
结果集嵌套:使用连表查询,一次性查出所有的结果,在结果集中进行对象属性的封装。
第二种,只查询需要的字段,返回值为map类型,并且实体类中不用配置两表的映射关系(一对一)
第三种,根据公司id查询出公司的所有信息以及公司对应的所有员工信息(多对一)
1,查询嵌套,先把公司所有信息查出来,进行属性映射,然后再嵌套查询所有员工的信息,实体类中进行了关系映射配置(company实体类中private List <,Employee> employees)。
2,结果集嵌套,返回值为对象类型,并且实体类中进行了对象关系映射的配置。(company实体类中private List<,Employee> employees)
第四种,只查询想要的字段,返回值为map类型,多对一的查询,实体类中不需要配置映射关系。
1,查询嵌套,先查询出公司的部分信息,进行映射封装,然后再查询,员工对应的信息。
省略属性配的图
2,结果集嵌套,返回值为map类型,一对多,实体类中不用配置映射关系