All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.josecarlosbran.JBSqlUtils.Interfaces.IsResource Maven / Gradle / Ivy

Go to download

JBSqlUtils es un ORM desarrollado en java por José Carlos Alfredo Bran Aguirre, que permite gestionar BD's SQLite, MySQL, MariaDB, PostgreSQL y SQLServer, de una manera fácil y rápida sin interrumpir la ejecución del hilo principal del programa, lo cual la hace un potente ORM, por medio del cual tendrá acceso a un CRUD, configurando únicamente la conexión del modelo, los atributos que posee la tabla en BD's cómo variables que pertenecerán al modelo en su aplicación. JBSqlUtils también proporciona un potente generador de instrucciones SQL que le permitirá crear o eliminar una tabla, insertar, seleccionar, actualizar o eliminar registros de una tabla en su BD's sin necesidad de instanciar un modelo cómo tal, únicamente tendrá que configurar previamente la conexión a su BD's. Lo cual la hace un potente ORM para aplicaciones android y sistemas empresariales que tengan la necesidad de poder conectarse a alguna de estas 4 tipos de BD's, cabe mencionar que para ello utiliza el SQLite JDBC de org.xerial, org.postgresql, mysql y com.microsoft.sqlserver. Para mayor información, consultar el enlace del proyecto

The newest version!
package io.github.josecarlosbran.JBSqlUtils.Interfaces;

import com.josebran.LogsJB.LogsJB;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.apache.commons.lang3.reflect.FieldUtils;

import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;

public interface IsResource {
    /**
     * método que permite validar si los campos envíados como parametros, estan llenos
     *
     * @param Campos Se definen los campos que se desea validar que tengan contenido
     * @return True si todos los campos que se envían como parametro, tienen información
     * False, si alguno de los campos indicados como parametro, vienen vacíos.
     */
    default Boolean isFull(String... Campos) {
        int campos_con_informacion = 0;
        try {
            List campos = new ArrayList<>(Arrays.asList(Campos));
            for (String campo : campos) {
                List variables = new ArrayList<>(Arrays.asList(this.getClass().getDeclaredFields()));
                for (Field field : variables) {
                    String controllerName = field.getName();
                    LogsJB.trace("Validara si el contenido es Null: " + controllerName);
                    Object contenido = FieldUtils.readField(field, this, true);
                    LogsJB.debug("Nombre del campo del objeto: " + controllerName + " a validar el contenido del campo: " + contenido);
                    //Si el contenido es null, continua, no tiene caso hacer el resto
                    if (Objects.isNull(contenido) && controllerName.equalsIgnoreCase(campo)) {
                        LogsJB.debug("El campo " + controllerName + " no tiene contenido");
                        return false;
                    } else {
                        campos_con_informacion++;
                    }
                }
            }
        } catch (Exception e) {
            LogsJB.fatal("Excepción disparada al verificar que los valores esten llenos, " + "Trace de la Excepción : " + ExceptionUtils.getStackTrace(e));
        }
        LogsJB.debug("Cantidad de campos que si tienen información: " + campos_con_informacion);
        return true;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy