Slf4j: una libreria per interfacciarsi ai sistemi di logging Java

In questo articolo vedremo come utilizzare la libreria Slf4j per poterci interfacciare ad una libreria di logging per Java, quale ad esempio log4j, java.util.logging oppure JCL. Slf4j fornisce infatti, un’astrazione dei sistemi di logging presenti nel panorama Java, offrendo una facade (letteralmente una “facciata” o meglio una interfaccia, è uno dei design pattern più noti nella programmazione ad oggetti) che permette di unificare la chiamata ai diversi sistemi di logging attraverso una interfaccia unica.

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (1 voti, media: 5,00 di 5)
Loading...

Accedere ad una directory LDAP con JNDI

In questo poste vedremo come interrogare una directory LDAP tramite le API JNDI. Ricordiamo che LDAP  è un protocollo standard per l’interrogazione e la modifica dei servizi di directory, nato come alternativa snella al DAP, in quanto richiede il più leggero e popolare protocollo TCP/IP invece della intera pila OSI. Inoltre LDAP semplifica certe operazioni di X.500 e omette certi aspetti intricati.

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (1 voti, media: 5,00 di 5)
Loading...

Apache log4j: una libreria di logging per Java

In questo articolo vedremo come utilizzare all’interno del nostro codice Java una delle più conosciute librerie per il logging: l’API log4j.

Il termine log deriva da logbook, il quale era il registro di navigazione, presente in ogni nave, su cui veniva segnata, ad intervalli regolari la velocità, il tempo, la forza del vento, oltre a eventi significativi che accadevano durante la navigazione. Con il significato di giornale di bordo, o semplicemente giornale, su cui vengono registrati gli eventi in ordine cronologico il termine è stato importato nell’informatica (nel 1963) per indicare:

  • la registrazione cronologica delle operazioni man mano che vengono eseguite;
  • il file su cui tali registrazioni sono memorizzate.

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (1 voti, media: 5,00 di 5)
Loading...

Apache Velocity: un template Engine in Java

In questo articolo vedremo le funzionalità di Apache Velocity un template engine Java-based.

Un template engine è un software che processa un template (un modello, ad esempio di una pagina web) e dei dati (contenuto informativo) per produrre un documento, ad esempio una pagina web da visualizzare. Alcuni linguaggi di programmazione come Java supportano nativamente il processamento di template: le Java Server Pages sono un esempio di web template engine.

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (Nessun voto ancora)
Loading...

Accedere con JNDI ad un Naming Service: il FileSystem

In questo articolo vedremo come accedere ad un servizio di naming come il FileSystem locale di una macchina. Per poter procedere con l’esempio dobbiamo scaricare un SPI (Service Provider Interface) specifico per il FileSystem dal sito:

https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=7110-jndi-1.2.1-oth-JPR@CDS-CDS_Developer

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (Nessun voto ancora)
Loading...

JNDI: Java Naming and Directory Interface

In questo articolo vedremo cos’è un servizio di Naming ed un servizio di Directory dopodiché vedremo come è possibile accedere a questi servizi tramite la API JNDI.

Un servizio di naming (naming service) è un sistema per associare nomi a degli oggetti  e trovare degli oggetti in base al loro nome. Molti programmi che usiamo quotidianamente utilizzano dei nomi per individuare degli oggetti come ad esempio la posta elettronica: dobbiamo fornire il nome del destinatario affinchè un messaggio possa essere inviato e ricevuto da esso. Oppure quando vogliamo accedere ad un file dobbiamo sempre fornire un nome per potervi accedere. Una funzionalità di un naming service è quella di mappare nomi user-friendly (facili soprattutto da ricordare) con indirizzi, identificatori o veri e propri oggetti usati dai programmi. Ad esempio il DNS mappa le URL di una macchina (www.appuntisoftware.it) su indirizzi IP (ad esempio 192.168.1.2).

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (Nessun voto ancora)
Loading...

Hibernate: realizziamo un esempio pratico di utilizzo delle API di base

In questo post vedremo con configurare Hibernate per un nostro Progetto Java all’interno di Eclipse e come utilizzare le api di base per salvare e reperire le informazioni da un database MySQL.

Procuriamoci le API Hibernate all’indirizzo:

http://sourceforge.net/projects/hibernate/files/hibernate3/

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (3 voti, media: 5,00 di 5)
Loading...

AOP: la programmazione Orientata agli Aspetti

In questo articolo daremo una definizione di Aspect Oreinted Programming e vedremo le differenze con l’Object Oriented Programming.

La programmazione orientata agli oggetti (OOP) è una tecnologia che aiuta il lavoro del Software Engineer in quanto il modello ad oggetti rappresenta il modo migliore per modellare il dominio del mondo reale. A questa fondamentale capacità sono poi correlate altri benefici quali l’incremento nella manutenibilità del codice e le aumentate possibilità di riuso dello stesso. La programmazione ad oggetti essenzialmente vede il sistema da modellare come un insieme di oggetti che collaborano tra di loro scambiandosi messaggi. Le classi ci permettono di nascondere i dettagli implementativi dietro a delle interfacce, il polimorfismo ci consente di ottenere un comportamento comune per dei concetti tra di loro correlati mentre l’ereditarietà ci permette  a componenti più specializzati di cambiare un determinato comportamento senza cambiare l’implementazione di quelli più generici.

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (1 voti, media: 5,00 di 5)
Loading...

Hibernate: un ORM tool per la piattaforma Java e .NET

In questo post vedremo cos’è un Object Relational Mapping (brevemente ORM) e come Hibernate implementi efficacemente questa tecnica di programmazione.

L’ORM è una tecnica di programmazione che permette di “mappare” oggetti di un qualsiasi linguaggio Object-Oriented (ad esempio Java) su di un Database Relazionale. Tale operazione ha una certa complessità in quanto un oggetto è rappresentabile mediante un grafo interconnesso con altri oggetti mentre gli RDBMS rappresentano i dati in una forma tabellare, di conseguenza salvare e caricare grafi all’interno di tabelle è una operazione piuttosto complessa. Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (Nessun voto ancora)
Loading...

Java Reflection: esaminare e modificare un oggetto Java a runtime

In questo articolo vedremo come è possibile applicare la tecnica della riflessione (reflection) ad un linguaggio di programmazione come Java.

La reflection in informatica è la capacità di un programma di esaminare e/o modificare a runtime il proprio comportamento, e in particolare la struttura del proprio codice sorgente.

Leggi tutto »

1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (2 voti, media: 5,00 di 5)
Loading...