【问题标题】:Spring java to jsp - multi table selectSpring java to jsp - 多表选择
【发布时间】:2023-03-31 20:48:01
【问题描述】:

我四处寻找,几乎没有找到任何简单的书。我有一个类似的 sql:

select
a.id,b.name,b.points,d.name,d.second_name,c.id
from my_courses a
left join course b on a.idcourse=b.id
left join student c on a.idstudent=c.id
left join human d on c.idhuman=d.id

我想在没有 DAO、POJO 和其他类的情况下执行(在 java 中)和显示(在表中的 jsp 中)一些其他随机 sql。是否有可能一些简单的解决方案,例如编写 sql、执行 sql、获取数组或填充 sql 结果并将其发送到 jsp 以显示在表中?非常感谢。 我在 spring 工具套件中使用 java,spring,jsp。

【问题讨论】:

  • 现在看来我正在寻找的东西就像'SqlRowSet foo = jdbcTemplate.queryForRowSet(sql);'。

标签: java sql spring jsp


【解决方案1】:

在您阅读以下答案之前,请明确:

  • 您基本上应该永远不要将表示层/数据访问层混合在一起。你最终会陷入混乱/流泪。

但我找到了一个你可以在这里详细找到的解决方案:

data-acces in presentation layer

这是来自该来源的代码示例:

<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
 url="jdbc:mysql://localhost/TEST"
 user="root"  password="pass123"/>

<sql:query dataSource="${snapshot}" var="result">
SELECT * from Employees;
</sql:query>

<table border="1" width="100%">
<tr>
   <th>Emp ID</th>
   <th>First Name</th>
   <th>Last Name</th>
   <th>Age</th>
</tr>
<c:forEach var="row" items="${result.rows}">
<tr>
   <td><c:out value="${row.id}"/></td>
   <td><c:out value="${row.first}"/></td>
   <td><c:out value="${row.last}"/></td>
   <td><c:out value="${row.age}"/></td>
</tr>
</c:forEach>
</table>

请注意,我不建议这样做。简直糟透了!非常糟糕!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-05
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-30
    • 1970-01-01
    相关资源
    最近更新 更多