commit inicial
This commit is contained in:
commit
d12b970af3
23
.classpath
Normal file
23
.classpath
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
|
||||
<attributes>
|
||||
<attribute name="module" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry including="**/*.java" kind="src" output="target/classes" path="src">
|
||||
<attributes>
|
||||
<attribute name="optional" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" path="config"/>
|
||||
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="lib" path="C:/Users/ineva/INM/tmp/mapamundi.jar"/>
|
||||
<classpathentry kind="output" path="target/classes"/>
|
||||
</classpath>
|
||||
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
/bin/
|
||||
*.class
|
||||
/target/
|
||||
23
.project
Normal file
23
.project
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>aadd_act2_9</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.m2e.core.maven2Builder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.m2e.core.maven2Nature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
2
.settings/org.eclipse.core.resources.prefs
Normal file
2
.settings/org.eclipse.core.resources.prefs
Normal file
@ -0,0 +1,2 @@
|
||||
eclipse.preferences.version=1
|
||||
encoding/<project>=UTF-8
|
||||
13
.settings/org.eclipse.jdt.core.prefs
Normal file
13
.settings/org.eclipse.jdt.core.prefs
Normal file
@ -0,0 +1,13 @@
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=24
|
||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||
org.eclipse.jdt.core.compiler.compliance=24
|
||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
|
||||
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
|
||||
org.eclipse.jdt.core.compiler.release=enabled
|
||||
org.eclipse.jdt.core.compiler.source=24
|
||||
4
.settings/org.eclipse.m2e.core.prefs
Normal file
4
.settings/org.eclipse.m2e.core.prefs
Normal file
@ -0,0 +1,4 @@
|
||||
activeProfiles=
|
||||
eclipse.preferences.version=1
|
||||
resolveWorkspaceProjects=true
|
||||
version=1
|
||||
5
config/config.properties
Normal file
5
config/config.properties
Normal file
@ -0,0 +1,5 @@
|
||||
# Parámetros de conexión a la base de datos 'Cine' en SGDB MySQL
|
||||
jdbc.driver = com.mysql.cj.jdbc.Driver
|
||||
jdbc.url = jdbc:mysql://192.168.1.36:3306/Cine
|
||||
jdbc.usuario = root
|
||||
jdbc.password = mysql_123
|
||||
32
pom.xml
Normal file
32
pom.xml
Normal file
@ -0,0 +1,32 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>aadd_act2_7</groupId>
|
||||
<artifactId>aadd_act2_7</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<dependencies>
|
||||
<!-- https://mvnrepository.com/artifact/com.mysql/mysql-connector-j -->
|
||||
<dependency>
|
||||
<groupId>com.mysql</groupId>
|
||||
<artifactId>mysql-connector-j</artifactId>
|
||||
<version>9.5.0</version>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/org.postgresql/postgresql -->
|
||||
<dependency>
|
||||
<groupId>org.postgresql</groupId>
|
||||
<artifactId>postgresql</artifactId>
|
||||
<version>42.7.8</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<sourceDirectory>src</sourceDirectory>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.13.0</version>
|
||||
<configuration>
|
||||
<release>24</release>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
45
sql/procedimiento-y-funcion.sql
Normal file
45
sql/procedimiento-y-funcion.sql
Normal file
@ -0,0 +1,45 @@
|
||||
|
||||
|
||||
DELIMITER //
|
||||
|
||||
CREATE PROCEDURE obtenerRepartoPeliculasPorActor(IN p_patron_nombre_actor VARCHAR(100))
|
||||
BEGIN
|
||||
SELECT
|
||||
a.nombre AS nombre_actor,
|
||||
a.id_pais AS id_pais_actor,
|
||||
p.titulo AS titulo_pelicula,
|
||||
p.id_pais AS id_pais_pelicula,
|
||||
d.nombre AS nombre_director,
|
||||
d.id_pais AS id_pais_director,
|
||||
d.fecha_nacimiento AS fecha_nacimiento_director
|
||||
FROM reparto r
|
||||
JOIN actor a ON r.id_actor = a.identificador
|
||||
JOIN pelicula p ON p.identificador = r.id_pelicula
|
||||
JOIN director d ON p.id_director = d.identificador
|
||||
WHERE p.identificador IN (
|
||||
SELECT re.id_pelicula
|
||||
FROM reparto re
|
||||
JOIN actor ac ON re.id_actor = ac.identificador
|
||||
JOIN pelicula pe ON re.id_pelicula = pe.identificador
|
||||
WHERE ac.nombre LIKE p_patron_nombre_actor
|
||||
);
|
||||
END;
|
||||
//
|
||||
|
||||
CREATE FUNCTION obtenerNumeroActoresPelicula(p_id_pelicula INT)
|
||||
RETURNS INT
|
||||
DETERMINISTIC
|
||||
READS SQL DATA
|
||||
BEGIN
|
||||
DECLARE total_actores_pelicula INT;
|
||||
|
||||
SELECT COUNT(*) INTO total_actores_pelicula
|
||||
FROM reparto
|
||||
WHERE id_pelicula = p_id_pelicula;
|
||||
|
||||
RETURN total_actores_pelicula;
|
||||
END;
|
||||
//
|
||||
|
||||
DELIMITER ;
|
||||
|
||||
141
src/es/palomafp/aadd/inm/GestorCine.java
Normal file
141
src/es/palomafp/aadd/inm/GestorCine.java
Normal file
@ -0,0 +1,141 @@
|
||||
package es.palomafp.aadd.inm;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import es.palomafp.aadd.inm.dao.IActorDAO;
|
||||
import es.palomafp.aadd.inm.dao.IContinenteDAO;
|
||||
import es.palomafp.aadd.inm.dao.IPaisDAO;
|
||||
import es.palomafp.aadd.inm.dao.IRepartoDAO;
|
||||
import es.palomafp.aadd.inm.dao.impl.ActorDaoJDBC;
|
||||
import es.palomafp.aadd.inm.dao.impl.ContinenteDaoJAR;
|
||||
import es.palomafp.aadd.inm.dao.impl.PaisDaoJAR;
|
||||
import es.palomafp.aadd.inm.dao.impl.RepartoDaoJDBC;
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
import es.palomafp.aadd.inm.util.ConversorTiposDatosYFormatos;
|
||||
import es.palomafp.aadd.inm.vo.Continente;
|
||||
import es.palomafp.aadd.inm.vo.Pais;
|
||||
import es.palomafp.aadd.inm.vo.Reparto;
|
||||
|
||||
/**
|
||||
*
|
||||
* GestorCine: Clase que se encarga de gestionar (Continente, Pais, Actor,
|
||||
* Director, Pelicula, Reparto)
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
public class GestorCine {
|
||||
public static void main(String[] args) {
|
||||
GestorCine gc = new GestorCine();
|
||||
try {
|
||||
gc.imprimirRepartoPeliculasActorTerminaEnT();
|
||||
|
||||
gc.imprimirNumeroActoresPelicula();
|
||||
|
||||
gc.realizarTratamientoContinente();
|
||||
|
||||
gc.realizarTratamientoPais();
|
||||
} catch (CineException e) {
|
||||
String mensajeError = "Error en la clase %s al realizar una operación de %s";
|
||||
String operacion = "Operación desconocida";
|
||||
int codigoError = e.getCodigoError();
|
||||
switch (codigoError) {
|
||||
case CineException.ERROR_GESTION_CONEXION:
|
||||
operacion = "Gestión de Conexión";
|
||||
break;
|
||||
case CineException.ERROR_CONSULTA:
|
||||
operacion = "Consulta";
|
||||
break;
|
||||
case CineException.ERROR_INSERCION:
|
||||
operacion = "Inserción";
|
||||
break;
|
||||
case CineException.ERROR_BORRADO:
|
||||
operacion = "Borrado";
|
||||
break;
|
||||
case CineException.ERROR_ACTUALIZACION:
|
||||
operacion = "Actualización";
|
||||
break;
|
||||
}
|
||||
mensajeError = String.format(mensajeError, e.getClaseOrigen().getName(), operacion);
|
||||
System.out.println(mensajeError);
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void imprimirNumeroActoresPelicula() throws CineException {
|
||||
IActorDAO iActorDAO = new ActorDaoJDBC();
|
||||
int idPelicula = 1; // Ejemplo: película con id 1
|
||||
System.out.println("Imprimir el número de actores en la película con id " + idPelicula);
|
||||
int numeroActores = iActorDAO.obtenerNumeroActoresPelicula(idPelicula);
|
||||
System.out.println("Número de actores en la película con id " + idPelicula + ": " + numeroActores);
|
||||
}
|
||||
|
||||
private void imprimirRepartoPeliculasActorTerminaEnT() throws CineException {
|
||||
IRepartoDAO iRepartoDAO = new RepartoDaoJDBC();
|
||||
|
||||
System.out.println("----- FIJO -----");
|
||||
List<Reparto> listaReparto = iRepartoDAO.obtenerListaRepartoPeliculasNombreActorTerminaT();
|
||||
imprimirReparto(listaReparto);
|
||||
|
||||
System.out.println("----- Con patrón -----");
|
||||
|
||||
List<Reparto> listaRepartoConPatron = iRepartoDAO.obtenerListaRepartoPeliculasNombreActorConPatron("%t");
|
||||
imprimirReparto(listaRepartoConPatron);
|
||||
|
||||
}
|
||||
|
||||
private void imprimirReparto(List<Reparto> listaReparto) throws CineException {
|
||||
for (Reparto reparto : listaReparto) {
|
||||
// System.out.println(reparto);
|
||||
String textoImprimir = """
|
||||
%s, que nació en %s (%s), participó en la película
|
||||
'%s', rodada en %s (%s) y dirigida por
|
||||
%s que nació en %s (%s) el %s.
|
||||
""";
|
||||
String fechaNacimientoFormateada = null;
|
||||
if (reparto.getPelicula().getDirector().getFechaNacimiento() != null) {
|
||||
fechaNacimientoFormateada = ConversorTiposDatosYFormatos
|
||||
.convertirDateAString(reparto.getPelicula().getDirector().getFechaNacimiento(), "dd/MM/yyyy");
|
||||
}
|
||||
textoImprimir = String.format(textoImprimir, reparto.getActor().getNombre(),
|
||||
reparto.getActor().getPaisNacimiento().getNombre(),
|
||||
reparto.getActor().getPaisNacimiento().getContinente().getNombre(),
|
||||
reparto.getPelicula().getTitulo(), reparto.getPelicula().getPaisLocalizacion().getNombre(),
|
||||
reparto.getPelicula().getPaisLocalizacion().getContinente().getNombre(),
|
||||
reparto.getPelicula().getDirector().getNombre(),
|
||||
reparto.getPelicula().getDirector().getPaisNacimiento().getNombre(),
|
||||
reparto.getPelicula().getDirector().getPaisNacimiento().getContinente().getNombre(),
|
||||
fechaNacimientoFormateada);
|
||||
System.out.println(textoImprimir);
|
||||
}
|
||||
}
|
||||
private void realizarTratamientoContinente() throws CineException {
|
||||
IContinenteDAO iContinenteDAO = new ContinenteDaoJAR();
|
||||
// Crear continente
|
||||
String codigoContinente = "06";
|
||||
Continente continente = new Continente();
|
||||
continente.setCodigo(codigoContinente);
|
||||
continente.setNombre("Antártida");
|
||||
iContinenteDAO.crearContinente(continente);
|
||||
System.out.println("Se ha creado el continente: " + continente);
|
||||
|
||||
// Borrar continente
|
||||
iContinenteDAO.borrarContinente(codigoContinente);
|
||||
System.out.println("Se ha eliminado el continente con codigo: " + codigoContinente);
|
||||
|
||||
}
|
||||
private void realizarTratamientoPais() throws CineException {
|
||||
IPaisDAO iPaisDAO = new PaisDaoJAR();
|
||||
// Consutar países americanos que empiezan por "Sa"
|
||||
List<Pais> listaPaises = iPaisDAO.obtenerListaPaisesAmericanosEmpiezanSa();
|
||||
System.out.println(listaPaises);
|
||||
|
||||
// Actualizar país
|
||||
Pais pais = iPaisDAO.obtenerPaisPorId(52); // Ejemplo: país con id 52
|
||||
System.out.println("Pais con id 52: " + pais);
|
||||
pais.setCapital("Capital City II");
|
||||
iPaisDAO.actualizarPais(pais);
|
||||
|
||||
}
|
||||
}
|
||||
15
src/es/palomafp/aadd/inm/dao/IActorDAO.java
Normal file
15
src/es/palomafp/aadd/inm/dao/IActorDAO.java
Normal file
@ -0,0 +1,15 @@
|
||||
package es.palomafp.aadd.inm.dao;
|
||||
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
|
||||
/**
|
||||
*
|
||||
* IActrorDAO: Interfaz que representa las operaciones a realizar sobre Actor
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public interface IActorDAO {
|
||||
int obtenerNumeroActoresPelicula(int idPelicula) throws CineException;
|
||||
}
|
||||
20
src/es/palomafp/aadd/inm/dao/IContinenteDAO.java
Normal file
20
src/es/palomafp/aadd/inm/dao/IContinenteDAO.java
Normal file
@ -0,0 +1,20 @@
|
||||
package es.palomafp.aadd.inm.dao;
|
||||
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
import es.palomafp.aadd.inm.vo.Continente;
|
||||
|
||||
/**
|
||||
*
|
||||
* IContinenteDAO: Interfaz que representa las operaciones a realizar sobre
|
||||
* Continente
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public interface IContinenteDAO {
|
||||
|
||||
public void crearContinente(Continente continente) throws CineException;
|
||||
|
||||
public void borrarContinente(String codigoContinente) throws CineException;
|
||||
}
|
||||
13
src/es/palomafp/aadd/inm/dao/IDirectorDAO.java
Normal file
13
src/es/palomafp/aadd/inm/dao/IDirectorDAO.java
Normal file
@ -0,0 +1,13 @@
|
||||
package es.palomafp.aadd.inm.dao;
|
||||
|
||||
/**
|
||||
*
|
||||
* IDirectorDAO: Interfaz que representa las operaciones a realizar sobre Director
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public interface IDirectorDAO {
|
||||
|
||||
}
|
||||
19
src/es/palomafp/aadd/inm/dao/IPaisDAO.java
Normal file
19
src/es/palomafp/aadd/inm/dao/IPaisDAO.java
Normal file
@ -0,0 +1,19 @@
|
||||
package es.palomafp.aadd.inm.dao;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
import es.palomafp.aadd.inm.vo.Pais;
|
||||
|
||||
/**
|
||||
*
|
||||
* IPaisDAO: Interfaz que representa las operaciones a realizar sobre Pais
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
public interface IPaisDAO {
|
||||
Pais obtenerPaisPorId(int identificadorPais) throws CineException;
|
||||
void actualizarPais(Pais pais) throws CineException;
|
||||
List<Pais> obtenerListaPaisesAmericanosEmpiezanSa()throws CineException;
|
||||
}
|
||||
13
src/es/palomafp/aadd/inm/dao/IPeliculaDAO.java
Normal file
13
src/es/palomafp/aadd/inm/dao/IPeliculaDAO.java
Normal file
@ -0,0 +1,13 @@
|
||||
package es.palomafp.aadd.inm.dao;
|
||||
|
||||
/**
|
||||
*
|
||||
* IDirectorDAO: Interfaz que representa las operaciones a realizar sobre Director
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public interface IPeliculaDAO {
|
||||
|
||||
}
|
||||
19
src/es/palomafp/aadd/inm/dao/IRepartoDAO.java
Normal file
19
src/es/palomafp/aadd/inm/dao/IRepartoDAO.java
Normal file
@ -0,0 +1,19 @@
|
||||
package es.palomafp.aadd.inm.dao;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
import es.palomafp.aadd.inm.vo.Reparto;
|
||||
|
||||
/**
|
||||
*
|
||||
* IRepartoDAO: Interfaz que representa las operaciones a realizar sobre Reparto
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public interface IRepartoDAO {
|
||||
List<Reparto> obtenerListaRepartoPeliculasNombreActorTerminaT() throws CineException;
|
||||
List<Reparto> obtenerListaRepartoPeliculasNombreActorConPatron(String patron) throws CineException;
|
||||
}
|
||||
42
src/es/palomafp/aadd/inm/dao/impl/ActorDaoJDBC.java
Normal file
42
src/es/palomafp/aadd/inm/dao/impl/ActorDaoJDBC.java
Normal file
@ -0,0 +1,42 @@
|
||||
package es.palomafp.aadd.inm.dao.impl;
|
||||
|
||||
import java.sql.CallableStatement;
|
||||
import java.sql.Connection;
|
||||
import java.sql.Types;
|
||||
|
||||
import es.palomafp.aadd.inm.dao.IActorDAO;
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
import es.palomafp.aadd.inm.gestor.GestorConexionJDBC;
|
||||
|
||||
/**
|
||||
*
|
||||
* ActorDaoGeneral: Clase que representa la implementación de un Actor
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public class ActorDaoJDBC implements IActorDAO {
|
||||
|
||||
@Override
|
||||
public int obtenerNumeroActoresPelicula(int idPelicula) throws CineException{
|
||||
int numeroActores = 0;
|
||||
// try con recursos "cerrables": Connection, Statement, ResultSet
|
||||
try (Connection conexion = GestorConexionJDBC.obtenerConexionJDBC();
|
||||
CallableStatement cstmt = conexion.prepareCall("{? = call obtenerNumeroActoresPelicula(?)}");) {
|
||||
|
||||
// El parámetro de salida y el de entrada
|
||||
cstmt.registerOutParameter(1, Types.INTEGER);
|
||||
cstmt.setInt(2, idPelicula);
|
||||
|
||||
cstmt.execute();
|
||||
// Obtener el valor del parámetro de salida
|
||||
numeroActores= cstmt.getInt(1);
|
||||
} catch (Exception e) {
|
||||
throw new CineException(e, getClass(), CineException.ERROR_CONSULTA);
|
||||
}
|
||||
|
||||
return numeroActores;
|
||||
}
|
||||
|
||||
}
|
||||
43
src/es/palomafp/aadd/inm/dao/impl/ContinenteDaoJAR.java
Normal file
43
src/es/palomafp/aadd/inm/dao/impl/ContinenteDaoJAR.java
Normal file
@ -0,0 +1,43 @@
|
||||
package es.palomafp.aadd.inm.dao.impl;
|
||||
|
||||
import es.palomafp.aadd.inm.dao.IContinenteDAO;
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
import es.palomafp.aadd.inm.vo.Continente;
|
||||
import inm.mapamundi.inm.dao.IContinenteINMDAO;
|
||||
|
||||
/**
|
||||
*
|
||||
* ContinenteDaoGeneral: Clase que representa la implementación de un Continente
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public class ContinenteDaoJAR implements IContinenteDAO {
|
||||
|
||||
|
||||
@Override
|
||||
public void crearContinente(Continente continente) throws CineException {
|
||||
IContinenteINMDAO continenteINMDAO = new inm.mapamundi.dao.impl.ContinenteINMDaoJDBC();
|
||||
try {
|
||||
// Información del Continente
|
||||
inm.mapamundi.vo.Continente continenteINM = new inm.mapamundi.vo.Continente();
|
||||
continenteINM.setCodigo(continente.getCodigo());
|
||||
continenteINM.setNombre(continente.getNombre());
|
||||
continenteINMDAO.anyadirContinente(continenteINM);
|
||||
} catch (Exception e) {
|
||||
throw new CineException(e, getClass(), CineException.ERROR_INSERCION);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void borrarContinente(String codigoContinente) throws CineException {
|
||||
IContinenteINMDAO continenteINMDAO = new inm.mapamundi.dao.impl.ContinenteINMDaoJDBC();
|
||||
try {
|
||||
continenteINMDAO.eliminarContinentePorCodigo(codigoContinente);
|
||||
} catch (Exception e) {
|
||||
throw new CineException(e, getClass(), CineException.ERROR_BORRADO);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
15
src/es/palomafp/aadd/inm/dao/impl/DirectorDaoGeneral.java
Normal file
15
src/es/palomafp/aadd/inm/dao/impl/DirectorDaoGeneral.java
Normal file
@ -0,0 +1,15 @@
|
||||
package es.palomafp.aadd.inm.dao.impl;
|
||||
|
||||
import es.palomafp.aadd.inm.dao.IDirectorDAO;
|
||||
|
||||
/**
|
||||
*
|
||||
* DirectorDaoGeneral: Clase que representa la implementación de un Director
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public class DirectorDaoGeneral implements IDirectorDAO {
|
||||
|
||||
}
|
||||
100
src/es/palomafp/aadd/inm/dao/impl/PaisDaoJAR.java
Normal file
100
src/es/palomafp/aadd/inm/dao/impl/PaisDaoJAR.java
Normal file
@ -0,0 +1,100 @@
|
||||
package es.palomafp.aadd.inm.dao.impl;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import es.palomafp.aadd.inm.dao.IPaisDAO;
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
import es.palomafp.aadd.inm.vo.Continente;
|
||||
import es.palomafp.aadd.inm.vo.Pais;
|
||||
import inm.mapamundi.dao.impl.PaisINMDaoJDBC;
|
||||
import inm.mapamundi.inm.dao.IPaisINMDAO;
|
||||
|
||||
/**
|
||||
*
|
||||
* PaisDaoGeneral: Clase que representa la implementación de un Pais
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public class PaisDaoJAR implements IPaisDAO {
|
||||
|
||||
@Override
|
||||
public Pais obtenerPaisPorId(int identificadorPais) throws CineException {
|
||||
Pais pais = null;
|
||||
IPaisINMDAO paisINMDAO = new PaisINMDaoJDBC();
|
||||
try {
|
||||
inm.mapamundi.vo.Pais paisINM = paisINMDAO.obtenerPaisPorID(identificadorPais);
|
||||
|
||||
if (paisINM != null) {
|
||||
// Información del Continente
|
||||
Continente continente = new Continente();
|
||||
continente.setCodigo(paisINM.getContinente().getCodigo());
|
||||
continente.setNombre(paisINM.getContinente().getNombre());
|
||||
|
||||
// Información del País
|
||||
pais = new Pais();
|
||||
pais.setIdentificador(identificadorPais);
|
||||
pais.setNombre(paisINM.getNombre());
|
||||
pais.setCapital(paisINM.getCapital());
|
||||
|
||||
pais.setContinente(continente);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
throw new CineException(e, getClass(), CineException.ERROR_CONSULTA);
|
||||
}
|
||||
return pais;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actualizarPais(Pais pais) throws CineException {
|
||||
IPaisINMDAO paisINMDAO = new PaisINMDaoJDBC();
|
||||
try {
|
||||
// Información del País
|
||||
inm.mapamundi.vo.Pais paisINM = new inm.mapamundi.vo.Pais();
|
||||
paisINM.setIdentificador(pais.getIdentificador());
|
||||
paisINM.setNombre(pais.getNombre());
|
||||
paisINM.setCapital(pais.getCapital());
|
||||
// Información del Continente
|
||||
inm.mapamundi.vo.Continente continenteINM = new inm.mapamundi.vo.Continente();
|
||||
continenteINM.setCodigo(pais.getContinente().getCodigo());
|
||||
continenteINM.setNombre(pais.getContinente().getNombre());
|
||||
paisINM.setContinente(continenteINM);
|
||||
|
||||
paisINMDAO.actualizarPais(paisINM);
|
||||
} catch (Exception e) {
|
||||
throw new CineException(e, getClass(), CineException.ERROR_ACTUALIZACION);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Pais> obtenerListaPaisesAmericanosEmpiezanSa() throws CineException {
|
||||
List<Pais> listaPaises = null;
|
||||
IPaisINMDAO paisINMDAO = new PaisINMDaoJDBC();
|
||||
try {
|
||||
List<inm.mapamundi.vo.Pais> listaPaisesINM = paisINMDAO.obtenerListaPaisesAmericanosEmpiezanSa();
|
||||
if (listaPaisesINM != null) {
|
||||
listaPaises = new java.util.ArrayList<Pais>();
|
||||
for (inm.mapamundi.vo.Pais paisINM : listaPaisesINM) {
|
||||
// Información del Continente
|
||||
Continente continente = new Continente();
|
||||
continente.setCodigo(paisINM.getContinente().getCodigo());
|
||||
continente.setNombre(paisINM.getContinente().getNombre());
|
||||
|
||||
// Información del País
|
||||
Pais pais = new Pais();
|
||||
pais.setIdentificador(paisINM.getIdentificador());
|
||||
pais.setNombre(paisINM.getNombre());
|
||||
pais.setCapital(paisINM.getCapital());
|
||||
pais.setContinente(continente);
|
||||
|
||||
listaPaises.add(pais);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
throw new CineException(e, getClass(), CineException.ERROR_CONSULTA);
|
||||
}
|
||||
return listaPaises;
|
||||
}
|
||||
|
||||
}
|
||||
15
src/es/palomafp/aadd/inm/dao/impl/PeliculaDaoGeneral.java
Normal file
15
src/es/palomafp/aadd/inm/dao/impl/PeliculaDaoGeneral.java
Normal file
@ -0,0 +1,15 @@
|
||||
package es.palomafp.aadd.inm.dao.impl;
|
||||
|
||||
import es.palomafp.aadd.inm.dao.IPeliculaDAO;
|
||||
|
||||
/**
|
||||
*
|
||||
* PeliculaDaoGeneral: Clase que representa la implementación de un Pelicula
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public class PeliculaDaoGeneral implements IPeliculaDAO{
|
||||
|
||||
}
|
||||
155
src/es/palomafp/aadd/inm/dao/impl/RepartoDaoJDBC.java
Normal file
155
src/es/palomafp/aadd/inm/dao/impl/RepartoDaoJDBC.java
Normal file
@ -0,0 +1,155 @@
|
||||
package es.palomafp.aadd.inm.dao.impl;
|
||||
|
||||
import java.sql.CallableStatement;
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import es.palomafp.aadd.inm.dao.IPaisDAO;
|
||||
import es.palomafp.aadd.inm.dao.IRepartoDAO;
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
import es.palomafp.aadd.inm.gestor.GestorConexionJDBC;
|
||||
import es.palomafp.aadd.inm.vo.Actor;
|
||||
import es.palomafp.aadd.inm.vo.Director;
|
||||
import es.palomafp.aadd.inm.vo.Pais;
|
||||
import es.palomafp.aadd.inm.vo.Pelicula;
|
||||
import es.palomafp.aadd.inm.vo.Reparto;
|
||||
|
||||
/**
|
||||
*
|
||||
* RepartoDaoGeneral: Clase que representa la implementación de un Reparto con
|
||||
* JDBC
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
|
||||
public class RepartoDaoJDBC implements IRepartoDAO {
|
||||
|
||||
@Override
|
||||
public List<Reparto> obtenerListaRepartoPeliculasNombreActorTerminaT() throws CineException {
|
||||
List<Reparto> listaReparto = null;
|
||||
String sentenciaSQL = """
|
||||
select a.nombre as nombre_actor, a.id_pais as id_pais_actor,
|
||||
p.titulo as titulo_pelicula, p.id_pais as id_pais_pelicula,
|
||||
d.nombre as nombre_director, d.id_pais as id_pais_director, d.fecha_nacimiento as fecha_nacimiento_director
|
||||
from reparto r join actor a
|
||||
on r.id_actor =a.identificador
|
||||
join pelicula p
|
||||
on p.identificador =r.id_pelicula
|
||||
join director d
|
||||
on p.id_director = d.identificador
|
||||
where p.identificador IN (SELECT re.id_pelicula
|
||||
from reparto re join actor ac
|
||||
on re.id_actor = ac.identificador
|
||||
join pelicula pe
|
||||
on re.id_pelicula = pe.identificador
|
||||
where ac.nombre like '%t');
|
||||
""";
|
||||
|
||||
// try con recursos "cerrables": Connection, Statement, ResultSet
|
||||
try (Connection conexion = GestorConexionJDBC.obtenerConexionJDBC();
|
||||
PreparedStatement pstm = conexion.prepareStatement(sentenciaSQL);
|
||||
ResultSet resultado = pstm.executeQuery();) {
|
||||
listaReparto = new ArrayList<Reparto>();
|
||||
while (resultado.next()) {
|
||||
IPaisDAO paisDAO = new PaisDaoJAR();
|
||||
// Información del Actor
|
||||
String nombreActor = resultado.getString("nombre_actor");
|
||||
int idPaisNacimientoActor = resultado.getInt("id_pais_actor");
|
||||
Pais paisNacimientoActor = paisDAO.obtenerPaisPorId(idPaisNacimientoActor);
|
||||
Actor actor = new Actor();
|
||||
actor.setNombre(nombreActor);
|
||||
actor.setPaisNacimiento(paisNacimientoActor);
|
||||
|
||||
// Información del Director
|
||||
String nombreDirector = resultado.getString("nombre_director");
|
||||
int idPaisNacimientoDirector = resultado.getInt("id_pais_director");
|
||||
Pais paisNacimientoDirector = paisDAO.obtenerPaisPorId(idPaisNacimientoDirector);
|
||||
Date fechaNacimientoDirector = resultado.getDate("fecha_nacimiento_director");
|
||||
Director director = new Director();
|
||||
director.setNombre(nombreDirector);
|
||||
director.setPaisNacimiento(paisNacimientoDirector);
|
||||
director.setFechaNacimiento(fechaNacimientoDirector);
|
||||
|
||||
// Información de la Película
|
||||
String tituloPelicula = resultado.getString("titulo_pelicula");
|
||||
int idPaisLocalizacionPelicula = resultado.getInt("id_pais_pelicula");
|
||||
Pais paisLocalizacionPelicula = paisDAO.obtenerPaisPorId(idPaisLocalizacionPelicula);
|
||||
Pelicula pelicula = new Pelicula();
|
||||
pelicula.setTitulo(tituloPelicula);
|
||||
pelicula.setPaisLocalizacion(paisLocalizacionPelicula);
|
||||
pelicula.setDirector(director);
|
||||
|
||||
// Completar los atributos de Reparto
|
||||
Reparto reparto = new Reparto();
|
||||
reparto.setActor(actor);
|
||||
reparto.setPelicula(pelicula);
|
||||
|
||||
listaReparto.add(reparto);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
throw new CineException(e, getClass(), CineException.ERROR_CONSULTA);
|
||||
}
|
||||
return listaReparto;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Reparto> obtenerListaRepartoPeliculasNombreActorConPatron(String patron) throws CineException{
|
||||
List<Reparto> listaReparto = null;
|
||||
// try con recursos "cerrables": Connection, Statement, ResultSet
|
||||
try (Connection conexion = GestorConexionJDBC.obtenerConexionJDBC();
|
||||
CallableStatement cstmt = conexion.prepareCall("{call obtenerRepartoPeliculasPorActor(?)}");) {
|
||||
|
||||
// El parámetro es el patrón por el que se va a buscar
|
||||
cstmt.setString(1, patron);
|
||||
ResultSet resultado = cstmt.executeQuery();
|
||||
|
||||
listaReparto = new ArrayList<Reparto>();
|
||||
while (resultado.next()) {
|
||||
IPaisDAO paisDAO = new PaisDaoJAR();
|
||||
// Información del Actor
|
||||
String nombreActor = resultado.getString("nombre_actor");
|
||||
int idPaisNacimientoActor = resultado.getInt("id_pais_actor");
|
||||
Pais paisNacimientoActor = paisDAO.obtenerPaisPorId(idPaisNacimientoActor);
|
||||
Actor actor = new Actor();
|
||||
actor.setNombre(nombreActor);
|
||||
actor.setPaisNacimiento(paisNacimientoActor);
|
||||
|
||||
// Información del Director
|
||||
String nombreDirector = resultado.getString("nombre_director");
|
||||
int idPaisNacimientoDirector = resultado.getInt("id_pais_director");
|
||||
Pais paisNacimientoDirector = paisDAO.obtenerPaisPorId(idPaisNacimientoDirector);
|
||||
Date fechaNacimientoDirector = resultado.getDate("fecha_nacimiento_director");
|
||||
Director director = new Director();
|
||||
director.setNombre(nombreDirector);
|
||||
director.setPaisNacimiento(paisNacimientoDirector);
|
||||
director.setFechaNacimiento(fechaNacimientoDirector);
|
||||
|
||||
// Información de la Película
|
||||
String tituloPelicula = resultado.getString("titulo_pelicula");
|
||||
int idPaisLocalizacionPelicula = resultado.getInt("id_pais_pelicula");
|
||||
Pais paisLocalizacionPelicula = paisDAO.obtenerPaisPorId(idPaisLocalizacionPelicula);
|
||||
Pelicula pelicula = new Pelicula();
|
||||
pelicula.setTitulo(tituloPelicula);
|
||||
pelicula.setPaisLocalizacion(paisLocalizacionPelicula);
|
||||
pelicula.setDirector(director);
|
||||
|
||||
// Completar los atributos de Reparto
|
||||
Reparto reparto = new Reparto();
|
||||
reparto.setActor(actor);
|
||||
reparto.setPelicula(pelicula);
|
||||
|
||||
listaReparto.add(reparto);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
throw new CineException(e, getClass(), CineException.ERROR_CONSULTA);
|
||||
}
|
||||
return listaReparto;
|
||||
}
|
||||
|
||||
}
|
||||
57
src/es/palomafp/aadd/inm/excepcion/CineException.java
Normal file
57
src/es/palomafp/aadd/inm/excepcion/CineException.java
Normal file
@ -0,0 +1,57 @@
|
||||
package es.palomafp.aadd.inm.excepcion;
|
||||
|
||||
/**
|
||||
*
|
||||
* CineException: Clase que representa una excepción genérica del proyeto Cine
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 26 nov 2025
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
public class CineException extends Exception {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = -7090518753638026268L;
|
||||
|
||||
private int codigoError;
|
||||
private Class<?> claseOrigen;
|
||||
|
||||
public static final int ERROR_GENERAL=0;
|
||||
public static final int ERROR_GESTION_CONEXION=1;
|
||||
public static final int ERROR_CONSULTA=2;
|
||||
public static final int ERROR_INSERCION=3;
|
||||
public static final int ERROR_ACTUALIZACION=4;
|
||||
public static final int ERROR_BORRADO=5;
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public CineException() {
|
||||
super();
|
||||
}
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public CineException(Exception e, Class<?> clase, int codError) {
|
||||
super(e);
|
||||
claseOrigen=clase;
|
||||
codigoError=codError;
|
||||
}
|
||||
|
||||
|
||||
public Class<?> getClaseOrigen() {
|
||||
return claseOrigen;
|
||||
}
|
||||
public void setClaseOrigen(Class<?> claseOrigen) {
|
||||
this.claseOrigen = claseOrigen;
|
||||
}
|
||||
public int getCodigoError() {
|
||||
return codigoError;
|
||||
}
|
||||
public void setCodigoError(int codigoError) {
|
||||
this.codigoError = codigoError;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
41
src/es/palomafp/aadd/inm/gestor/GestorConexionJDBC.java
Normal file
41
src/es/palomafp/aadd/inm/gestor/GestorConexionJDBC.java
Normal file
@ -0,0 +1,41 @@
|
||||
package es.palomafp.aadd.inm.gestor;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.SQLException;
|
||||
|
||||
import es.palomafp.aadd.inm.excepcion.CineException;
|
||||
|
||||
/**
|
||||
*
|
||||
* GestorConexionJDBC: Clase que realiza ....
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 6 nov 2025
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
public class GestorConexionJDBC {
|
||||
|
||||
// Constructor privado para evitar instanciación
|
||||
private GestorConexionJDBC() {
|
||||
}
|
||||
|
||||
public static Connection obtenerConexionJDBC() throws CineException {
|
||||
Connection conexion = null;
|
||||
String driverJDBC= GestorFicheroConfiguracion.getValorDeConfiguracion("jdbc.driver");
|
||||
try {
|
||||
Class.forName(driverJDBC);
|
||||
|
||||
String urlJDBC= GestorFicheroConfiguracion.getValorDeConfiguracion("jdbc.url");
|
||||
String usuario= GestorFicheroConfiguracion.getValorDeConfiguracion("jdbc.usuario");
|
||||
String password= GestorFicheroConfiguracion.getValorDeConfiguracion("jdbc.password");
|
||||
|
||||
conexion=DriverManager.getConnection(urlJDBC, usuario, password);
|
||||
} catch (ClassNotFoundException | SQLException e) {
|
||||
throw new CineException(e, GestorConexionJDBC.class, CineException.ERROR_GESTION_CONEXION);
|
||||
}
|
||||
return conexion;
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,38 @@
|
||||
package es.palomafp.aadd.inm.gestor;
|
||||
|
||||
import java.io.FileInputStream;
|
||||
import java.util.Properties;
|
||||
|
||||
/**
|
||||
*
|
||||
* GestorFicheroConfiguracion: Clase que se encarga de gestionar el fichero de configuración.
|
||||
*
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 31 oct 2025
|
||||
*/
|
||||
public class GestorFicheroConfiguracion {
|
||||
private static final String RUTA_FICHERO_CONFIGURACION = "config/config.properties";
|
||||
private static Properties propiedades;
|
||||
|
||||
private GestorFicheroConfiguracion() {
|
||||
// Constructor privado para evitar instanciación
|
||||
}
|
||||
static {
|
||||
propiedades= new Properties();
|
||||
try {
|
||||
// Fichero que está en el classpath
|
||||
//propiedades.load(GestorFicheroConfiguracion.class.getClassLoader().getResourceAsStream(RUTA_FICHERO_CONFIGURACION));
|
||||
|
||||
// Fichero con ruta relativa al proyecto
|
||||
propiedades.load(new FileInputStream(RUTA_FICHERO_CONFIGURACION));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public static String getValorDeConfiguracion(String clave) {
|
||||
String valor = null;
|
||||
valor = propiedades.getProperty(clave);
|
||||
return valor;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,25 @@
|
||||
package es.palomafp.aadd.inm.util;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*
|
||||
* ConversorTiposDatos: Clase que realiza conversiones entre tipos de datos y formatos.
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 14 nov 2025
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
public class ConversorTiposDatosYFormatos {
|
||||
public static String convertirDateAString(Date fecha, String formato) {
|
||||
String fechaFormateada = null;
|
||||
fechaFormateada= LocalDate.parse(fecha.toString())
|
||||
.format(DateTimeFormatter.ofPattern(formato));
|
||||
|
||||
return fechaFormateada;
|
||||
}
|
||||
}
|
||||
|
||||
47
src/es/palomafp/aadd/inm/vo/Actor.java
Normal file
47
src/es/palomafp/aadd/inm/vo/Actor.java
Normal file
@ -0,0 +1,47 @@
|
||||
package es.palomafp.aadd.inm.vo;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*
|
||||
* Actor: Clase que representa el contenido de un Actor
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
public class Actor {
|
||||
private int identificador;
|
||||
private String nombre;
|
||||
private Date fechaNacimiento;
|
||||
private Pais paisNacimiento;
|
||||
|
||||
public int getIdentificador() {
|
||||
return identificador;
|
||||
}
|
||||
public void setIdentificador(int identificador) {
|
||||
this.identificador = identificador;
|
||||
}
|
||||
public String getNombre() {
|
||||
return nombre;
|
||||
}
|
||||
public void setNombre(String nombre) {
|
||||
this.nombre = nombre;
|
||||
}
|
||||
public Date getFechaNacimiento() {
|
||||
return fechaNacimiento;
|
||||
}
|
||||
public void setFechaNacimiento(Date fechaNacimiento) {
|
||||
this.fechaNacimiento = fechaNacimiento;
|
||||
}
|
||||
public Pais getPaisNacimiento() {
|
||||
return paisNacimiento;
|
||||
}
|
||||
public void setPaisNacimiento(Pais paisNacimiento) {
|
||||
this.paisNacimiento = paisNacimiento;
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Actor [identificador=" + identificador + ", nombre=" + nombre + ", fechaNacimiento=" + fechaNacimiento
|
||||
+ ", paisNacimiento=" + paisNacimiento + "]";
|
||||
}
|
||||
}
|
||||
31
src/es/palomafp/aadd/inm/vo/Continente.java
Normal file
31
src/es/palomafp/aadd/inm/vo/Continente.java
Normal file
@ -0,0 +1,31 @@
|
||||
package es.palomafp.aadd.inm.vo;
|
||||
|
||||
/**
|
||||
*
|
||||
* Continente: Clase que representa el contenido de un Continente
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
public class Continente {
|
||||
private String codigo;
|
||||
private String nombre;
|
||||
|
||||
public String getCodigo() {
|
||||
return codigo;
|
||||
}
|
||||
public void setCodigo(String codigo) {
|
||||
this.codigo = codigo;
|
||||
}
|
||||
public String getNombre() {
|
||||
return nombre;
|
||||
}
|
||||
public void setNombre(String nombre) {
|
||||
this.nombre = nombre;
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Continente [codigo=" + codigo + ", nombre=" + nombre + "]";
|
||||
}
|
||||
|
||||
}
|
||||
47
src/es/palomafp/aadd/inm/vo/Director.java
Normal file
47
src/es/palomafp/aadd/inm/vo/Director.java
Normal file
@ -0,0 +1,47 @@
|
||||
package es.palomafp.aadd.inm.vo;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
*
|
||||
* Director: Clase que representa el contenido de un Director
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
public class Director {
|
||||
private int identificador;
|
||||
private String nombre;
|
||||
private Date fechaNacimiento;
|
||||
private Pais paisNacimiento;
|
||||
|
||||
public int getIdentificador() {
|
||||
return identificador;
|
||||
}
|
||||
public void setIdentificador(int identificador) {
|
||||
this.identificador = identificador;
|
||||
}
|
||||
public String getNombre() {
|
||||
return nombre;
|
||||
}
|
||||
public void setNombre(String nombre) {
|
||||
this.nombre = nombre;
|
||||
}
|
||||
public Date getFechaNacimiento() {
|
||||
return fechaNacimiento;
|
||||
}
|
||||
public void setFechaNacimiento(Date fechaNacimiento) {
|
||||
this.fechaNacimiento = fechaNacimiento;
|
||||
}
|
||||
public Pais getPaisNacimiento() {
|
||||
return paisNacimiento;
|
||||
}
|
||||
public void setPaisNacimiento(Pais paisNacimiento) {
|
||||
this.paisNacimiento = paisNacimiento;
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Actor [identificador=" + identificador + ", nombre=" + nombre + ", fechaNacimiento=" + fechaNacimiento
|
||||
+ ", paisNacimiento=" + paisNacimiento + "]";
|
||||
}
|
||||
}
|
||||
44
src/es/palomafp/aadd/inm/vo/Pais.java
Normal file
44
src/es/palomafp/aadd/inm/vo/Pais.java
Normal file
@ -0,0 +1,44 @@
|
||||
package es.palomafp.aadd.inm.vo;
|
||||
|
||||
/**
|
||||
*
|
||||
* Pais: Clase que representa el contenido de un Pais
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
public class Pais {
|
||||
private int identificador;
|
||||
private String nombre;
|
||||
private String capital;
|
||||
private Continente continente;
|
||||
public int getIdentificador() {
|
||||
return identificador;
|
||||
}
|
||||
public void setIdentificador(int identificador) {
|
||||
this.identificador = identificador;
|
||||
}
|
||||
public String getNombre() {
|
||||
return nombre;
|
||||
}
|
||||
public void setNombre(String nombre) {
|
||||
this.nombre = nombre;
|
||||
}
|
||||
public String getCapital() {
|
||||
return capital;
|
||||
}
|
||||
public void setCapital(String capital) {
|
||||
this.capital = capital;
|
||||
}
|
||||
public Continente getContinente() {
|
||||
return continente;
|
||||
}
|
||||
public void setContinente(Continente continente) {
|
||||
this.continente = continente;
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Pais [identificador=" + identificador + ", nombre=" + nombre + ", capital=" + capital + ", continente="
|
||||
+ continente + "]\n";
|
||||
}
|
||||
}
|
||||
90
src/es/palomafp/aadd/inm/vo/Pelicula.java
Normal file
90
src/es/palomafp/aadd/inm/vo/Pelicula.java
Normal file
@ -0,0 +1,90 @@
|
||||
package es.palomafp.aadd.inm.vo;
|
||||
|
||||
/**
|
||||
*
|
||||
* Pelicula: Clase que representa el contenido de un Pelicula
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
public class Pelicula {
|
||||
private int identificador;
|
||||
private String titulo;
|
||||
private int anyo;
|
||||
private String idioma;
|
||||
private boolean color;
|
||||
private String observaciones;
|
||||
private Director director;
|
||||
private Pais paisLocalizacion;
|
||||
|
||||
public int getIdentificador() {
|
||||
return identificador;
|
||||
}
|
||||
|
||||
public void setIdentificador(int identificador) {
|
||||
this.identificador = identificador;
|
||||
}
|
||||
|
||||
public String getTitulo() {
|
||||
return titulo;
|
||||
}
|
||||
|
||||
public void setTitulo(String titulo) {
|
||||
this.titulo = titulo;
|
||||
}
|
||||
|
||||
public int getAnyo() {
|
||||
return anyo;
|
||||
}
|
||||
|
||||
public void setAnyo(int anyo) {
|
||||
this.anyo = anyo;
|
||||
}
|
||||
|
||||
public String getIdioma() {
|
||||
return idioma;
|
||||
}
|
||||
|
||||
public void setIdioma(String idioma) {
|
||||
this.idioma = idioma;
|
||||
}
|
||||
|
||||
public boolean isColor() {
|
||||
return color;
|
||||
}
|
||||
|
||||
public void setColor(boolean color) {
|
||||
this.color = color;
|
||||
}
|
||||
|
||||
public String getObservaciones() {
|
||||
return observaciones;
|
||||
}
|
||||
|
||||
public void setObservaciones(String observaciones) {
|
||||
this.observaciones = observaciones;
|
||||
}
|
||||
|
||||
public Director getDirector() {
|
||||
return director;
|
||||
}
|
||||
|
||||
public void setDirector(Director director) {
|
||||
this.director = director;
|
||||
}
|
||||
|
||||
public Pais getPaisLocalizacion() {
|
||||
return paisLocalizacion;
|
||||
}
|
||||
|
||||
public void setPaisLocalizacion(Pais paisLocalizacion) {
|
||||
this.paisLocalizacion = paisLocalizacion;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Pelicula [identificador=" + identificador + ", titulo=" + titulo + ", anyo=" + anyo + ", idioma="
|
||||
+ idioma + ", color=" + color + ", observaciones=" + observaciones + ", director=" + director
|
||||
+ ", paisLocalizacion=" + paisLocalizacion + "]";
|
||||
}
|
||||
}
|
||||
36
src/es/palomafp/aadd/inm/vo/Reparto.java
Normal file
36
src/es/palomafp/aadd/inm/vo/Reparto.java
Normal file
@ -0,0 +1,36 @@
|
||||
package es.palomafp.aadd.inm.vo;
|
||||
|
||||
/**
|
||||
*
|
||||
* Reparto: Clase que representa el contenido de un Reparto
|
||||
*
|
||||
* @author Isidoro Nevares Martín - IES Virgen de la Paloma
|
||||
* @date 2 oct 2025
|
||||
*/
|
||||
public class Reparto {
|
||||
private String personaje;
|
||||
private Actor actor;
|
||||
private Pelicula pelicula;
|
||||
public String getPersonaje() {
|
||||
return personaje;
|
||||
}
|
||||
public void setPersonaje(String personaje) {
|
||||
this.personaje = personaje;
|
||||
}
|
||||
public Actor getActor() {
|
||||
return actor;
|
||||
}
|
||||
public void setActor(Actor actor) {
|
||||
this.actor = actor;
|
||||
}
|
||||
public Pelicula getPelicula() {
|
||||
return pelicula;
|
||||
}
|
||||
public void setPelicula(Pelicula pelicula) {
|
||||
this.pelicula = pelicula;
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Reparto [personaje=" + personaje + ", actor=" + actor + ", pelicula=" + pelicula + "]";
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user