SQLJ es un estándar ISO (ISO/IEC 9075-10) para embeber sentencias SQL en programas de Lenguaje de programación Java.

Al contrario que JDBC, SQLJ no es una API sino una extensión del lenguaje. Así, los programas SQLJ deben ejecutarse a través de un preprocesador (el traductor SQLJ) antes de que puedan ser compilados.

SQLJ tiene varias ventajas sobre JDBC:

  • Los programas SQLJ son más fáciles de escribir y de mantener. Además tienden a ser más cortos que los programas JDBC equivalentes.
  • Es más eficiente que JDBC dado que las sentencias SQL son analizadas y los caminos de acceso son optimizados en tiempo de compilación en lugar de en tiempo de ejecución.
  • Suministra mejor control de autorización: La Autorización puede ser concedida a los programas en lugar de a los usuarios.
  • Los problemas de rendimiento potenciales, tales como las consultas ineficientes debido a un mal camino de acceso, pueden ser identificados en tiempo de desarrollo.

Hay varias desventajas:

  • SQLJ requiere un paso de preprocesamiento.
  • Muchos IDEs no proporcionan soporte SQLJ.
  • No hay soporte de SQLJ para la mayoría de frameworks de persistencia comunes, tales como Hibernate.

Ejemplos

Los siguientes ejemplos comparan la sintaxis de SQLJ con la utilización de JDBC.

Enlaces externos

  • IBM Redbook: DB2 for z/OS and OS/390: Ready for Java
  • Javaworld SQLJ Archivado el 30 de enero de 2009 en Wayback Machine.

PPT Database Connectivity ODBC, JDBC and SQLJ PowerPoint Presentation

SQL Notes Webanwendungen entwickeln mit Oracle9i Java, XML, JDBC und

SQL, Embedded SQL, Dynamic SQL and SQLJ

PPT Accessing a Database Using SQLJ PowerPoint Presentation, free

Wie SQLServerDatenbanken am besten gesichert werden silicon.de