Ir al contenido principal

Google Cloud Endpoints - Parte 4

En esta cuarta entraga trataremos acerca de la capa Dao, donde se creará la clase DaoPais, el PersistenceManagerFactory(PMF) y un automatizador de consultas Querys.

Empecemos por la creación del PersistenceManagerFactory, el cual usa un archivo de configuración llamado "jdoconfig.xml" el cual se encuentra almacenado en la carpeta "META-INF", este archivo contiene las configuraciones que permiten acceder al Google DataStore. En el siguiente archivo usted puede ver el archivo "jdoconfig.xml"

 

El archivo "jdoconfig.xml" se crea automáticamente al crear un proyecto GAE, además existe otro archivo adicional en el META-INF para persistencia con JPA, el cual pueden eliminar, ya que en este ejemplo no usamos JPA. 
Ahora es importante recordar el atributo "name" de la etiqueta "persistence-manager-factory", ya que lo usaremos al momento de la creación de la clase PMF.

<persistence-manager-factory name="transactions-optional">

Ahora es momento de crear la clase PMF que usara el archivo de configuración "jdoconfig.xml" para poder establecer conectividad con Google cloud DataStore

 

La clase PMF es una clase Singleton, el cual asegura la creación de un solo objeto para la conectividad al Google Cloud DataStore, claro esto es porque el PMF permite crear varios PersistenceManager para poder realizar peticiones y respuestas de los almacenes de datos.

En estas líneas dejo el código fuente para la creación del PMF:

package com.indiant.dao;

import javax.jdo.JDOHelper;
import javax.jdo.PersistenceManagerFactory;

public class PMF {
   
    private static final PersistenceManagerFactory PMF=
            JDOHelper.getPersistenceManagerFactory("transactions-optional");
   
    private PMF(){
       
    }
   
    public static PersistenceManagerFactory getPMF(){
        return PMF;
    }
}

Una vez creado nuestro PMF, es momento de crear nuestro automatizador de consultas para poder realizar operaciones "INSERT, UPDATE, DELETE y SELECT" en los almacenes de datos.

 

Dejo la lineas para que puedan crear la clase Querys y si realizan más automatizaciones no duden en compartirlo.

package com.indiant.dao;

import java.util.ArrayList;
import java.util.List;

import javax.jdo.PersistenceManager;
import javax.jdo.Query;

import com.indiant.shared.BeanParametro;

public class Querys {
    private PersistenceManager pm;
   
    public Querys(){
      
    }
   
    public Querys(PersistenceManager pm){
        this.pm=pm;
    }
   
    public boolean mantenimiento(BeanParametro parametro) throws Exception{
        try{
            if(parametro.getTipoOperacion().equalsIgnoreCase("I") ||
                    parametro.getTipoOperacion().equalsIgnoreCase("A")){
                pm.makePersistent(parametro.getBean());
                return true;
            }else if(parametro.getTipoOperacion().equalsIgnoreCase("E")){
                Object bean=pm.getObjectById(parametro.getBean().getClass(),parametro.getId());
                pm.deletePersistent(bean);
                return true;
            }else{
                throw new Exception("No se ha definido operacion");
            }
        }catch(Exception ex){
            throw ex;
        }
    }
   
    public List<?> getListBean(Class<?> nomClass)throws Exception{
        Query query=pm.newQuery(nomClass);
        try{      
        List lista=new ArrayList();
        lista.addAll((List)query.execute());
        return lista;
        }catch(Exception ex){
            throw ex;
        }finally{
            query.closeAll();
        }
      
    }
}
Bueno llego el momento de crear la clase DaoPais, el cual permitirá realizar operaciones sobre la entity Pais almacenada en el Google Cloud DataStore, es importante que sepan que en el Google Cloud DataStore no se crearán la entidades si usteded  no las  guarda en esta entidad.

 

Dejo la lineas que permiten crear Dao Pais:

package com.indiant.dao;

import java.util.List;

import javax.jdo.PersistenceManager;

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

public class DaoPais {
    private PersistenceManager pm;
   
    public DaoPais(PersistenceManager pm){
        this.pm=pm;
    }
   
    public boolean mantenimiento(BeanParametro parametro) throws Exception{
        Querys query=new Querys(pm);
        return query.mantenimiento(parametro);
    }
   
    public List<Pais> getListBean() throws Exception{
        Querys query=new Querys(pm);
        return (List<Pais>)query.getListBean(Pais.class);
    }
}
Bueno con esto hemos culminado, en la quinta entrada seguiremos con la capa de Logic y Process.

Escrito por:
Ronald Tejada

Entradas más populares de este blog

Conexion JDBC - JAVA a travès de un archivo Properties

Para conectar a bases de datos con el archivo properties necesitas definir la siguiente estructura:

Rutas de los Archivos Properties, es esas rutas tienes que haber creado tus archivos properties:

package com.develtrex.util;
import java.net.URL;
/**
 *
 * @author 007M
 */
public class Ruta {
    private final String dbOracle="/com/develtrex/propiedad/dboracle.properties";
    private final String dbMysql="/com/develtrex/propiedad/dbmysql.properties";
    private final String dbPostgres="/com/develtrex/propiedad/dbpostgres.properties";
    private final String dbSqlServer="/com/develtrex/propiedad/dbsqlserver.properties";

    public URL getFileDbOracle(){
        return getClass().getResource(dbOracle);
    }

    public URL getFileDbMysql(){
        return getClass().getResource(dbMysql);
    }

    public URL getFileDbPostgres(){
        return getClass().getResource(dbPostgres);
    }

    public URL getFileDbSqlServer(){
        return getClass…

Registrar driver oracle en iReport 3.7.1

Esta entrada la estoy escribiendo porque en algún momento necesite conectar ireport con mi base de oracle, para asi poder crear reportes, además aquí tambien se registran los archivos Jar para ordenar las columnas de un crosstab, pero esto lo explicare en otra entrada.
Bueno comenzemos, primero que nada abra su ireport la versión que tuviese. Luego de esto solo seguir todos los pantallazos que colocaré.
fig 1: Drivers para conexión a bases de datos.
En la fig1 se muestran todos lo drivers con los cuales se establece la conexión a base de datos a través de ireport, como se puede observar hay drivers de color rojo y negro, los negros están activos y los rojos son los drivers que aún no han sido registrados, en esta ocasión vamos a registrar el driver para conectarnos a una base de datos oracle.
Registrando el driver de oracle:
fig 2: Pestaña herramientas, subitem opciones
Una vez que hacemos click en el item Opciones nos saldra una ventana como la imagen de la fig 3.
fig 3: Ventana …

MÉTODO DE AUTENTICACIÓN POR CLAVE PÚBLICA ALMACENADA EN MEMORIA RAM

DATOS DEL INVESTIGADORInvestigadorNombres y apellidos:Jonathan Franchesco Torres BacaEdad:27Teléfono:958429349E-mail: Chescot2302@gmail.comNúmero de DNI [1]45329234Dirección:Av Gran Chimu 1264 – La Victoria , ChiclayoDepartamento:Lambayeque