Nel mese di marzo ha visto la luce una nuova major release - la 2.0 - per Ehcache. Si tratta di uno dei prodotti di punta della famiglia Terracotta, che da anni fornisce soluzioni consolidate per la creazione di di applicazioni java enterprise affidabili e scalabili: caching (per Hibernate come per il web) distribuito, clustering direttamente a livello di JVM (e non di applicazione) JVM, tutto implementato in maniera pressoché trasparente allo sviluppatore. (more...)

Continua a leggere Ehcache 2.0, caching e scalabilità  in Java

Categoria: Java

TestNG 5.12

7 Apr

TestNG è probabilmente il più conosciuto testing framework per Java assieme a JUnit. A differenza di quest'ultimo, nato per lo unit testing (come del resto il nome lascia intendere), TestNG è progettato per coprire tutte le categorie di test, compresi test funzionali e di integrazione. (more...)

Continua a leggere TestNG 5.12

Categoria: Java

Aggiornamento per Java SE 6, ora alla versione 6u19 (o 1.6.0_19-b04, se vogliamo considerare il versionamento "interno"). Si segnalano: modifiche alla tabella dei fusi orari; aggiornamento dei root certificate; miglioramento della sicurezza per applicazioni java web start e applet; miglioramento della sicurezza per il protocollo TLS; numerosi bug fix, da Swing alla Virtual Machine ad alla gestione dell'internazionalizzazione (i18n). Le note di rilascio in dettaglio sono presenti sul sito ufficiale. Come sempre, l'aggiornamento è caldamente consigliato. Per chi ha bisogno di installare ex-novo Java SE, il riferimento al sito Sun è sempre lo stesso.

Continua a leggere Java SE 6 Update 19

Categoria: Java

àˆ stata recentemente rilasciata una nuova versione per DataNucleus Access Platform, libreria per la gestione della persistenza dei dati utilizzata, tra gli altri, da Google AppEngine. Le soluzioni supportate sono veramente numerose ed eterogenee: dai framework come JDO e JPA, ai più diffusi RDBMS ma senza trascurare i database ad oggetti (ODBMS) come db4o, ai formati di più recente affermazione come JSON o i "classici" XML, Excel al protocollo LDAP. (more...)

Continua a leggere DataNucleus Access Platform, persistenza per tutti i gusti

Categoria: Java

Dopo circa un anno è tempo di una nuova versione anche per m2eclipse, affermato plugin per Eclipse per la gestione di progetti e automazione delle build con Maven. m2eclipse è una soluzione quasi obbligata per chi utilizza Maven con il popolare IDE, grazie ad una profonda integrazione non solo con il core di Eclipse ma anche con plugin altrettanto indispensabili quali Mylyn (gestione dei task) o Subversive e Subclipse (integrazione con il VCS Subversion). (more...)

Continua a leggere m2eclipse 0.10, integrazione Maven-Eclipse

Categoria: Java

A tutti coloro che, almeno una volta, hanno storto il naso di fronte a caterve di metodi get/set, toString ed altri che rendevano prolisso e poco leggibile il proprio codice, Lombok potrebbe tornare assai utile. Si tratta di una libreria (jar) ideata con l’obiettivo di minimizzare la scrittura di codice necessario ad operazioni utilizzate di frequente nella stesura di classi java (essenzialmente POJO) grazie all’utilizzo di annotazioni ad hoc: (more...)

Continua a leggere Lombok, una libreria per eliminare prolissità  nel codice

Categoria: Java

Dopo aver esaminato la classe path è la volta delle directory, la cui visualizzazione è stata fortemente modificata nella nuova API a tutto vantaggio della scalabilità : niente più array per modellare il contenuto di una directory (con ovvi cali di performance in caso di un grande numero di elementi presenti nella directory), ma un oggetto di tipo Iterator in grado di scorrerne il contenuto più il supporto a filtri ed espressioni regolari. Sono stati inoltre introdotti i link simbolici (collegamenti): un link simbolico è un riferimento a file o cartelle che possono essere creati, modificati o eliminati senza intaccare in alcun modo gli oggetti del filesystem a cui punta. I link simbolici sono supportati in ambiente UNIX così come in sotto Windows, ed ora grazie alle nuove I/O API in Java 7 saranno gestibili esplicitamente anche tramite codice. (more...)

Continua a leggere Verso Java 7: la nuova I/O API (parte 2)

Categoria: Java

L’avvento di Java 7 porterà  grosse novità  anche tra le librerie di I/O: si tratta di modifiche ormai necessarie in quanto la vecchia API, in buona parte risalente ai tempi di Java 1.0, si è spesso rivelata difficile da estendere e da gestire. Si pensi alla gestione dei file: problemi con la rinomina; scarso supporto alla gestione di permessi e metadati; scarsa efficienza nella copia; gestione delle notifiche di modifica (change notifications) poco efficiente; difficile gestione delle eccezioni (molti metodi della I/O API attuale non ne sollevano esplicitamente, per cui molto spesso è difficile capire perché un’operazione non sia andata a buon fine; nessuna possibilità  di sviluppare implementazioni di filesystem ad hoc, ad esempio per la gestione di archivi compressi. (more...)

Continua a leggere Verso Java 7: la nuova I/O API (parte 1)

Categoria: Java

Tags: ,

Con l'arrivo di Dolphin si conclude quello che è stato uno dei dibattiti più accesi degli ultimi tempi nella comunità  Java, ossia l’introduzione di funzioni lambda (lambda expressions) e chiusure (closures), fino ad ora solo in parte simulabili e riproducibili con i costrutti disponibili (ad esempio le classi anonime): il sottoprogetto incaricato di implementare questa feature già  da tempo presente in linguaggi quali Ruby o Python è Project Lambda. (more...)

Continua a leggere Verso Java 7: lambda expressions e closures

Categoria: Java

Le annotazioni (annotations) sono una realtà  in Java ormai dal 2004, anno del rilascio di Java SE 5 "Tiger", ed in breve tempo hanno raggiunto una diffusione capillare tanto nella JDK quanto nei framework più utilizzati e diffusi, specie in ambito Java EE. Con l’arrivo di Dolphin è prevista un’estensione dell’utilizzo delle annotazioni anche ai tipi: il sottoprogetto di OpenJDK7 in questione è Type Annotations, sviluppato in ambito accademico ed in parte basato su Checker Framework. Ecco un po’ di esempi di utilizzo delle type annotations. (more...)

Continua a leggere Verso Java 7: type annotations

Categoria: Java