Buscar
Social
Ofertas laborales ES

Entries by jmarranz (8)

martes
may122015

Publicados JEPLayer y JEPLDroid v1.3

Recientemente he publicado la versión 1.3 de JEPLayer y JEPLDroid. JEPLayer es un ORM (Object Relational Mapping) basado en JDBC y JTA. 

Su objetivo es simplificar al máximo el ciclo de vida del uso habitual de JDBC y JTA y evitar al máximo los errores típicos del uso de JDBC y JTA, pero los objetos JDBC siguen siendo accesibles por lo que el ciclo de vida persistente es totalmente configurable si se quiere actuar en el nivel JDBC, es decir no se oculta completamente el JDBC típico de otros enfoques ORM.

La diferencia principal respecto a otros ORMs más transparentes y "mágicos" como JPA e Hibernate es que JEPLayer no es nada intrusivo, no contamina el modelo de datos, el mapeado entre clases y tablas es totalmente configurable (aunque con ciertos convencionalismos es automático), se usa directamente SQL sin dialectos, y hay un claro foco en facilitar la definición de transacciones tanto JDBC como JTA.

JEPLDroid es la versión de JEPLayer para Android.

Click to read more ...

miércoles
dic312014

RelProxy v0.8.1 reduce el número de redeploys en GWT-RPC y otros Java web frameworks

RelProxy es un recargador de clases en tiempo de ejecución para Java y Groovy a partir del código fuente, además proporciona la capacidad de scripting a Java, es decir poder ejecutar Java SIN COMPILAR previamente lo cual hace posible ser usado como lenguaje de scripting en shells o embebido como script en aplicaciones con otros lenguajes JVM incluido claro el propio Java.
El foco de RelProxy es Java, aunque también RelProxy ayuda a embeber y recargar dinámicamente Groovy en una aplicación Java.
Recientemente he publicado la versión 0.8.1, en la anterior y primera versión, el enfoque estaba en poder cambiar en producción código fuente sin necesitar recargar la aplicación (normalmente web), esa capacidad obviamente permitía cambiar el código fuente y recargarse en tiempo de desarrollo permitiendo un aumento de productividad, características que han existido de siempre en los lenguajes dinámicos (PHP, Ruby etc). Aunque lo anterior es interesante es insuficiente, en pocos casos nos arriesgamos a cambiar código fuente en caliente, por lo que es interesante el poder al menos ser productivos en tiempo de desarrollo pero sin necesidad de subir código fuente. ...

Click to read more ...

miércoles
feb122014

Publicado RelProxy v0.8, hot class reloader y scripting para Java y Groovy

Me llena de orgullo y satisfacción anunciar la primera versión oficial RelProxy v0.8

¿Qué es RelProxy?
RelProxy tiene tres principales funcionalidades:

  1. Un recargador en tiempo de ejecución de clases modificadas a partir de su código fuente tanto en Groovy como en Java. Una especie de JRebel pero menos ambicioso... y más barato.
  2. Proporciona un entorno de scripting a Java, incluyendo la posibilidad de ejecutar "shell scripts" en Java puro
  3. Soporte de JSR-223 Java Scripting API para el "lenguaje de script Java".

Click to read more ...

lunes
jul152013

No tires tu viejo framework web Java: la pequeña historia Single Page Interface de Twitter

Twitter.com es uno de los sitios web más populares del mundo, poca gente sabe que es a su vez uno de los pocos sitios web Single Page Interface compatible SEO stateless del mundo.

Es decir es SPI en el sentido de que evita al máximo cargar páginas, cada click supone un cambio parcial de la página sin cargar una nueva página como tal, la información necesaria es obtenida por AJAX.

Es compatible SEO porque hay páginas que está diseñadas para ser accedidas por robots de buscadores tal y como el de Google y a la vez es la misma página que puede ser vista por un usuario logado. Por ejemplo http://twitter.com/jmarranz es la misma página tanto estando logado como si no lo estás, pero esa página es SPI si estás logado (cuando haces clicks en sus elementos no cambia de página) pero también es una página convencional si no estás logado, es decir al hacer click en esos mismos elementos cambias de página, es este segundo modo el que ve un robot rastreador de webs.

Click to read more ...

martes
jun252013

ItsNat stateless tutorial

 modifyremoveorganizepost follow up En la noticia sobre la publicación de ItsNat v1.3 hablábamos como en esta versión se introduce un nuevo estado stateless o sin estado en el servidor, con el fin de poder desarrollar sitios web (y aplicaciones) Single Page Interface SEO compatibles escalables a múltiples nodos sin necesidad (por parte de ItsNat) de compartir información del estado del usuario entre nodos a través de la sesión.  Debido a que no hay datos de la...

Click to read more ...

lunes
jun102013

Publicado ItsNat v1.3: nuevo modo sin estado en el servidor

He publicado la versión 1.3 de ItsNat, Natural AJAX

ItsNat es un framework AJAX con licencia LGPL orientado al desarrollo de aplicaciones y sitios web Single Page Interface SEO compatibles, dentro de la filosofía del Single Page Interface Manifiesto

Hasta la versión v1.2 el funcionamiento normal era sólo con estado en el servidor, básicamente ItsNat simula un navegador Java W3C en el servidor, el servidor guarda una copia del DOM de la página del usuario tal que los cambios en el DOM servidor se propagan automáticamente al cliente para sincronizarlo con el servidor a través de código JavaScript generado al vuelo normalmente como resultado de peticiones AJAX (o script).

El resultado es una programación web basada en plantillas HTML puro y código Java W3C DOM, básicamente lo mismo tipo de programación que harías con JavaScript en el cliente usando las APIs W3C pero en Java y en el mismo espacio de memoria en donde se encuentran los datos a gestionar, es decir en el servidor.

Click to read more ...

lunes
mar192012

Escalamiento horizontal ACID de RDBMS con JEPLayer

Es posible que necesites la capacidad de las bases NoSQL de escalar horizontalmente, bien, estás de suerte, porque la necesidad de escalar suele ser un signo de éxito de un servicio, pero antes de cruzar el Rubicón, es conveniente intentar antes agotar las posibilidades de escalamiento de tu base de datos relacional de siempre. La primera opción típica para escalar con una única instancia de RDBMS es añadir algún tipo de caché...

Click to read more ...

viernes
dic162011

JEPLayer ORM 1.0 : transacciones JTA y API fluida

He publicado JEPLayer v1.0. JEPLayer es un sencillo ORM sobre JDBC y en esta versión también sobre la Java Transacion API (JTA). JEPLayer es de código abierto con licencia Apache v2. JEPLayer es una herramienta de más bajo nivel que los ORMs de persistencia transparente tal y como Hibernate, JPA o JDO. JEPLayer responde a la necesidad de evitar las tareas más tediosas del uso de JDBC y/o JTA pero sin perder control alguno de las acciones de persistencia, y sin reinventar la rueda evitando redefinir la API JDBC y JTA, simplificando de forma extrema la demarcación de transacciones tanto JDBC como JTA incluso para múltiples bases de datos.

Click to read more ...