Ejercicio completo desde 0 (V)

Vamos a crear un servlet que nos capture la url ‘/prestamos’.

En el doget vamos a redirigir a la página ‘prestamos.jsp’.

En nuestro index.jsp vamos a poner un enlace a /prestamos.

Si funciona, modificamos el doget del servlet para que recupere todos los prestamos y los envíe a prestamos.jsp

Y modificamos la página prestamos.jsp para que nos mueste el id, nombre, titulo y fecha de los préstamos que nos pasan.

package com.prestamos.controller;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.prestamos.dao.PrestamosDAO;

/**
 * Servlet implementation class PrestamosController
 */
@WebServlet("/prestamos")
public class PrestamosController extends HttpServlet {
	private static final long serialVersionUID = 1L;
    private PrestamosDAO modelo;   
    /**
     * @see HttpServlet#HttpServlet()
     */
    public PrestamosController() {
        super();
        modelo=new PrestamosDAO();
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
		request.setAttribute("prestamos", modelo.getPrestamos());
		RequestDispatcher dispatcher = request.getRequestDispatcher("prestamos.jsp");
		dispatcher.forward(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Mantenimiento prestamos</title>
<link rel="stylesheet"
	href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">

<!-- jQuery library -->
<script
	src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<!-- Popper JS -->
<script
	src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>

<!-- Latest compiled JavaScript -->
<script
	src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="container">
	<h1>Lista de préstamos</h1>
	<table class="table table-bordered">
		<thead>
			<tr>
				<th>ID</th>
				<th>Nombre</th>
				<th>Titulo</th>
				<th>Fecha</th>
				<th>Acciones</th>
			</tr>
		</thead>
		<tbody>
			<c:forEach var="prestamo" items="${prestamos}">

				<tr>
					<td><c:out value="${prestamo.idprestamos}" /></td>
					<td><c:out value="${prestamo.nombre}" /></td>
					<td><c:out value="${prestamo.titulo}" /></td>
					<td><c:out value="${prestamo.fecha}" /></td>
					<td>Aquí irán las acciones</td>
				</tr>
			</c:forEach>
		</tbody>

	</table>
	</div>
</body>
</html>

Publicado por

Juan Pablo Fuentes

Formador de programación y bases de datos