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. FMJ9RUP6WVQ5
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. |
| 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 voti, media: 4,00 di 5)
COMMENTS