Commit 543e639f by Patryk Czarnik

Odczyt poprzez beana - wersja z listą

parent 01403b88
package sklep.web;
import sklep.db.DBConnection;
import sklep.db.DBException;
import sklep.db.ProductDAO;
import sklep.model.Product;
import java.util.List;
/* Ta klasa jest po to, aby w skrypcie JSP w wygodny sposób odczytać sobie listę produktów z bazy danych. */
public class ProductBean {
// Metoda wygląda jak getter, ale wewnętrznie czyta dane z bazy, a nie z własnej zmiennej.
public List<Product> getAllProducts() throws DBException {
try(DBConnection db = DBConnection.open()) {
ProductDAO productDAO = db.productDAO();
return productDAO.readAll();
}
}
}
......@@ -20,7 +20,7 @@
<h3>Wersje przyzwoite ;-)</h3>
<ul>
<li><a href="products5.jsp">wersja 5</a> - JSP oparty o klasę bean</li>
<li><a href="products5a.jsp">wersja 5</a> - JSP oparty o klasę bean</li>
<li><a href="products6.jsp">wersja 6</a> - wyszukiwanie wg ceny - bean</li>
<li><a href="products7.jsp">wersja 7</a> - fotki</li>
<li><a href="products8.jsp">wersja 8</a> - koszyk</li>
......
<%@page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="jakarta.tags.core"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Lista produktów 5</title>
</head>
<body>
<h1>Lista produktów - wersja 5</h1>
<jsp:useBean id="bean" class="sklep.web.ProductBean"/>
<%-- tak jakby for(Product product : bean.getAllProducts()) --%>
<ul>
<c:forEach var="product" items="${bean.allProducts}">
<li>${product}</li>
</c:forEach>
</ul>
</body>
</html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment