Desarrollando una aplicación con JSP
 
Construyendo la aplicación JSP
 
  • 6) Ahora construyamos las páginas web para insertar la película. Primero la página HTML para solicitar la información de las películas. Llámela nuevapelicula.html
 
<body>
<h1 align="center">Nueva Película</h1>
<form action="nuevapelicula.jsp" method="post">
Código: <input type="text" name="codigo" maxlength="5"><br>
Nombre: <input type="text" name="nombre" maxlength="100"><br>
<input type="submit" value="Guardar">&nbsp;<input type="reset">
</form>
</body>
 
  • 7) Antes de guardar la película debemos crear la página JSP que reciba la información correspondiente.
 

<!-- Importamos los paquetes que necesitamos -->

<% @page import="cine.*,java.sql.*" %>
<%! // Vamos a definir una función global a toda la página
boolean esNumero( String dato ) {
    boolean result = false;
    try {
        Integer.parseInt( dato );
        result = true;
    }
    catch ( Exception ex ) {
        result = false;
    }
    return result;
}
%>
<body>
<// Primero hacemos validacion de los datos recibidos
if ( request.getParameter( "codigo" ) == null ||
request.getParameter( "nombre" ) == null ||
request.getParameter( "duracion" ) == null ) {
out.println( "Error. Falta alguno de los parámetros para la película" );<br>
}
else {
int codigo, duracion;
String nombre;
// Vamos a verificar que el codigo y la duracion sean numericos
if ( !esNumero( request.getParameter( "codigo" ) ) ) {
out.println( "Error. Se necesita que el codigo sea numerico!" );
}
else if ( !esNumero( request.getParameter( "duracion" ) ) ) {
out.println( "Error. Se necesita que la duracion sea numérica!" );
}
else {
// Veremos ahora si el nombre no está vacion
nombre = request.getParameter( "nombre" );
if ( nombre.trim().length() == 0 ) {
out.println( "Error. Debe escribir el nombre de la pelicula" );
}
else {
// Ahora si intentamos insertar la película
codigo = request.getParameter( "codigo" );
duracion = request.getParameter( "duracion" );
try {
Película pel = new Película(); // Aquí se hace la conexión
if ( pel.existe( codigo ) ) { // Ya existe la película
out.println( "La película con el codigo dado ya existe!" );
}
else {
pel.agregar( codigo, nombre, duracion );
out.println( "<center>Listo! Película agregada!</center>" );
}
pel.cerrar(); // Cerramos la conexión
}
catch ( Exception ex ) {
out.println( "Se produjo el error: " + ex.getMessage() );
}
}
}
}
%>
<hr>
<a href="nuevapelicula.html">Agregar otra película</a>
</body>
%>
Prueba su página y verifique en la base de datos que los datos hayan sido realmente agregados.
 
  • 8) Como es de esperarse, debemos hacer una página para mostrar la lista de películas. Para ello escribamos el siguiente método. Tal método se encargará de retornar como resultado, un resultSet con los datos obtenidos de la tabla. Luego la página que hagamos imprimirán estos datos.
 
// Este es un nuevo método de la clase Película, anteriormente escrito
public ResultSet listar() throws SQLException {
Statement st = conn.createStatement();
return st.executeQuery( "select * from peliculas order by nombre" );
}
Compile su clase nuevamente. Ahora construiremos la página JSP correspondiente
<%@ page import="cine.*,java.sql.*">
<body>
<h1 align="center> Listado de Películas></h1>
<% Película manejadorPeliculas = new Película(); /* Conexión con la BD*/
ResultSet rs = manejadorPeliculas.listar(); // Todas las películas
%>
<table width="75%" align="center">
<tr><th>Código</th><th>Nombre</th><th>Duración</th></tr>
<% while ( rs.next() ) { %>
<tr><td align="center"><%= rs.getInt( "codigo" ) %></td>
<td align="center"><%= rs.getString( "nombre" ) %></td>
<td align="center"><%= rs.getInt( "duracion" ) %></td></tr>
<% }
rs.close();
manejadorPeliculas.cerrar(); %>
</table>
</body>
 
Anterior>> Desarrollando una aplicacion con JSP
 
Regresar al Inicio