2017-02-10 9 views
-1

私は場所のすべてを探していて、少数の本しか見当たりませんでした。 DAO、POJOや他のクラスを持たずにSpring java to jsp - multi table select

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 

と私は(Javaで)実行したいと(表中のJSPで)表示他のいくつかのランダムなSQL:私のようなSQLを持っています。 SQLを書く、SQLを実行する、多分配列やSQLの結果でいっぱいのものを得て、テーブルに表示するためにJSPに送るといった簡単な解決策が可能でしょうか?どうもありがとう。 私はspringツールスイートでjava、spring、jspを使用しています。

+0

今のところ私が探していたものは 'SqlRowSet foo = jdbcTemplate.queryForRowSet(sql);'のようです。 –

答えて

0

次の答えを読む前に明確にしてください。

  • あなたが一緒に基本的にNEVER EVERミックスプレゼンテーション層/データ・アクセス・レイヤーをする必要があります。あなたは混乱/涙で終わるでしょう。

しかし、私はあなたがここで詳細に見つけることができる解決策を見つけた:

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> 

私にはないことに注意してくださいそれをお勧めします。それはちょうど悪いです!ひどい!