Ir al contenido principal

Google Cloud Endpoints - Parte 5

En esta quinta entrega enseñaremos a crear la clase LogicPais y la clase GestionMantenimiento que posteriormente será utilizada para crear nuestro web service tipo REST.

Empezamos por la creación de LogicPais:



Aquí el código de LogicPais:

package com.indiant.logic;

import java.util.List;

import javax.jdo.PersistenceManager;

import com.indiant.beans.Pais;
import com.indiant.dao.DaoPais;
import com.indiant.shared.BeanParametro;

public class LogicPais {
private PersistenceManager pm;
   
    public LogicPais(PersistenceManager pm){
        this.pm=pm;
    }
   
    public boolean mantenimiento(BeanParametro parametro) throws Exception{
        DaoPais dao=new DaoPais(pm);
        return dao.mantenimiento(parametro);
    }
   
    public List<Pais> getListBean()throws Exception{
        DaoPais dao=new DaoPais(pm);
        return dao.getListBean();
    }
}

Luego de crear LogicPais crearemos la clase GestionMantenimiento, como se puede apreciar en la siguiente imagen.



En la clase de GestionMantenimiento abrimos la conexión, procesamos las operaciones DML haciendo uso de los logic para luego cerrar la conexión, es decir que esta capa está orientada al proceso que sea desea realizar. Las capas de bean, dao, logic son llamadas capas de entidad, ya que sus operaciones se orientan a las entidades, en cambio la capa de procesos se implementa la logica de los procesos de negocio.

Aqui dejamos la lineas para la creación de GestionMantenimiento:

package com.indiant.process;

import java.util.List;

import javax.jdo.PersistenceManager;
import javax.jdo.Transaction;

import com.google.appengine.api.datastore.Key;
import com.google.appengine.api.datastore.KeyFactory;
import com.indiant.beans.Pais;
import com.indiant.dao.PMF;
import com.indiant.logic.LogicPais;
import com.indiant.shared.BeanParametro;

public class GestionMantenimiento {
   
    public static boolean insertarPais(Pais bean) throws Exception{      
        PersistenceManager pm=null;
        Transaction tx=null;
        try{
            pm=PMF.getPMF().getPersistenceManager();
            tx=pm.currentTransaction();
            tx.begin();
            LogicPais logic=new LogicPais(pm);
            BeanParametro beanParametro=new BeanParametro();
            Key keyPais=KeyFactory.createKey(Pais.class.getSimpleName(), bean.getIdPais());
            String idPais=KeyFactory.keyToString(keyPais);
            bean.setIdPais(idPais);
            beanParametro.setBean(bean);
            beanParametro.setTipoOperacion("I");
            logic.mantenimiento(beanParametro);
            tx.commit();
            pm.close();
            return true;  
        }catch(Exception ex){
            throw ex;
        }finally{
            if(!pm.isClosed()){
                if(tx.isActive()){
                    tx.rollback();
                }
                pm.close();
            }
        }
    }
   
    public static List<Pais> getListPais() throws Exception{
        PersistenceManager pm=null;
        try{
            pm=PMF.getPMF().getPersistenceManager();
            LogicPais logic=new LogicPais(pm);
            return logic.getListBean();
        }catch(Exception ex){
            throw ex;
        }finally{
            if(!pm.isClosed()){
                pm.close();
            }
        }
    }
}

Bueno hemos llegado al final del artículo, en la siguiente entrada crearemos nuestro webservice tipo rest haciendo uso de Google CloudEndpoints.

Escrito por:
Ronald Tejada

Comentarios

Entradas más populares de este blog

install mysql 5.6 database on ubuntu 20.04

Command List: wget http://launchpadlibrarian.net/418347043/multiarch-support_2.29-0ubuntu2_amd64.deb sudo dpkg -i multiarch-support_2.29-0ubuntu2_amd64.deb sudo dpkg -i mysql-common_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i libmysqlclient18_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i libmysqlclient-dev_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i libmysqld-dev_5.6.40-1ubuntu14.04_amd64.deb sudo apt install  libtinfo5 sudo apt install libncurses5 sudo apt install -f sudo dpkg -i mysql-community-client_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i mysql-client_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i mysql-community-server_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i mysql-community-bench_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i mysql-community-source_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i mysql-server_5.6.40-1ubuntu14.04_amd64.deb sudo apt install python2 sudo apt install -f sudo dpkg -i mysql-community-test_5.6.40-1ubuntu14.04_amd64.deb sudo dpkg -i mysql-testsuite_5.6.40-1ubuntu1...

create kvm Ubuntu 20.04 with virsh by jofrantoba

wget -bqc https://mirror.freethought-internet.co.uk/ubuntu-releases/20.04/ubuntu-20.04-live-server-amd64.iso qemu-img create -f qcow2 /opt/images/oracle19c-vm.qcow2 200G sudo virt-install --name vm_ubuntu20_freenx --ram 2048 --vcpu 2 --disk path=/opt/images/ubuntu20_freenx-vm.qcow2 --os-type linux --os-variant ubuntu20.04 --network bridge=br2 --graphics vnc,listen=0.0.0.0 --console pty,target_type=serial --cdrom '/opt/iso/ubuntu-20.04-live-server-amd64.iso' Written by @jofrantoba

Configurar SQL Server 2005 para poner a la escucha el puero 1433

Como ustedes ya saben para poder conectarse a una base de datos sql a través de JDBC es necesario que el puerto 1433 se encuentre a la escucha de conexiones, muchos de nosotros hemos tenido este problema, bueno la solución es configurar a  través de la aplicacion "SQL SERVER CONFIGURATION MANAGER", ver figura numero1. fig 01 Luego hacer doble click en el item "Protocols for SQLEXPRESS", ver figura 02 fig 02 Como podemos observar en la figura 02 en la area de contenidos existe un item llamado "TCP/IP" este tiene que estar habilitado o en ingles "enabled" bueno ahora en este item hacemos un doble click para que nos aparezca una ventana como la siguiente, en la cual nos vamos a ubicar en la pestaña "IP ADRESSES", en esta pestaña se tiene que configurar los puertos. fig 03  En la figura 04 se observara que todos los item de TCP Dynamic Ports tienen al cero "0" por valor y TCP port esta ...