我想在我的 JSP 中使用有效的 SQL 语句,如下所示:
<sql:query var="test" dataSource="DL">
select p.name name, j.description job_description, d.description department_description
from person as p, job as j, department as d
where ...
</sql:query>
因为我加入了 3 个表,所以我有 2 个重复的名称:“描述”,我通常在 SQL 中使用这些字段名称的别名来解决。在 JSP 中,这没有正确处理,无法通过别名访问结果集,并且只有“description”可用,但“job_description”或“department_description”不可用。
这工作不足:
<c:forEach var="row" items="${test.rows}">
${row.description}
</c:forEach>
这根本不起作用:
<c:forEach var="row" items="${test.rows}">
${row.job_description}
</c:forEach>
这个问题有没有解决方案(恕我直言,这是一个错误)?
这是我的 context.xml:
<Context path="/test" docBase="test" reloadable="true" crossContext="true">
<Resource
name="DL"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="10000"
username="xxx"
password="xxx"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test"/>
</Context>