Apache Commons: componenti riusabili per Java

Il progetto Apache Commons ha come obiettivo quello di sviluppare e manutenere componenti software riutilizzabili per Java. Tali componenti sono sviluppati in modo da essere indipendenti da altri framework o prodotti software e servono come soluzione a problemi ricorrenti nell’ambito della programmazione.

Il progetto è diviso in tre parti:

  • Sandbox repository: vi sono i progetti ancora in versione provvisoria che devono ancora essere testati per essere promossi a Community;
  • Dormant repository: vi sono i progetti che hanno avuto degli sviluppi limitati in tempi recenti e probabilmente verrano dismessi in futuro;
  • Community repository: vi sono i progetti che fanno realmente parte del progetto Apache Commons.

Possiamo raggruppare i vari componenti del Progetto Commons in varie categorie:

Categoria Componenti Componenti
Web FileUpload, Proxy, Email e Net
XML Betwixt, Digester, Jelly, e JXPath
Utilities BeanUtils, Logging e Validator
Packages Codec and Modeler
Extensions CLI, Discovery, Lang, IO and Collections
DB DBCP e Pool
Others Attributes, Exec, Compress

Diamo ora uno sguardo ai componenti ed elenchiamo una breve descrizione:

Componenti Descrizione
Attributes Consente di utilizzare lo stile degli attributi utilizzato in .Net/C# in Java
BeanUtils Un Wrapper per lle API di Introspection e Reflection
Betwixt Servizion per il mapping di JavaBeansin documenti XML e viceversa
Chain Implementazione del Pattern Chain of Responsibility
CLI Parser di argomenti passati attraverso linea di comando
Codec Algoritmi di  encoding/decoding (ad esempio base64, URL).
Collections Estende il Java Collections Framework.
Compress Definisce delle API per lavorare con  tar, zip e bzip2 files.
Configuration Permette di leggere file di configurazione/prefereze in vari  formati.
Daemon Permette di definire Daemon (Unix) e Servizi (Windows) tramite codice Java
DBCP Servizion di Database connection pooling.
DbUtils Libreria di aiuto per JDBC.
Digester Utility per il mapping XML-to-Java-object.
Discovery Strumento per localizzare risorse utilizzando il mapping service/reference names su resource names.
EL Interprete per l’ Expression Languagedefinito dalle JSP 2.0.
Email Libreria per inviare  e-mail da Java.
Exec API per interagire con processi esterni in Java.
FileUpload Aggiunge la funzione di File upload a servlets e web applications.
IO Collezione di I/O utilities.
JCI Java Compiler Interface
Jelly Motore di scripting XML.
Jexl Expression language che estende l’Expression Language di JSTL.
JXPath Utilities per manipolare Java Beans usando la sintassi  XPath.
Lang Fornisce funzionalità extra alle classi del package java.lang.
Launcher Cross platform Java application launcher.
Logging Wrapper costruito intorno ad una varietà di logging API.
Math Componente di funzionalità matematiche e statistiche.
Modeler Mechanismo per creare Model MBeans compatibili con le JMX specification.
Net Insieme di utility per la rete ed implementazione di protocolli di rete.
Pool Componente per l’bject pooling.
Primitives Utility per lavorare più facilmente e veloce con i tipi primitivi di Java.
Proxy Libraria per creare Proxy.
Sanselan Libreria per immagini.
SCXML Implementazione della specifica State Chart XML con lo scopo di creare e manutenere un motore Java SCXML.
Transaction Implementazione di lock multilivello, transactional collections e transactional file.
Validator Framework per definire validators e regole di validation in un xml file.
VFS Componente di Virtual File Systemper trattare files, FTP, SMB, ZIP come un singolo logical file system.

Negli articoli successivi esamineremo alcuni di questi componenti.

FMJ9RUP6WVQ5

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (1 voti, media: 4,00 di 5)
Loading...
You can leave a response, or trackback from your own site.

Leave a Reply

*