Documente Academic
Documente Profesional
Documente Cultură
Requerimientos:
APLICACIÓN 1: Person
PASO 1
PASO 2
-- Table: person
CREATE TABLE person
(
idper serial NOT NULL, -- primary key de la tabla
name character varying(60) NOT NULL, -- nombre de la persona
age integer NOT NULL, --edad de la persona
idprof integer NOT NULL, --referencia externa, a la tabla proffesion
CONSTRAINT pk_person PRIMARY KEY (idper),
CONSTRAINT uq_person_name_idprof UNIQUE (name, idprof),
CONSTRAINT ck_person_age CHECK (age >= 18 AND age <= 120),
CONSTRAINT fk_person_proffesion FOREIGN KEY (idprof) REFERENCES proffesion (id-
prof)
ON UPDATE NO ACTION ON DELETE NO ACTION
);
ALTER TABLE person OWNER TO postgres;
COMMENT ON TABLE person IS 'Tabla para almacenar personas';
COMMENT ON COLUMN person.idper IS 'primary key de la tabla';
COMMENT ON COLUMN person.name IS 'nombre de la persona';
COMMENT ON COLUMN person.age IS 'edad de la persona';
COMMENT ON COLUMN person.idprof IS 'referencia externa, a la tabla proffesion';--
Table: proffesion
CREATE TABLE proffesion
(
idprof serial NOT NULL, -- primary key de la tabla
proffesion character varying(30) NOT NULL, -- Nombre de la profesion
CONSTRAINT pk_proffesion PRIMARY KEY (idprof),
CONSTRAINT uq_proffesion_proffesion UNIQUE (proffesion)
);
ALTER TABLE proffesion OWNER TO postgres;
COMMENT ON TABLE proffesion IS 'Tabla para guardar profesiones';
COMMENT ON COLUMN proffesion.idprof IS 'primary key de la tabla';
COMMENT ON COLUMN proffesion.proffesion IS 'Nombre de la profesion';
-- Table: person
CREATE TABLE person
(
idper serial NOT NULL, -- primary key de la tabla
name character varying(60) NOT NULL, -- nombre de la persona
age integer NOT NULL, --edad de la persona
idprof integer NOT NULL, --referencia externa, a la tabla proffesion
CONSTRAINT pk_person PRIMARY KEY (idper),
CONSTRAINT uq_person_name_idprof UNIQUE (name, idprof),
CONSTRAINT ck_person_age CHECK (age >= 18 AND age <= 120),
CONSTRAINT fk_person_proffesion FOREIGN KEY (idprof) REFERENCES proffesion
(idprof)
ON UPDATE NO ACTION ON DELETE NO ACTION
);
ALTER TABLE person OWNER TO postgres;
COMMENT ON TABLE person IS 'Tabla para almacenar personas';
COMMENT ON COLUMN person.idper IS 'primary key de la tabla';
COMMENT ON COLUMN person.name IS 'nombre de la persona';
COMMENT ON COLUMN person.age IS 'edad de la persona';
COMMENT ON COLUMN person.idprof IS 'referencia externa, a la tabla proffesion';
PASO 3
PASO 4
● repository
● service
● controller
● entity
● model
● component
● constant
● resources
● commons-dbcp2-2.1.1.jar
● commons-logging-1.2.jar
● commons-pool2-2.4.2.jar
● geronimo-jta_1.1_spec-1.1.1.jar
PASO 5
Package: pe.gob.minam.sereno.resources.jdbc
# Parametros de conexion a la base de datos
usuario = postgres
password = postgres
url = jdbc:postgresql://localhost:5432/dblpa?useSSL=false
driver = org.postgresql.Driver
# parametros adiconal para el pool coneccion
initialSize = 3
maxTotal = 500
PASO 6
import java.sql.Connection;
import java.sql.SQLException;
import java.util.ResourceBundle;
import org.apache.commons.dbcp2.BasicDataSource;
ds.setDriverClassName(driver);
ds.setUsername(usuario);
ds.setPassword(password);
ds.setUrl(url);
ds.setInitialSize(initialSize);
ds.setMaxTotal(maxTotal);
Connection cn = null;
try {
cn = ds.getConnection();
} catch (SQLException e) {
} catch (Exception e) {
}
return cn;
}
}package pe.gob.minam.sereno.component;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.ResourceBundle;
import org.apache.commons.dbcp2.BasicDataSource;
ds.setDriverClassName(driver);
ds.setUsername(usuario);
ds.setPassword(password);
ds.setUrl(url);
ds.setInitialSize(initialSize);
ds.setMaxTotal(maxTotal);
Connection cn = null;
try {
cn = ds.getConnection();
} catch (SQLException e) {
} catch (Exception e) {
}
return cn;
}
}
PASO 7
PASO 8
public Proffesion() {
}
public Proffesion() {
}
Tabla person
public Person() {
}
public Person() {
}
PASO 9
Crear el repository
Proffesion:
import java.util.List;
import pe.gob.minam.sereno.entity.Proffesion;
import java.util.List;
import pe.gob.minam.sereno.entity.Proffesion;
Implementación de Proffesion
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.List;
import pe.gob.minam.sereno.component.ConectaDb;
import pe.gob.minam.sereno.constant.EsquemaConstant;
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.repository.ProffesionRepository;
public ProffesionRepositoryImpl() {
ds = new ConectaDb(nombreEsquemaDB);
}
@Override
public String insert(Proffesion dto) {
String result = null;
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setString(1, dto.getProffesion());
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
@Override
public String delete(Integer id) {
String result = null;
String sql = "DELETE FROM proffesion WHERE idprof = ?";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1, id);
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
@Override
public Proffesion get(Integer id) {
Proffesion dto = null;
String sql = "SELECT idprof, proffesion FROM proffesion WHERE idprof = ?";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1, id);
ResultSet rs = ps.executeQuery();
if(rs.next()){
dto = new Proffesion();
dto.setIdprof(rs.getInt(1));
dto.setProffesion(rs.getString(2));
}
} catch (SQLException ex) {
}finally {
try {
cn.close();
} catch (Exception ex) {
}
}
}
return dto;
}
@Override
public List<Proffesion> query() {
List<Proffesion> list = null;
String sql = "SELECT idprof, proffesion FROM proffesion";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
list = new LinkedList<>();
while(rs.next()){
Proffesion dto = new Proffesion();
dto.setIdprof(rs.getInt(1));
dto.setProffesion(rs.getString(2));
list.add(dto);
}
} catch (SQLException ex) {
}finally {
try {
cn.close();
} catch (Exception ex) {
}
}
}
return list;
}
@Override
public String update(Proffesion dto) {
String result = null;
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setString(1, dto.getProffesion());
ps.setInt(2, dto.getIdprof());
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
}package pe.gob.minam.sereno.repository.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.List;
import pe.gob.minam.sereno.component.ConectaDb;
import pe.gob.minam.sereno.constant.EsquemaConstant;
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.repository.ProffesionRepository;
public ProffesionRepositoryImpl() {
ds = new ConectaDb(nombreEsquemaDB);
}
@Override
public String insert(Proffesion dto) {
String result = null;
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setString(1, dto.getProffesion());
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
@Override
public String delete(Integer id) {
String result = null;
String sql = "DELETE FROM proffesion WHERE idprof = ?";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1, id);
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
@Override
public Proffesion get(Integer id) {
Proffesion dto = null;
String sql = "SELECT idprof, proffesion FROM proffesion WHERE idprof =
?";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1, id);
ResultSet rs = ps.executeQuery();
if(rs.next()){
dto = new Proffesion();
dto.setIdprof(rs.getInt(1));
dto.setProffesion(rs.getString(2));
}
} catch (SQLException ex) {
}finally {
try {
cn.close();
} catch (Exception ex) {
}
}
}
return dto;
}
@Override
public List<Proffesion> query() {
List<Proffesion> list = null;
String sql = "SELECT idprof, proffesion FROM proffesion";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
list = new LinkedList<>();
while(rs.next()){
Proffesion dto = new Proffesion();
dto.setIdprof(rs.getInt(1));
dto.setProffesion(rs.getString(2));
list.add(dto);
}
} catch (SQLException ex) {
}finally {
try {
cn.close();
} catch (Exception ex) {
}
}
}
return list;
}
@Override
public String update(Proffesion dto) {
String result = null;
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setString(1, dto.getProffesion());
ps.setInt(2, dto.getIdprof());
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
}
Person:
import java.util.List;
import pe.gob.minam.sereno.entity.Person;
public interface PersonRepository {
public String insert(Person dto);
public String delete(Integer id);
public Person get(Integer id);
public List<Person> query();
public String update(Person dto);
}package pe.gob.minam.sereno.repository;
import java.util.List;
import pe.gob.minam.sereno.entity.Person;
Implementación de Person:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.List;
import pe.gob.minam.sereno.component.ConectaDb;
import pe.gob.minam.sereno.constant.EsquemaConstant;
import pe.gob.minam.sereno.entity.Person;
import pe.gob.minam.sereno.repository.PersonRepository;
public class PersonRepositoryImpl implements PersonRepository {
public PersonRepositoryImpl() {
ds = new ConectaDb(nombreEsquemaDB);
}
@Override
public String insert(Person dto) {
String result = null;
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setString(1, dto.getName());
ps.setInt(2, dto.getAge());
ps.setInt(3, dto.getIdprof());
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
@Override
public String delete(Integer id) {
String result = null;
String sql = "DELETE FROM person WHERE idper = ?";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1, id);
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
@Override
public Person get(Integer id) {
Person dto = null;
String sql = "SELECT idper, name, age, idprof FROM person WHERE idper = ?";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1, id);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
dto = new Person();
dto.setIdper(rs.getInt(1));
dto.setName(rs.getString(2));
dto.setAge(rs.getInt(3));
dto.setIdprof(rs.getInt(4));
}
} catch (SQLException ex) {
} finally {
try {
cn.close();
} catch (Exception ex) {
}
}
}
return dto;
}
@Override
public List<Person> query() {
List<Person> list = null;
String sql = "SELECT idper, name, age, idprof FROM person";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
list = new LinkedList<>();
while (rs.next()) {
Person dto = new Person();
dto.setIdper(rs.getInt(1));
dto.setName(rs.getString(2));
dto.setAge(rs.getInt(3));
dto.setIdprof(rs.getInt(4));
list.add(dto);
}
} catch (SQLException ex) {
} finally {
try {
cn.close();
} catch (Exception ex) {
}
}
}
return list;
}
@Override
public String update(Person dto) {
String result = null;
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setString(1, dto.getName());
ps.setInt(2, dto.getAge());
ps.setInt(3, dto.getIdprof());
ps.setInt(4, dto.getIdper());
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
}package pe.gob.minam.sereno.repository.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.List;
import pe.gob.minam.sereno.component.ConectaDb;
import pe.gob.minam.sereno.constant.EsquemaConstant;
import pe.gob.minam.sereno.entity.Person;
import pe.gob.minam.sereno.repository.PersonRepository;
public PersonRepositoryImpl() {
ds = new ConectaDb(nombreEsquemaDB);
}
@Override
public String insert(Person dto) {
String result = null;
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setString(1, dto.getName());
ps.setInt(2, dto.getAge());
ps.setInt(3, dto.getIdprof());
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
@Override
public String delete(Integer id) {
String result = null;
String sql = "DELETE FROM person WHERE idper = ?";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1, id);
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
@Override
public Person get(Integer id) {
Person dto = null;
String sql = "SELECT idper, name, age, idprof FROM person WHERE idper =
?";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setInt(1, id);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
dto = new Person();
dto.setIdper(rs.getInt(1));
dto.setName(rs.getString(2));
dto.setAge(rs.getInt(3));
dto.setIdprof(rs.getInt(4));
}
} catch (SQLException ex) {
} finally {
try {
cn.close();
} catch (Exception ex) {
}
}
}
return dto;
}
@Override
public List<Person> query() {
List<Person> list = null;
String sql = "SELECT idper, name, age, idprof FROM person";
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
list = new LinkedList<>();
while (rs.next()) {
Person dto = new Person();
dto.setIdper(rs.getInt(1));
dto.setName(rs.getString(2));
dto.setAge(rs.getInt(3));
dto.setIdprof(rs.getInt(4));
list.add(dto);
}
} catch (SQLException ex) {
} finally {
try {
cn.close();
} catch (Exception ex) {
}
}
}
return list;
}
@Override
public String update(Person dto) {
String result = null;
Connection cn = ds.getConnection();
if (cn != null) {
try {
PreparedStatement ps = cn.prepareStatement(sql);
ps.setString(1, dto.getName());
ps.setInt(2, dto.getAge());
ps.setInt(3, dto.getIdprof());
ps.setInt(4, dto.getIdper());
int ctos = ps.executeUpdate();
if (ctos == 0) {
throw new SQLException("0 filas afectadas");
}
} catch (SQLException ex) {
result = ex.getMessage();
} finally {
try {
cn.close();
} catch (Exception ex) {
result = ex.getMessage();
}
}
}
return result;
}
}
PASO 10
Crear el model.
Proffesion
public ProffesionModel() {
}
Person
import pe.gob.minam.sereno.entity.Proffesion;
public PersonModel() {
}
import pe.gob.minam.sereno.entity.Proffesion;
public PersonModel() {
}
PASO 11
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.model.ProffesionModel;
Implementacion para Proffesion
import pe.gob.minam.sereno.converter.ProffessionConverter;
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.model.ProffesionModel;
@Override
public Proffesion entity(ProffesionModel model) {
Proffesion dtoEntity = new Proffesion();
dtoEntity.setIdprof(model.getIdprof());
dtoEntity.setProffesion(model.getProffesion());
return dtoEntity;
}
@Override
public ProffesionModel model(Proffesion entity) {
ProffesionModel dtoModel = new ProffesionModel();
dtoModel.setIdprof(entity.getIdprof());
dtoModel.setProffesion(entity.getProffesion());
return dtoModel;
}
}package pe.gob.minam.sereno.converter.impl;
import pe.gob.minam.sereno.converter.ProffessionConverter;
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.model.ProffesionModel;
@Override
public Proffesion entity(ProffesionModel model) {
Proffesion dtoEntity = new Proffesion();
dtoEntity.setIdprof(model.getIdprof());
dtoEntity.setProffesion(model.getProffesion());
return dtoEntity;
}
@Override
public ProffesionModel model(Proffesion entity) {
ProffesionModel dtoModel = new ProffesionModel();
dtoModel.setIdprof(entity.getIdprof());
dtoModel.setProffesion(entity.getProffesion());
return dtoModel;
}
}
Person
import pe.gob.minam.sereno.entity.Person;
import pe.gob.minam.sereno.model.PersonModel;
Implementación para Person
import pe.gob.minam.sereno.converter.PersonConverter;
import pe.gob.minam.sereno.entity.Person;
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.model.PersonModel;
import pe.gob.minam.sereno.repository.ProffesionRepository;
import pe.gob.minam.sereno.repository.impl.ProffesionRepositoryImpl;
@Override
public Person entity(PersonModel model) {
Person dtoEntity = new Person();
dtoEntity.setIdper(model.getIdper());
dtoEntity.setName(model.getName());
dtoEntity.setAge(model.getAge());
dtoEntity.setIdprof(model.getIdprof());
return dtoEntity;
}
@Override
public PersonModel model(Person entity) {
ProffesionRepository pr = new ProffesionRepositoryImpl();
Proffesion proffesion = pr.get(entity.getIdprof());
PersonModel dtoModel = new PersonModel();
dtoModel.setIdper(entity.getIdper());
dtoModel.setName(entity.getName());
dtoModel.setAge(entity.getAge());
dtoModel.setIdprof(entity.getIdprof());
dtoModel.setProffesion(proffesion);
return dtoModel;
}
}package pe.gob.minam.sereno.converter.impl;
import pe.gob.minam.sereno.converter.PersonConverter;
import pe.gob.minam.sereno.entity.Person;
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.model.PersonModel;
import pe.gob.minam.sereno.repository.ProffesionRepository;
import pe.gob.minam.sereno.repository.impl.ProffesionRepositoryImpl;
@Override
public Person entity(PersonModel model) {
Person dtoEntity = new Person();
dtoEntity.setIdper(model.getIdper());
dtoEntity.setName(model.getName());
dtoEntity.setAge(model.getAge());
dtoEntity.setIdprof(model.getIdprof());
return dtoEntity;
}
@Override
public PersonModel model(Person entity) {
ProffesionRepository pr = new ProffesionRepositoryImpl();
Proffesion proffesion = pr.get(entity.getIdprof());
PersonModel dtoModel = new PersonModel();
dtoModel.setIdper(entity.getIdper());
dtoModel.setName(entity.getName());
dtoModel.setAge(entity.getAge());
dtoModel.setIdprof(entity.getIdprof());
dtoModel.setProffesion(proffesion);
return dtoModel;
}
}
PASO 12
import java.util.List;
import pe.gob.minam.sereno.model.ProffesionModel;
import java.util.List;
import pe.gob.minam.sereno.model.ProffesionModel;
Implementacion para Proffesion
import java.util.LinkedList;
import java.util.List;
import pe.gob.minam.sereno.converter.ProffessionConverter;
import pe.gob.minam.sereno.converter.impl.ProffessionConverterImpl;
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.model.ProffesionModel;
import pe.gob.minam.sereno.repository.ProffesionRepository;
import pe.gob.minam.sereno.repository.impl.ProffesionRepositoryImpl;
import pe.gob.minam.sereno.services.ProffessionService;
ProffesionRepository r = null;
ProffessionConverter converter = null;
public ProffessionServiceImpl() {
r = new ProffesionRepositoryImpl();
converter = new ProffessionConverterImpl();
}
@Override
public String insert(ProffesionModel dtoModel) {
Proffesion dtoEntity = converter.entity(dtoModel);
return r.insert(dtoEntity);
}
@Override
public String delete(Integer id) {
return r.delete(id);
}
@Override
public ProffesionModel get(Integer id) {
Proffesion dtoEntity = r.get(id);
ProffesionModel dtoModel = converter.model(dtoEntity);
return dtoModel;
}
@Override
public List<ProffesionModel> query() {
List<Proffesion> listEntity = r.query();
List<ProffesionModel> listModel = new LinkedList<>();
for(Proffesion dtoEntity:listEntity){
listModel.add(converter.model(dtoEntity));
}
return listModel;
}
@Override
public String update(ProffesionModel dtoModel) {
return r.update(converter.entity(dtoModel));
}
}package pe.gob.minam.sereno.services.impl;
import java.util.LinkedList;
import java.util.List;
import pe.gob.minam.sereno.converter.ProffessionConverter;
import pe.gob.minam.sereno.converter.impl.ProffessionConverterImpl;
import pe.gob.minam.sereno.entity.Proffesion;
import pe.gob.minam.sereno.model.ProffesionModel;
import pe.gob.minam.sereno.repository.ProffesionRepository;
import pe.gob.minam.sereno.repository.impl.ProffesionRepositoryImpl;
import pe.gob.minam.sereno.services.ProffessionService;
ProffesionRepository r = null;
ProffessionConverter converter = null;
public ProffessionServiceImpl() {
r = new ProffesionRepositoryImpl();
converter = new ProffessionConverterImpl();
}
@Override
public String insert(ProffesionModel dtoModel) {
Proffesion dtoEntity = converter.entity(dtoModel);
return r.insert(dtoEntity);
}
@Override
public String delete(Integer id) {
return r.delete(id);
}
@Override
public ProffesionModel get(Integer id) {
Proffesion dtoEntity = r.get(id);
ProffesionModel dtoModel = converter.model(dtoEntity);
return dtoModel;
}
@Override
public List<ProffesionModel> query() {
List<Proffesion> listEntity = r.query();
List<ProffesionModel> listModel = new LinkedList<>();
for(Proffesion dtoEntity:listEntity){
listModel.add(converter.model(dtoEntity));
}
return listModel;
}
@Override
public String update(ProffesionModel dtoModel) {
return r.update(converter.entity(dtoModel));
}
}
Person
import java.util.List;
import pe.gob.minam.sereno.model.PersonModel;
import java.util.List;
import pe.gob.minam.sereno.model.PersonModel;
Implementación para Person
import java.util.LinkedList;
import java.util.List;
import pe.gob.minam.sereno.converter.PersonConverter;
import pe.gob.minam.sereno.converter.impl.PersonConverterImpl;
import pe.gob.minam.sereno.entity.Person;
import pe.gob.minam.sereno.model.PersonModel;
import pe.gob.minam.sereno.repository.PersonRepository;
import pe.gob.minam.sereno.repository.impl.PersonRepositoryImpl;
import pe.gob.minam.sereno.services.PersonService;
PersonRepository r = null;
PersonConverter converter = null;
public PersonServiceImpl() {
r = new PersonRepositoryImpl();
converter = new PersonConverterImpl();
}
@Override
public String insert(PersonModel dtoModel) {
Person dtoEntity = converter.entity(dtoModel);
return r.insert(dtoEntity);
}
@Override
public String delete(Integer id) {
return r.delete(id);
}
@Override
public PersonModel get(Integer id) {
Person dtoEntity = r.get(id);
PersonModel dtoModel = converter.model(dtoEntity);
return dtoModel;
}
@Override
public List<PersonModel> query() {
List<Person> listEntity = r.query();
List<PersonModel> listModel = new LinkedList<>();
for(Person dtoEntity:listEntity){
listModel.add(converter.model(dtoEntity));
}
return listModel;
}
@Override
public String update(PersonModel dtoModel) {
return r.update(converter.entity(dtoModel));
}
}package pe.gob.minam.sereno.services.impl;
import java.util.LinkedList;
import java.util.List;
import pe.gob.minam.sereno.converter.PersonConverter;
import pe.gob.minam.sereno.converter.impl.PersonConverterImpl;
import pe.gob.minam.sereno.entity.Person;
import pe.gob.minam.sereno.model.PersonModel;
import pe.gob.minam.sereno.repository.PersonRepository;
import pe.gob.minam.sereno.repository.impl.PersonRepositoryImpl;
import pe.gob.minam.sereno.services.PersonService;
PersonRepository r = null;
PersonConverter converter = null;
public PersonServiceImpl() {
r = new PersonRepositoryImpl();
converter = new PersonConverterImpl();
}
@Override
public String insert(PersonModel dtoModel) {
Person dtoEntity = converter.entity(dtoModel);
return r.insert(dtoEntity);
}
@Override
public String delete(Integer id) {
return r.delete(id);
}
@Override
public PersonModel get(Integer id) {
Person dtoEntity = r.get(id);
PersonModel dtoModel = converter.model(dtoEntity);
return dtoModel;
}
@Override
public List<PersonModel> query() {
List<Person> listEntity = r.query();
List<PersonModel> listModel = new LinkedList<>();
for(Person dtoEntity:listEntity){
listModel.add(converter.model(dtoEntity));
}
return listModel;
}
@Override
public String update(PersonModel dtoModel) {
return r.update(converter.entity(dtoModel));
}
}
PASO 13
Crear el controller
Proffesion
import java.io.IOException;
import java.util.List;
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 pe.gob.minam.sereno.model.ProffesionModel;
import pe.gob.minam.sereno.services.ProffessionService;
import pe.gob.minam.sereno.services.impl.ProffessionServiceImpl;
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
public String getServletInfo() {
return "Controller for Service";
}
}package pe.gob.minam.sereno.controller;
import java.io.IOException;
import java.util.List;
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 pe.gob.minam.sereno.model.ProffesionModel;
import pe.gob.minam.sereno.services.ProffessionService;
import pe.gob.minam.sereno.services.impl.ProffessionServiceImpl;
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
public String getServletInfo() {
return "Controller for Service";
}
Person
import java.io.IOException;
import java.util.List;
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 pe.gob.minam.sereno.model.PersonModel;
import pe.gob.minam.sereno.model.ProffesionModel;
import pe.gob.minam.sereno.services.PersonService;
import pe.gob.minam.sereno.services.ProffessionService;
import pe.gob.minam.sereno.services.impl.PersonServiceImpl;
import pe.gob.minam.sereno.services.impl.ProffessionServiceImpl;
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
public String getServletInfo() {
return "Controller for Person";
}
}package pe.gob.minam.sereno.controller;
import java.io.IOException;
import java.util.List;
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 pe.gob.minam.sereno.model.PersonModel;
import pe.gob.minam.sereno.model.ProffesionModel;
import pe.gob.minam.sereno.services.PersonService;
import pe.gob.minam.sereno.services.ProffessionService;
import pe.gob.minam.sereno.services.impl.PersonServiceImpl;
import pe.gob.minam.sereno.services.impl.ProffessionServiceImpl;
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
public String getServletInfo() {
return "Controller for Person";
}
}
PASO 14
● index.jsp
● proffesionQry.jsp
● proffesionIns.jsp
● proffesionUpd.jsp
● personQry.jsp
● personIns.jsp
● personUpd.jsp
● about.html
index.jsp
proffesionQry.jsp
proffesionIns.jsp
proffesionUpd.jsp
personQry.jsp
personIns.jsp
personUpd.jsp
about.html
<!DOCTYPE html>
<html>
<head>
<title>Sistema de Registro de Personal</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<nav>
<div>
<ul>
<li><a href="index.jsp">Home</a></li>
<li>
<a href="profesion.do?accion=QRY">Profesión</a>
</li>
<li>
<a href="person.do?accion=QRY">Personal</a>
</li>
<li>
<a href="about.html">About</a>
</li>
</ul>
</div>
</nav>
<h3>Sistema de Registro de Personal</h3>
</body>
</html>