多表查询结果集的处理

很多工程中都会遇到从多表中查询结果,然后将结果集封装到自己定义的临时类当中去。我现在做的一个项目也是这样的。

具体代码如下:   (说明下,我现在数据库中的表全部没有设置外键,纯手工控制与设置、操作)

List<ClassPlan> planInfos = new ArrayList<ClassPlan>();//定义存储临时类的集合
               
//获取查询的结果集,结果集的类型说穿了就是存放一个Object数组的Object对象而已(注意不能通过强制转换)
		List Infos = getHibernateTemplate()
				.find(
						"select course.courseName,plan.onlineClassId,plan.onlineCourseName,teacher.memo,classroom.classroomName from TbCourseInfo as course,TbCoursePlanInfo as plan,TbOnlineClassroomInfo as classroom,TbTeacherCourse as teacher where course.courseId = plan.courseId and plan.classroomId = classroom.classroomId and course.courseId = teacher.courseId");
		for (int i = 0; i < Infos.size(); i++) {
			Object[] objs = (Object[]) Infos.get(i);
			ClassPlan plan = new ClassPlan();//自定义的临时封装类
			plan.setClassName((String) objs[0]);
			plan.setClassTeacher((String) objs[1]);
			plan.setCourseName((String) objs[2]);
			plan.setRoomNo((String) objs[3]);
			plan.setState((String) objs[4]);
			planInfos.add(plan);
		}
		return planInfos;

 如上   简单明了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值