多表联查,不通过many-to-one的方法

本文介绍了一个使用JSP和JSTL展示多表查询结果的例子,通过HQL查询获取电影及其相关信息,并在网页上以表格形式展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
展示页面  ${list}
<!--"from Movie t0,Area t1,Time t2,Type t3 where t0.areaid=t1.id and t0.timeid=t2.id and t0.typeid=t3.id	 -->
<!-- 展示页面 [[Ljava.lang.Object;@1e9b96b7, [Ljava.lang.Object;@78c3d813, [Ljava.lang.Object;@19f0556] -->
<!-- 	通过hql查到的list是二维数组,虽然输出前台并不能直接显示,但是可以通过hql顺序,找到对应属性,加入td -->
	<table border="1px" width="600px">
			<tr>
				<td>id</td>
				<td>电影名称</td>
				<td>上映地区</td>
				<td>上映时间</td>
				<td>类型</td>
			</tr>
		<c:forEach items="${list}" var="listA">
			<tr>
<!-- 【关键点】t0为主表,其他为附表,t0含有所有附表的主键关联字段,这些字段名字可以不同 -->
<!-- 			此时listA[0]下标为0的对应hql语句中t0的映射类 -->
<!-- 				listA[0]即对应t0 Movie映射类 -->
<!-- 				listA[1]即对应t1 Area映射类 -->
<!-- 				以此类推 -->
				<td>${listA[0].id }</td>
				<td>${listA[0].movieName}</td>
				<td>${listA[1].areaname}</td>
				<td>${listA[2].timename}</td>
				<td>${listA[3].typename}</td>
			</tr>
		</c:forEach>
	</table>
	
		
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值