Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package controlador; import entidades.Actualizacion; import entidades.Categoria; import entidades.CategoriaDocente; import entidades.Documento; import entidades.Experiencia; import entidades.ExperienciaLaboral; import entidades.FormacionAcademica; import entidades.Idioma; import entidades.Investigacion; import entidades.NivelFormacion; import entidades.Pasantia; import entidades.Persona; import entidades.Proyeccion; import entidades.Reconocimiento; import entidades.RegimenDocente; import entidades.Tecnologia; import entidades.Tipos; import java.io.IOException; import java.io.PrintWriter; 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 interfaceModel.InterPersona; import java.io.File; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import javax.servlet.http.Part; import modelo.ModeloPersona; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; import org.codehaus.jackson.map.ObjectMapper; import utils.Constans; /** * * @author Kelvin */ @WebServlet(name = "CPersona", urlPatterns = { "/CPersona" }) public class CPersona extends HttpServlet { private InterPersona interPersona = new ModeloPersona(); private ObjectMapper mapper = new ObjectMapper(); /** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods. * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); response.setCharacterEncoding("UTF-8"); request.setCharacterEncoding("UTF-8"); PrintWriter out = response.getWriter(); } // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code."> /** * Handles the HTTP <code>GET</code> method. * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * Handles the HTTP <code>POST</code> method. * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); //request.setCharacterEncoding("charset=utf-8"); response.setContentType("text/html;charset=UTF-8"); response.setCharacterEncoding("UTF-8"); request.setCharacterEncoding("UTF-8"); Persona persona = null; FormacionAcademica academica = null; ExperienciaLaboral experienciaLaboral = null; int PERSONA_personaId; PrintWriter out = response.getWriter(); int opc = Integer.parseInt(request.getParameter("OPC")); switch (opc) { case Constans.LISTARPERSONA: ArrayList<Persona> personas = interPersona .listarPersona(Integer.parseInt(request.getParameter("IDPERSONA"))); String jsonPersona = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(personas); out.println(jsonPersona); break; case Constans.ACTUALIZARPERSONA://This is for save update int id = Integer.parseInt(request.getParameter("ID")); String nombres = request.getParameter("NOMBRES"); String apPaterno = request.getParameter("PATERNO"); String apMaterno = request.getParameter("MATERNO"); String direccion = request.getParameter("DIRECCION"); String celular = request.getParameter("CELULAR"); String correo = request.getParameter("CORREO"); String dni = request.getParameter("DNI"); String fecha = request.getParameter("FECHAN"); String civil = request.getParameter("CIVIL"); String nacionalidad = request.getParameter("NACIONALIDAD"); int idregimen = Integer.parseInt(request.getParameter("IDREGIMEN")); String lugarNacimiento = request.getParameter("LUGAR"); String url = request.getParameter("URL"); persona = new Persona(id, nombres, apPaterno, apMaterno, direccion, celular, correo, dni, url, civil, nacionalidad, fecha, "", idregimen, lugarNacimiento, ""); int actualizo = interPersona.actualizarPersona(persona); out.println(actualizo); break; case Constans.CREARPERSONA: String dniP = request.getParameter("DNI"); int inserto = interPersona.crearPorDni(dniP); out.println(inserto); break; case Constans.CREARFORMACIONACADEMICA: String especialidad = request.getParameter("ESPECIALIDAD"); String fecha_concluye = request.getParameter("FECHA"); int nivelFormacion = Integer.parseInt(request.getParameter("NIVEL")); int idPersona = Integer.parseInt(request.getParameter("IDPERSONA")); int estadoConcluyo = Integer.parseInt(request.getParameter("ESTADO")); String nombreIns = request.getParameter("NOMBRE"); academica = new FormacionAcademica(0, especialidad, fecha_concluye, 1, estadoConcluyo, nivelFormacion, idPersona, "", nombreIns); int es = interPersona.agregarFormacionAcademica(academica); out.println(es); break; case Constans.LISTARFORMACIONACADEMICA: int ids = Integer.parseInt(request.getParameter("ID")); ArrayList<FormacionAcademica> academ = interPersona.listarFormacionAcademica(ids); String jsonStringl = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(academ); out.println(jsonStringl); break; case Constans.ELIMINARFORMACIONACADEMICA: int idFormacion = Integer.parseInt(request.getParameter("IDFORMACION")); int estadoEl = interPersona.eliminarFormacion(idFormacion); out.println(estadoEl); break; case Constans.LISTARCOMBONIVELFORMACION: ArrayList<NivelFormacion> nivelFormacions = interPersona.listarNivelesFormacion(); String json = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(nivelFormacions); out.println(json); break; case Constans.AGREGAREXPLABORAL: String dependencia = request.getParameter("DEPENDENCIA"); String cargo = request.getParameter("CARGO"); int tipo = Integer.parseInt(request.getParameter("TIPO")); String annoInicio = request.getParameter("AINICIO"); String annoFin = request.getParameter("AFIN"); String lugar = request.getParameter("LUGAR"); PERSONA_personaId = Integer.parseInt(request.getParameter("IDPERSONA")); experienciaLaboral = new ExperienciaLaboral(0, dependencia, cargo, annoInicio, annoFin, lugar, tipo, "", PERSONA_personaId, ""); int agregar = interPersona.agregarExperienciaLaboral(experienciaLaboral); out.println(agregar); break; case Constans.LISTARCOMBOREXPLABORAL: String tipoDes = request.getParameter("TIPODESCRIPCION"); ArrayList<Tipos> arrayListipos = interPersona.listComboTipos(tipoDes); String jsonTipos = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(arrayListipos); out.println(jsonTipos); break; case Constans.LISTAREXPROFESIONAL: int idPers = Integer.parseInt(request.getParameter("IDPERSONA")); ArrayList<ExperienciaLaboral> experienciaLaborals = interPersona.lisExperienciaLaboral(idPers); String jsonExpP = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(experienciaLaborals); out.println(jsonExpP); break; case Constans.ELIMINAREXPROFESIONAL: int idExpP = Integer.parseInt(request.getParameter("IDEXPROFE")); int estDelExpP = interPersona.eliminarExpLaboral(idExpP); out.println(estDelExpP); break; case Constans.LISTARCOMBOCATEGORIA: String tipoCat = request.getParameter("TIPODESCRIPCION"); ArrayList<Categoria> arrayListCat = interPersona.listarComboCategoria(tipoCat); String jsonCat = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(arrayListCat); out.println(jsonCat); break; case Constans.AGREGARCATEGORIA: String institucion = request.getParameter("INSTITUCION"); String categoria = request.getParameter("CATEDRA"); int catDocente = Integer.parseInt(request.getParameter("CATDOCENTE")); String fechaIni = request.getParameter("DINICIO"); String fechaFin = request.getParameter("DFIN"); int idPer = Integer.parseInt(request.getParameter("PERSONA")); CategoriaDocente categoriaDocente = new CategoriaDocente(0, institucion, categoria, categoria, catDocente, fechaIni, fechaFin, "", idPer); int insCat = interPersona.agregarCategoria(categoriaDocente); out.println(insCat); break; case Constans.LISTARCATEGORIADOCENTE: int idPerCD = Integer.parseInt(request.getParameter("IDPERSONA")); ArrayList<CategoriaDocente> categoriaDocentes = interPersona.arrayListCategoriaDocente(idPerCD); String jsonCatDocente = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(categoriaDocentes); out.println(jsonCatDocente); break; case Constans.ELIMINARCATEGORIADOCENTE: int idCatDoc = Integer.parseInt(request.getParameter("IDCATDOC")); int estidCatDoc = interPersona.eliminarCatDocente(idCatDoc); out.println(estidCatDoc); break; case Constans.AGREGAREGIMENDOCENTE: String dedicacion = request.getParameter("DEDICACION"); String tCompleto = request.getParameter("TCOMPLETO"); String tParcial = request.getParameter("TPARCIAL"); String pasantia = request.getParameter("PASANTIA"); String practicante = request.getParameter("PRACTICANTE"); int idPerReg = Integer.parseInt(request.getParameter("IDPERSONA")); RegimenDocente regimenDocente = new RegimenDocente(0, dedicacion, tCompleto, tParcial, pasantia, practicante, 1, idPerReg); int insRD = interPersona.agregarRegimen(regimenDocente); out.println(insRD); break; case Constans.LISTAREGIMENDOCENTE: int idRD = Integer.parseInt(request.getParameter("IDPERSONA")); ArrayList<RegimenDocente> regimenDocentes = interPersona.listaRegimenDocente(idRD); String jsonRegDocente = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(regimenDocentes); out.println(jsonRegDocente); break; case Constans.ELIMINAREGIMENDOCENTE: int idRDE = Integer.parseInt(request.getParameter("IDREGDOC")); int delRD = interPersona.eliminarRegimenDocente(idRDE); out.println(delRD); break; case Constans.AGREGAREXPERIENCIA: String instiEdu = request.getParameter("INSTITUCION"); String catedraEdu = request.getParameter("CATEDRA"); int categoriaId = Integer.parseInt(request.getParameter("CATEGORIA")); int regimenId = Integer.parseInt(request.getParameter("REGIMENPEN")); String fechInicio = request.getParameter("FECHAINICIO"); String fechFin = request.getParameter("FECHAFIN"); String lugarEdu = request.getParameter("LUGAR"); int idPersEdu = Integer.parseInt(request.getParameter("IDPERSONA")); String resolucion = request.getParameter("RESOLUCION"); String funcion = request.getParameter("FUNCION"); int tipoExp = Integer.parseInt(request.getParameter("TIPO")); int idRegimenLaboral = Integer.parseInt(request.getParameter("REGIMENLABORAL")); int totalDiaz = 8; Experiencia experiencia = new Experiencia(0, catedraEdu, fechInicio, fechFin, "", lugarEdu, instiEdu, 1, resolucion, tipoExp, categoriaId, "", regimenId, "", idPersEdu, funcion, idRegimenLaboral, ""); int isExperiencia = interPersona.agregarExperiencia(experiencia); out.println(isExperiencia); break; case Constans.LISTAREXPERIENCIA: int idP = Integer.parseInt(request.getParameter("IDPERSONA")); int idTipoExp = Integer.parseInt(request.getParameter("TIPOEXPE")); ArrayList<Experiencia> experiencias = interPersona.listarExperiencia(idP, idTipoExp); String jsonExpDocUni = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(experiencias); out.println(jsonExpDocUni); break; case Constans.ELIMINAREXPERIENCIA: int idElExp = Integer.parseInt(request.getParameter("IDEXP")); int delIdExp = interPersona.eliminarExperiencia(idElExp); out.println(delIdExp); break; case Constans.AGREGARIDIOMA: String idiomaID = request.getParameter("IDIOMA"); int nivelID = Integer.parseInt(request.getParameter("NIVEL")); int dominioID = Integer.parseInt(request.getParameter("DOMINIO")); String institucionID = request.getParameter("INSTITUCION"); String anno = request.getParameter("ANNO"); int idPersonaID = Integer.parseInt(request.getParameter("IDPERSONA")); Idioma idioma = new Idioma(0, idiomaID, institucionID, anno, nivelID, "", dominioID, "", 1, idPersonaID); int insID = interPersona.agregarIdioma(idioma); out.println(insID); break; case Constans.LISTARIDIOMA: int idPID = Integer.parseInt(request.getParameter("IDPERSONA")); ArrayList<Idioma> idiomas = interPersona.listarIdioma(idPID); String jsonIdioma = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(idiomas); out.println(jsonIdioma); break; case Constans.ELIMINARIDIOMA: int idIdioma = Integer.parseInt(request.getParameter("ID")); int insIDa = interPersona.eliminarIdioma(idIdioma); out.println(insIDa); break; case Constans.AGREGARTECNOLOGIA: Tecnologia tecnologia = new Tecnologia(0, request.getParameter("TECNOLOGIA"), Integer.parseInt(request.getParameter("DOMINIO")), Integer.parseInt(request.getParameter("NIVEL")), 1, Integer.parseInt(request.getParameter("IDPERSONA")), "", ""); int insTec = interPersona.agregarTecnologia(tecnologia); out.println(insTec); break; case Constans.LISTARTECNOLOGIA: ArrayList<Tecnologia> tecnologias = interPersona .listarTecnologia(Integer.parseInt(request.getParameter("IDPERSONA"))); String jsonTec = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(tecnologias); out.println(jsonTec); break; case Constans.ELIMINARTECNOLOGIA: int delTec = interPersona.eliminarTecnologia(Integer.parseInt(request.getParameter("ID"))); out.println(delTec); break; case Constans.AGREGARACTUALIZACION: Actualizacion actualizacion = new Actualizacion(0, request.getParameter("ANNO"), request.getParameter("PONENCIA"), request.getParameter("EVENTO"), request.getParameter("ENTIDAD"), request.getParameter("HORAS"), request.getParameter("LUGAR"), Integer.parseInt(request.getParameter("TIPO")), 1, Integer.parseInt(request.getParameter("IDPERSONA"))); int insActu = interPersona.agregarActualizacion(actualizacion); out.println(insActu); break; case Constans.LISTARACTUALIZACION: ArrayList<Actualizacion> arrayListActualizacion = interPersona.listarActualizacion( Integer.parseInt(request.getParameter("ID")), Integer.parseInt(request.getParameter("TIPO"))); String jsonActualizacion = mapper.writerWithDefaultPrettyPrinter() .writeValueAsString(arrayListActualizacion); out.println(jsonActualizacion); break; case Constans.ELIMINARACTUALIZACION: int delActua = interPersona.eliminarActualizacion(Integer.parseInt(request.getParameter("ID"))); out.println(delActua); break; case Constans.AGREGARPASANTIA: Pasantia pasantia1 = new Pasantia(0, request.getParameter("ANNOINICIO"), request.getParameter("ANNOFIN"), request.getParameter("INSTITUCION"), request.getParameter("LABOR"), request.getParameter("LUGAR"), Integer.parseInt(request.getParameter("IDPERSONA"))); int insPasan = interPersona.agregarPasantia(pasantia1); out.println(insPasan); break; case Constans.LISTARPASANTIA: ArrayList<Pasantia> arrayListPasantia = interPersona .listarPasantia(Integer.parseInt(request.getParameter("ID"))); String jsonPasantia = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(arrayListPasantia); out.println(jsonPasantia); break; case Constans.ELIMINARPASANTIA: int delPasan = interPersona.eliminarPasantia(Integer.parseInt(request.getParameter("ID"))); out.println(delPasan); break; case Constans.LISTARINVESTIGACION: ArrayList<Investigacion> investigacions = interPersona.listarInvestigacion( Integer.parseInt(request.getParameter("ID")), Integer.parseInt(request.getParameter("TIPO"))); String jsonInventigacion = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(investigacions); out.println(jsonInventigacion); break; case Constans.AGREGARINVESTIGACION: Investigacion investigacion = new Investigacion(0, request.getParameter("ANNOPUB"), Integer.parseInt(request.getParameter("TIPOPUB")), request.getParameter("TITUPUB"), request.getParameter("MEDPU"), request.getParameter("EDIPUB"), request.getParameter("ISBN"), Integer.parseInt(request.getParameter("NROPAG")), request.getParameter("LUGPUB"), Integer.parseInt(request.getParameter("TIPOINVES")), request.getParameter("AUTOR"), request.getParameter("ANNO"), request.getParameter("ESPECIALIDAD"), 1, Integer.parseInt(request.getParameter("IDPERSONA")), request.getParameter("RESOLUCION"), ""); int insInvestigacion = interPersona.agregarInvestigacion(investigacion); out.println(insInvestigacion); break; case Constans.ELIMINARINVESTIGACION: int delInves = interPersona.eliminarInvestigacion(Integer.parseInt(request.getParameter("ID"))); out.println(delInves); break; case Constans.AGREGARPROYECCION: Proyeccion proyeccion = new Proyeccion(0, request.getParameter("ORANNO"), request.getParameter("ORACTIVIDAD"), request.getParameter("ORENTIDAD"), request.getParameter("ORINVERSION"), Integer.parseInt(request.getParameter("ORBENEFICIARIOS")), Integer.parseInt(request.getParameter("ORPARTICIPANTES")), request.getParameter("ORLUGAR"), Integer.parseInt(request.getParameter("ORTIPO")), 1, Integer.parseInt(request.getParameter("IDPERSONA")), ""); int insertProyeccion = interPersona.agregarProyeccion(proyeccion); out.println(insertProyeccion); break; case Constans.LISTARPROYECCION: ArrayList<Proyeccion> proyeccions = interPersona .listarProyeccion(Integer.parseInt(request.getParameter("ID")), request.getParameter("TIPO")); String jsonProyeccion = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(proyeccions); out.println(jsonProyeccion); break; case Constans.ELIMINARPROYECCION: int delProyeccion = interPersona.eliminarProyeccion(Integer.parseInt(request.getParameter("ID"))); out.println(delProyeccion); break; case Constans.ELIMINARRECONOCIMIENTO: int delReconocimiento = interPersona .eliminarReconocimiento(Integer.parseInt(request.getParameter("ID"))); out.println(delReconocimiento); break; case Constans.AGREGARRECONOCIMIENTO: Reconocimiento reconocimiento = new Reconocimiento(0, request.getParameter("FECHA"), request.getParameter("INSTITUCION"), request.getParameter("RECONOCIMIENTO"), request.getParameter("LUGAR"), Integer.parseInt(request.getParameter("TIPO")), request.getParameter("ACTIVIDAD"), 1, Integer.parseInt(request.getParameter("IDPERSONA")), request.getParameter("ANNO")); int insertReconocimiento = interPersona.agregarReconocimiento(reconocimiento); out.println(insertReconocimiento); break; case Constans.LISTARRECONOCIMIENTO: ArrayList<Reconocimiento> reconocimientos = interPersona.listarReconocimiento( Integer.parseInt(request.getParameter("IDPERSONA")), Integer.parseInt(request.getParameter("TIPO"))); String jsonReconocimiento = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(reconocimientos); out.println(jsonReconocimiento); break; case Constans.SUBIRDOCUMENTO: String urlSave = "C:\\Users\\Kelvin\\Documents\\NetBeansProjects\\Legajo\\web\\documents"; DiskFileItemFactory factory = new DiskFileItemFactory(); //factory.setSizeThreshold(2014); factory.setRepository(new File(urlSave)); ServletFileUpload upload = new ServletFileUpload(factory); try { List<FileItem> paList = upload.parseRequest(request); for (FileItem item : paList) { File file = new File(urlSave, "kelvin" + item.getName()); item.write(file); } out.println("Listo"); } catch (Exception e) { out.println("Execption: " + e.getMessage()); } break; case Constans.LISTARDOCUMENTO: ArrayList<Documento> documentos = interPersona .listarDocumento(Integer.parseInt(request.getParameter("IDPERSONA"))); String jsonDocumento = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(documentos); out.println(jsonDocumento); break; } } /** * Returns a short description of the servlet. * * @return a String containing servlet description */ @Override public String getServletInfo() { return "Short description"; }// </editor-fold> }