lunes, 23 de octubre de 2017

ResultSet



UPA

ESCUELA PROFESIONAL DE:

INGENIERÍA DE SISTEMAS Y TELEMÁTICA

TEMA:         RESULTSET

DOCENTE: MARCO AURELIO PORRO CHULLI.

ASIGNATURA: LABORATORIO DE PROGRAMACION II-JAVA

INTEGRANTES:
·         Jose Norbil Gonzales Rafael
·         Percy Zelada Rojas

CICLO: V

GRUPO: “c”

AÑO: 2017



1. Contenido
 Definición


Un ResultSet contiene todas las filas que satisfacen las condiciones de una sentencia SQL y proporciona el acceso a los datos de estas filas mediante un conjunto de métodos get que permiten el acceso a las diferentes columnas de la fila. El método ResultSet.next se usa para moverse a la siguiente fila del result set, convirtiendo a ésta en la fila actual.

El formato general de un result set es una tabla con cabeceras de columna y los valores correspondientes devueltos por la ‘Query’.
El objeto Statement (sentencia) sirve para procesar una sentencia SQL estática y obtener los resultados producidos por ella. Solo puede haber un ResultSet abierto para cada objeto Statement en un momento dado. Todos los métodos statement que procesan una sentencia SQL cierran implícitamente el ResultSet actual de una sentencia si existe uno abierto.

El objeto ResultSet proporciona varios métodos para obtener los datos de columna correspondientes a un fila. Todos ellos tienen el formato get<Tipo>, siendo <Tipo> un tipo de datos Java. Algunos ejemplos de estos métodos son getInt, getLong, getString, getTimestamp y getBlob. Casi todos estos métodos toman un solo parámetro, que es el índice que la columna tiene dentro del ResultSet o bien el nombre de la columna.

Las columnas de ResultSet están numeradas, empezando por el 1. Si se emplea el nombre de la columna y hay más de una columna que tenga ese mismo nombre en el ResultSet, se devuelve la primera. Algunos de los métodos get<Tipo> tienen parámetros adicionales, como el objeto opcional Calendar, que se puede pasar a los métodos getTime, getDate y getTimestamp. Consulte el Javadoc del paquete java.sql para obtener todos los detalles.

En los métodos get que devuelven objetos, el valor de retorno es null cuando la columna del ResultSet es nula. En tipos primitivos, no puede devolverse null. En estos casos, el valor es 0 o false. Si una aplicación debe distinguir entre null, y 0 o false, puede utilizarse el método wasNull inmediatamente después de la llamada. A continuación, este método puede determinar si el valor era un valor 0 o false real o si ese valor se ha devuelto debido a que el valor de ResultSet era de hecho null.


 Propiedades


Método
Descripción
previous()


next()


first()


last()

Envía el puntero a la fila anterior del objeto ResultSet. (Devuelve true si encuentra la fila anterior).

Envía el puntero a la fila siguiente del objeto ResultSet. (Devuelve true si encuentra la fila siguiente).

Envía el puntero a la primera fila del objeto ResultSet. (Devuelve true si se encuentra primera fila).

Envía el puntero a la última fila del objeto ResultSet. (Devuelve
true si se encuentra última fila).

isFirst()
Devuelve verdadero, si el puntero se encuentra en la primera fila.
getString()

getInt()

getDate()

getBoolean()

getDouble()

getLong()

Captura un dato de tipo String del esquema de datos.

Captura un dato de tipo int del esquema de datos.

Captura un dato de tipo Date del esquema de datos.

Captura un dato de tipo boolean del esquema de datos.

Captura un dato de tipo double del esquema de datos.

Captura un dato de tipo long del esquema de datos.



















 Ejemplos

      Aquí podemos visualizar un ejemplo:
ResultSetExample.java
Este programa muestra la utilización de ResultSetMetaData y ResultSet para visualizar todos los datos de una tabla aunque el programa que obtiene los datos no sabe cuál es el aspecto que tendrá la tabla (el usuario pasa los valores correspondientes a la tabla y a la biblioteca).
**/
public class ResultSetExample {

    public static void main(java.lang.String[] args)
    {
        if (args.length != 2) {
System.out.println("Uso:  java ResultSetExample <biblioteca> <tabla>");
System.out.println(" siendo <biblioteca> la biblioteca que contiene la    <tabla>");
            System.exit(0);
        }

        Connection con = null;
        Statement s = null;
        ResultSet rs = null;
        ResultSetMetaData rsmd = null;

        try {
            // Obtener una conexión a base de datos y preparar una sentencia.
            Class.forName("com.ibm.db2.jdbc.app.DB2Driver");
            con = DriverManager.getConnection("jdbc:db2:*local");

            s = con.createStatement();

            rs = s.executeQuery("SELECT * FROM " + args[0] + "." + args[1]);
            rsmd = rs.getMetaData();

            int colCount = rsmd.getColumnCount();
            int rowCount = 0;
            while (rs.next()) {
                rowCount++;
                System.out.println("Datos para la fila " + rowCount);
                for (int i = 1; i <= colCount; i++)
                    System.out.println("   Fila " + i + ": " + rs.getString(i));
            }

        } catch (Exception e) {
            // Manejar los errores.
            System.out.println("Tenemos un error... ");
            e.printStackTrace();
        } finally {
            // Asegurarse de limpiar siempre.  Si la conexión se cierra, la
            // sentencia que hay debajo de ella también se cerrará.
            if (con != null) {
                try {
                    con.close();
                } catch (SQLException e) {
                    System.out.println("Error grave: no se puede cerrar el objeto conexión");
                }
            }
        }
    }
}


2. Resumen

El ResultSet es una estructura similar a la tabla de datos con la diferencia que nos es física, sino de tipo virtual, se creará en la memoria del Servidor y desde allí se tomarán los datos para mostrarlos posteriormente en el cliente.

Puede utilizar un objeto ResultSet para ejecutar una consulta y examinar los resultados de la consulta.Cuando crea consultas por medio del objeto QueryDef, debe crear un objeto ResultSet correspondiente para ejecutar la consulta y obtener los resultados. Cada objeto ResultSet se personaliza para la consulta que se ejecuta. El objeto ResultSet contiene estructuras de datos que organizan los datos de la consulta en filas y columnas, donde cada fila representa un único registro de datos y cada columna representa un campo del registro de datos. Después de ejecutar la consulta, puede navegar (moverse) fila a fila y columna a columna, para obtener los datos que desea.

3. Summary


The ResultSet is a structure similar to the data table with the difference that it is physical, but virtual type, it will be created in the memory of the Server and from there will be taken the data to be displayed later on the client.

You can use a ResultSet object to run a query and examine the results of the query. When you create queries through the QueryDef object, you must create a corresponding ResultSet object to run the query and get the results. Each ResultSet object is customized for the query that is run. The ResultSet object contains data structures that organize the query data into rows and columns, where each row represents a single data record and each column represents a field of the data record. After running the query, you can navigate (move) row by row and column by column, to get the data you want. 

4. Recomendaciones


  Para que el ResulSet, no se congestione o entienda mas rápido, en las consultas deberíamos utilizar los campos específicos en vez del *.

v  Se recomienda usar esta clase para poder obtener los datos de una tabla mediante métodos ofrecidos por el resultset que luego los obtendrás en un formulario.

v  Se recomienda declarar un objeto de la clase resultset para poder obtener las consultas que le hayamos dicho que nos muestre.

v  Si abrimos el objeto ResultSet tenemos que cerrar inmediatamente el ResultSet, liberando  los recursos utilizados: public abstract void close() throws SQLException.

5. Conclusiones

La variable Resultset fue declarada fuera de todos los métodos, es decir son globales y pueden verse en toda la clase no importa en qué proceso lo utilizemos, es sencillo recordemos algo de teoria, toda funcion retorna un valor en que se utiliza respectivamente para procesar Resultados.

6. Apreciación del Equipo


Nuestra apreciación con respecto al trabajo realizado del ResultSet lo definimos como un objeto que es usado para obtener Resultados generados al ejecutar consultas que resulta muy indispensable, ya que este objeto es como un deposito en donde nosotros le enviamos las consultas desde un formulario para que después en la BD se ejecute, pero los datos obtenidos están depositados en el objeto ResultSet para después llamarla a una tabla, lista, combobox, etc.

7. Glosario de Términos


¬  GET: Transcript of METODO GET Y SET EN JAVA. La encapsulación compartimenta liza los componentes de un objeto, ocultando la implementación (trabajo interno) del objeto que no hace falta ser visible externamente, y la protege los datos internos de modificaciones sin permiso.

¬  ResultSet.net(): Método que mueve el cursor una fila dentro del ResultSet. Inicialmente el cursor se sitúa antes de la primera fila. Cuando el cursor se posiciona después de la última fila el método devuelve false.

¬  ResultSet.getMetaData(): Método que obtiene el número, tipo y propiedades de las columnas de un ResultSet.

¬  DataBaseMetaData: Para ver qué catálogos, esquemas, tablas, tipos de tablas, columnas de las tablas y demás de una base de datos, tenemos la clase DataBaseMetaData. Una vez establecida la conexión, podemos obtener la instancia correspondiente de dicha clase con el método getDataBaseMetaData ().

¬  Interfaz: Una interfaz en Java es una colección de métodos abstractos y propiedades. En las interfaces se especifica qué se debe hacer pero no su implementación. Serán las clases que implementen estas interfaces las que describan la lógica del comportamiento de los métodos.

¬  Javadoc: Es una utilidad de Oracle para la generación de documentación de APIs en formato HTML a partir de código fuente Java. Javadoc es el estándar de la industria para documentar clases de Java. La mayoría de los IDEs los generan automáticamente.

¬  Query: SQL (por sus siglas en inglés Structured Query Language; en español lenguaje de consulta estructurada) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas.

¬  Iterando: Significa el acto de repetir un proceso con la intención de alcanzar una meta deseada, objetivo o resultado.

¬  Null: En programación, null resulta ser un valor especial aplicado a un puntero (o referencia) usado para indicar que no se apunta a un objeto o dato válidos.

¬  Controladores: Emplean servicios o aplicaciones cliente para conectarse y consulta de datos.

¬  JDBC: Es una interfaz de programación de aplicaciones (API) para el lenguaje de programación Java, que define como un cliente puede acceder a una base de datos.

8. Bibliografía o Linkografia




PARA MAS AYUDA AQUÍ LES DEJO EL LINK DE LAS DIAPOSITIVAS PUBLICADA EN SLIDESHARE:

https://es.slideshare.net/secret/aDxAf4JYh5IT3z


miércoles, 11 de octubre de 2017

CONNECTION JAVA

Laboratorio de Programación II – JAVA
INTEGRANTES:

ü  PERCY ZELADA ROJAS.
ü  JOSE NORBIL GONZALES RAFAEL.


  DOCENTE:

ü  Ing. Marco Aurelio Porro chulli. 

  ASIGNATURA:
ü  Desarrollo de software I.
        
  CARRERA PROFESIONAL:

ü  Ingeniería de Sistemas y Telemática.

  CICLO:
   ü  V – C
           

       BAGUA GRANDE - UTCUBAMBA - AMAZONAS



2017


I. Tema: Connection
1. Contenido

1.1 Definición
Este tipo de programación nos permite crear sistemas complejos bien estructurados. En la programación orientada a objetos, los objetos son componentes del propio sistema.Los objetos son instancias de clases, que a su vez pueden estar relacionadas con otras clases, por ejemplo vía herencia.Un objeto tiene identidad, estado y un comportamiento determinado.La programación orientada a objetos te permite crear frameworks reutilizables y sistemas que evolucionen en el tiempo.Además una aplicación desarrollada en un lenguaje orientado a objetos suele ser mucho más pequeña que las que no usan este paradigma/modelo de programación.

A través de la conexión nos comunicamos con la Base de Datos, enviándole sentencias SQL. Las sentencias SQL se envían a través de “Statements”.Una vez terminada una Conexión, se debe “Liberar”, que es cerrarla, de modo análogo a como se trabaja con flujos (Streams). Las conexiones se cierran con el método:public void close() trows java.sql.SQLException;




1.2Propiedades
jdbcCompliantTruncation, para forzar truncado de campos en inserción.
cachePrepStmts, cachear .
enableQueryTimeouts, activar timeouts en la ejecución de las queries.
roundRobinLoadBalance, para balancear con nodos esclavos.
autoReconnect, para haver failover sobre un nodo esclavo.


1.3 Ejemplo
package Base;
import java.sql.*;
public class ConectaBD {
  public Connection cnn;
  public Statement stm;
  public ResultSet rs;

  String servidor="EQUIPO";
  String puerto="1433";
  String base="BDDistribuidora";
  String usuario="sa";
  String clave="12345678";


  public void Conectar()
  {
      try{
      Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
      String cadena="jdbc:sqlserver://"+servidor+":"+puerto+";"+"database="+base+";user="+usuario+";password="+clave+";";
      cnn=DriverManager.getConnection(cadena);
      stm=cnn.createStatement();
    }catch (Exception e){
      System.out.println(e.getMessage()); 
    }
  }
}

2. Resumen


Uno de los objetivos fundamentales de un sistema de información es contar no sólo con recursos de información, sino también con los mecanismos necesarios para poder encontrar y recuperar estos recursos. De esta forma, las bases de datos se han convertido en un elemento indispensable no sólo para el funcionamiento de los  grandes otores de búsqueda y la recuperación de información a lo largo y ancho  de la WEB, sino también para la creación de sedes web, Intranets y otros sistemas de  información en los que se precisa manejar grandes o pequeños volúmenes de  información. La creación de una base de datos a la que puedan acudir los usuarios  para hacer consultas y acceder a información que les interese es, pues, una  herramienta imprescindible de cualquier sistema informativo sea en red o fuera de   ella. Es por eso que mediante programas para desarrollar software como Netbeans ,visual studio , entre otros podemos administrar una base de datos , asiendo las respectivas conexiones.
3. Summary


One of the fundamental objectives of an information system is to have not only information resources, but also with the necessary mechanisms to find and recover these resources. Thus, the databases have become an essential element not only for the functioning of the major search engines and retrieval of information across the Web, but also for creating web sites, Intranets and other information systems is needed in handling large or small volumes of information. The creation of a database which can turn users to query and access the information that interests them is therefore an essential tool of any information system is networked or beyond. That's why using software programs to develop as Netbeans, visual studio, among others can manage a database, holding the respective connections.

4. Recomendaciones

 Hacer una conexión con java y sql server resulta muchas veces más fácil ya que cuenta con las car5acteristicas oportunas para acceder a la base de datos.

  Manejar grandes cantidades de información es necesario contar con una aplicación o software donde podamos interactuar, entre el sistema y el usuario.

5. Conclusiones

Contar con mucha información en una base de datos es recomendable trabajarlo con una aplicación o software que nos permita desarrollar, organizar, analizar y buscar información para la mejor toma de decisiones 

6. Apreciación del Equipo

Trabajar con las herramientas de desarrollo de software como Netbeans u otra herramienta de su preferencia o la que le parece manejar más fácil, esto conlleva a que su empresa o negocio en donde está prestando servicios sea muy optimo ya que el software hará mucho más fácil la manipulación de su información y registro de toda su empresa por lo tanto generara mayores ganancias.

7. Glosario de Términos


Frameworks: Un Framework es un entorno o ambiente de trabajo para desarrollo; dependiendo del lenguaje normalmente integra componentes que facilitan el desarrollo de aplicaciones como el soporte de programa, bibliotecas, plantillas y más.

Paradigma: Un paradigma es el resultado de los usos, y costumbres, de creencias establecidas de verdades a medias; un paradigma es ley, hasta que es desbancado por otro nuevo.

Instrucciones: Instrucción es un término con origen en el latín instructĭo que hace referencia a la acción de instruir (enseñar, adoctrinar, comunicar conocimientos, dar a conocer el estado de algo). La instrucción es el caudal de conocimientos adquiridos y el curso que sigue un proceso que se está instruyendo.

Trunc: devuelve número con su parte decimal truncada a partir del número de decimales especificado por decimales.

nodo : En programación, concretamente en estructuras de datos, un nodo es uno de los elementos de una lista enlazada, de un árbol o de un grafo.

Timeouts: Mensaje de error cuando el tiempo de espera se agotó (por ejemplo, para conectarse a un servidor).



8. Bibliografía o Linkografia

Aquí les dejo el link de las diapositivas connection java publicado en sildeshare:
 https://es.slideshare.net/PercyZeladaRojas/connection-java-80721833
OTRAS LINKOGRAFIAS DE APOYO


Android Estudio

"Año  del Diálogo y la Reconciliación Nacional" Integrantes Percy Zelada Rojas J oe Norbil Gonzales Rafael C...