Buscar en este blog

Chris Gerdes: The future race car -- 150mph, and no driver

Se ha producido un error en este gadget.

martes, 8 de febrero de 2011

PostgreSql 9 Auto ID (serial) y Java Persistence Api

El JPA, facilita las consulta y actualizaciones de registros en la Base de Datos.

Supongamos que estamos usando postgres 9 y tenemos una tabla, donde el campo clave es ID y es de tipo Serial. Este tipo de datos es un integer que se genera automaticamente con una secuencia definida.

Normalmente, cuando se hace un insert a una tabla que tiene este tipo de datos, a este campo ID de tipo de Dato Serial no se le asignan valores ya que se generan automaticamente por la Base de Datos.

Desde el Netbeans, Usando JPA Con EclipseLink, esto es un problema. Cuando se intenta insertar un registro sin el campo ID (que como es el campo clave tiene la especificacion "NULL = FALSE") genera un error porque no se ha especificado el valor para el campo ID.

Para hacerle entender a java que este ID esta vacio porque se genera automaticamente en la BD y no genere la excepcion, hay que hacer lo siguiente:


Se deben agregar las anotaciones @GeneratedValue y @SequenceGenerator. El nombre de la secuencia es el que se crea en postgres.

martes, 18 de enero de 2011

Java Persistence Api (JPA)

El Api de Persistencia de Java, es una tecnologia Java que define:
  • Como los objetos java son almacenados en bases de datos relacionales.
  • Un API para programadores usado para leer, escribir y consultar objetos persistentes de java ("Entidades")
JPA ayuda a los programadores a interactuar con cualquier base de datos de forma sencilla.

Algunas ventajas de usar el api:
  • No hay necesidad de crear DAO (data acces objects) complejos.
  • El API ayuda a manejar transacciones.
  • El codigo que se utiliza es estandar y puede interactuar con cualquier base de datos, liberandote de un codigo especifico para la base de datos usada.
  • Puedes usar y administrar POJOs
En otras entradas colocare algunos ejemplos practicos!

Fuente: http://java.sun.com/developer/technicalArticles/J2SE/Desktop/persistenceapi/

jueves, 13 de enero de 2011

Netbeans 7.0 Beta Release

Netbeans es un IDE ganador de premios para el desarrollo de aplicaciones en ambientes Windows, MAC, Linux, Solaris. El proyecto netbeans consiste de un IDE Software-Libre y una plataforma de aplicacion que habilita a los programadores para crear rapidamente aplicaciones web, Orientadas a negocios, desktop y moviles. Tambien sopoerta JavaFx, Php, Javascript y Ajax, Ruby y Ruby on Rails, Groovy y Grails y C/C++.

Existe una gran comunida de desarrolladores que ofrecen documentacion y entrenamiento asi como plugins.

La nueva entrega de este IDE trae suficientes mejoras como para dedicarle unos minutos a leerlas:

JDK 7

  • Project Coin support
  • Editor enhancements: Code completion, hints
WebLogic Server

  • Streamlined and faster deployment to WebLogic
  • New server runtime node displaying deployed applications and resources
  • JSF integration with server libraries
Oracle Database

  • Simplified connection wizard
  • Guided installation to JDBC driver
  • Editing and deployment of stored procedures
JDK 7 switch

WebLogic

Oracle DB
GlassFish
  • GlassFish 3.1 support
  • Domain restart and log viewer for remote GlassFish
  • Enable and disable deployed applications
Java

  • Maven 3 support
  • JUnit 4.8.2 integration and various JUnit improvements
  • Remote HTTP URLs supported for Javadoc in libraries and Java platforms
  • New improved visual customizer for GridBagLayout
Java EE

  • Improved support for CDI, REST services and Java Persistence
  • New support for Bean Validation
  • Support for JSF component libraries, including bundled PrimeFaces library
  • Improved editing for Expression Language in JSF, including code completion, refactoring and hints
GlassFish remote view

GridBag designer

JavaEE code completion
Web Languages
  • HTML5 editing support
  • JSON formatter
PHP
  • Generate PhpDoc
  • Rename refactoring, Safe Delete Refactoring
  • PHP 5.3 - Support for aliases
C/C++

  • Easy import of project from user's existing binary
  • New Project type where user's source files are located on remote system
NetBeans Platform

General
  • Word wrap in Editor
  • Enhanced Profiler integration
  • Less intrusive checking for external changes when switching between the IDE and other programs.
 Fuente: netbeans.org