domingo, 28 de junio de 2015

Sistema Bibliotecario Usando Java e Hibernate en Netbeans

  Este Sistema Bibliotecario se encuentra hecha en el IDE Netbeans en lenguaje Java y ocupa el Framework HIBERNATE.
La Base de Datos contiene dos tablas que se relacionan 1-N, una "Editorial" posee uno o varios "Libros" de distinto tipos.
Gracias a la herramienta de Ingeniería Inversa y el uso de POJOs de HIBERNATE vamos a tomar esta dos tablas y convertir en clases .java y sus archivos Mapping correspondiente.
Este es el Modelo Relacional de nuestra Base de Datos:




El Sistema Bibliotecario es una aplicación simple en la que se puede Guardar, Modificar, Eliminar “Libros” como también “Editoriales” la interfaz de Usuario se presenta a continuación:

Posee dos pestañas a través de objeto Tabbed Pane que nos ofrece el paquete Swing de java, que en la cual muesta en la primera una tabla con todos los “Llbros” cargados y en la otra pestaña la posibilidad de realizar distintos eventos para las “Editoriales”.

Interfaz donde se encuentra la pestaña en la tabla de libros
Pestaña de Editoriales donde se muestra sus registros y posibilidades de eventos

El video Explicativo lo pueden ver desde aquí esta dividido en tres partes la primer parte se le presenta a continuación:




El link del proyecto para probar en su PC aquí les dejo:




Espero que le haya gustado si tienen duda comenten!!!.
Si necesitan un SISTEMA de GESTION puedo presupuestarlo de manera GRATUITA, o si tienen dudas sobre uno que estan desarrollando no duden en consultar estamos a sus disposición...

viernes, 26 de junio de 2015

Crear y guardar un archivo bloc de notas en PHP

Para la registración de datos en el servidor disponemos de dos herramientas que se complementan en muchos casos los archivos de texto y bases de datos . En este apartado veremos como crear un archivo de texto y añadir datos al mismo.


Primero de todo explicaré un poco como podemos hacer esto en PHP para poder entender luego el demo que le deje al final. Este demo es un modelo de un creador de archivo .txt y en el se guarda la información que ingresamos en el formulario que desarramos. Básicamente es muy simple la sintaxis que nos presenta PHP para poder Leer, Crear y Crear o Reescribir un bloc de notas o archivo de texto. A continuación le presento las tres posibilidades que les mencione anteriormente.

CargarBloc.php crea un archivo .txt y guarda información enviada por formulario index.html


$archivo=fopen($_POST['nombre_de_archivo'].'.txt',"a") or
  die("No se pudo crear el archivo");
  fputs($archivo,$_POST['contenido']);
  fputs($$archivo,"\n");
  fputs($$archivo,"---------------------------");
  fputs($$archivo,"\n");
  fclose($$archivo);
  echo "Los datos se cargaron y guardaron correctamente.";

Como se dieron cuenta con la función fopen indican con el primer parámetro que archivo.txt deben leer o crear en este caso toma de una varible $_POST['nombre_de_archivo'] enviada por un formulario el nombre de este archivo y el segundo parámetro con la "a" le dicen que debe crear este archivo con el nombre que le dieron. Con la función fputs indican con el primer parámetro el objeto que a devuelto la función fopen en este caso llamado $archivo y el segundo parámetro con la $_POST['contenido'] la información a cargar en este archivo.

El formulario que enviara la dos varibles necesaria index.html

<!DOCTYPE html>
<html lang="ES">
<head>
<meta  charset="UTF-8"/>
<meta name="description" content="PHP"/>
<meta name="author" content="compartiendocodigos"/>
<title>Crear y guardar bloc de notas</title>
</head>
<body>
<form action="CargarBloc.php" method="POST">
<label>Nombre del archivo:</label>
<input type="text"  name="nombre_de_archivo" value="" >.txt
<label>Información:</label>
<textarea  name="contenido" ></textarea>
<input  class="boton" type="submit" value="Guardar" />
</form>
</body>
</html>

Bueno esto es todo obviamente a esto le falta estilo pero aca les dejo un demo ya bien diseñado y con estilo listo empezar a ocupar (Ustedes le pueden hacer ajustes si le place). Les quedaría así Espero que les haya gustado. Si tienen dudas comenten.


Descarga Aquí


Les invito a ver el video explicativo:


domingo, 14 de junio de 2015

Crear y guardar un archivo bloc de notas en JSP y Java

Para la registración de datos en el servidor disponemos de dos herramientas que se complementan en muchos casos los archivos de texto y bases de datos. En este apartado veremos como crear un archivo de texto y añadir datos al mismo haciendo las páginas en JSP y clase en Java


Primero de todo explicaré un poco como podemos hacer esto en JSP y JAVA para poder entender luego el demo que le deje al final. Este demo es un modelo de un creador de archivo .txt y en el se guarda la información que ingresamos en el formulario que desarrollamos. Básicamente el que realiza la creación del archivo y la carga del contenido es la clase notePad.java Las páginas JSP solamente sirven para el envio del formulario y la creación de un objeto nuevo para asi crear un archivo .txt


Esta es la clase notePad.java el cual crea y carga el archivo .txt y devuelve un mensaje
package clases;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;

/**
 *
 * @author Jonas
 */
public class notePad  {
    String nombre;
    String contenido;
    String ubicacion;
    
    //Construcytor de la clase

    public notePad(String nombre, String contenido) {
       this.nombre=nombre;
       this.contenido=contenido;
       this.ubicacion="C:/Proyecto-block-de-notas/web/bloc-de-notas/";
    }
    
    
       
    public  String CargaDatos() throws IOException {
  // VERIFICA SI EL NOMBRE DEL ARCHIVO Y EL CONTENIDO NO ESTAN VACIOS
              
   if(validarDatos()==true){
         
//CREA EL ARCHIVO ESPECIFICADO EN EL LA RUTA Y EL NOMBRE EN EL FORMULARIO
         
     this.ubicacion+=this.nombre+".txt";
     BufferedWriter linea = new BufferedWriter(new FileWriter(this.ubicacion));
    //Scanner datos = new Scanner (System.in);


//  GUARDA LA INFORMACION EN EL ARCHIVO .TXT QUE SE A CARGADO EN EL FORMULARIO
             
                   linea.write(this.contenido);
                   //datos.next();
  // CIERRA EL ARCHIVO CREADO                 
                   linea.close();
        
        return "<p class='exito'>Se a creado y guardado el archivo " + this.nombre +".txt con exito</p>";
   }else
   { 
        return "<p class='error'>Campos vacios no se pudo realizar la carga</p>";
   }
  
          }

private boolean validarDatos(){
    if (this.nombre.isEmpty() || this.contenido.isEmpty()) {
        return false;
    }else
    {return true; }

}
}

Como se dieron cuenta el atributo ubicacion posee una dirección fija ustedes le pueden cambiar si cambian en otro lugar el proyecto. Primero se posee un constructor donde pide un nombre y un contenido lo que debe tener todo archivo, luego con su método cargarDatos() es el que crea el archivo y guarda el contenido. Con la clase BufferedWriter escaneo la ubicación y genero un nuevo archivo con la clase FileWriter pasandole como atributo la ubicacion que al final de su cadena de texto se encuentra reescrita por el nombre del archivo. Luego crea un objeto llamado "linea" que escribe con un metodo que poseé write() el contenido y finalmente cierro el objeto y retorno el mensaje de exito. Esto sucede si el método validarDatos() me retorna un true ya que verifica si el atributo nombre y contenido estan con algun valor.

Veamos ahora el formulario que envia los datos es la página index.jsp

<!DOCTYPE html>

<html lang="ES">
<head>
<meta  charset="UTF-8"/>
<meta name="description" content="PHP"/>
<meta name="author" content="compartiendocodigos"/>
<title>Crear y guardar bloc de notas</title>
</head>
<body>
<form action="CargarBloc.jsp" method="POST">

<label>Nombre del archivo:</label>
<input type="text"  name="nombreArchivo" value="" >.txt

<label>Información:</label>
<textarea  name="informacion" ></textarea>

<input  class="boton" type="submit" value="Guardar" />

</form>

</body>
</html>

Este fomulario se dirige a cargarBloc.jsp donde recepta los parámetros. Veamos que hace...

cargarBloc.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page  import="java.util.*" %>
<%@page  import="java.io.BufferedWriter" %>
<%@page  import="java.io.FileWriter" %>
<%@page  import="java.io.IOException" %>
<%@page  import="java.util.Scanner" %>
<%@page  import="clases.notePad" %>

<%
    String nombreArchivo;
    String informacion;
    
    nombreArchivo= (String) request.getParameter("nombreArchivo");
    informacion= (String) request.getParameter("informacion");
   notePad blocNotas;
   blocNotas= new  notePad(nombreArchivo, informacion);
   // LOEGO DE CREAR EL OBJETO PONE EN FUNCION SU METODO DE CARGA EN EL DIRECTORIO ESPECIFICADO
    out.print(blocNotas.CargaDatos());
%>
               

En esta página primero importa las clases necesaria y entre una de ella la clase notePad.java para poder crear un objeto con los parámetros recibidos por el método request.getParameter(). Luego ejecuta su método cargarDatos() del objeto creado blocNotas donde retorna un mensaje de exito o error y listo Esto es todo básicamente es obvio que a esto le falta estilo pero les dejo el Demo ya con todo esto.

                                          
                                     Descarga Aquí

Espero que le sirva si tienen dudas comenten.Saludos...

El video explicativo pueden ver en el canal de YouTube CompartiendoCodigos o desde aquí:


Como hacer una Aplicación Hibernate Con BD Derby Embebida y Archivo .bat Ejecutable

  Muchas veces cuando terminamos nuestros proyectos queremos empaquetar y distribuirlo  pero tenemos un problema con la BD que elegimos, por lo general en MySQL o PostgreSQL los cuales debemos instalar primero en el localhost del usuario que quiere ocupar nuestra app y luego ejecutar la aplicación creada por nosotros. Esto genera a que sea engorroso la instalación de nuestro programa y por lo general el usuario abandona esta propuesta.

 En este video te muestro como ocupar Derby el cual nos permite crear una BD embebida en el mismo proyecto y además las tablas se mapearán usando el Framework Hibernate de tal modo que una vez terminado el proyecto se modificará el archivo build.xml para generar un archivo run.bat el cual permitirá ejecutar en cualquier PC nuestra aplicación sin la necesidad de instalar una BD previamente.

Aquí les dejo el video explicativo paso a paso:


Espero que les haya servido comenten!!! cualquier duda. Les dejo además el proyecto para que lo puedan descargar:



domingo, 7 de junio de 2015

Ingeniería Inversa con Hibernate en Netbeans uso de POJOs


Hibernate es un Framework muy poderoso servicio de base de datos con un alto desempeño y memoria objeto-relacional. Hibernate usa clases JavaBean para representar las tablas que actúan como bases de datos en la memoria. Las columnas de la tabla están representadas por las propiedades de la clase Java la cual es el modelo. Los datos con etiquetas clase-a-tabla y campo-a-columna se guardan en archivos XML los cuales son los archivos de mapeo.   Este artículo les explicocon el video los pasos para hacer ingeniería inversa con las tablas de la Base de datos y generar clases POJO creando clases java, así como mapeos de los archivos XML, usando herramientas de Hibernate, y por último les dejo un ejemplo con la BD para que pueda exportarlo y ver en su ID.

Modelo UML de la Base de Datos "EncargosPedidosSA" de la cual se va a crear automáticamente las clase .java que van a modelar a las tablas y los archivos de mapeo .xml



Aquí esta el vídeo explicativo paso a paso:



Y por último le dejo el proyecto para que pueden descargarlo, si existen dudas comenten...Espero que les sirva.