Prima di leggere aiutaci ad offrirti contenuti sempre di qualità
Seguici sui Social Network!

In questa guida verrà illustrato come configurare un Datasource Oracle su Tomcat tramite JNDI ed usarlo in Spring MVC. La guida spiega dunque come poter connettere una web application, basata su Spring MVC e deployata su server Tomcat, ad un database Oracle mediante JNDI.

Prima di iniziare la configurazione verificare che il server Tomcat sia spento, in caso contrario effettuarne lo shutdown.

Configurare un Datasource Oracle su Tomcat tramite JNDI ed usarlo in Spring MVC

Driver Oracle JDBC

A questo punto occorre scaricare il driver Oracle JDBC (ojdbc) dal sito ufficiale: http://www.oracle.com/technetwork/database/features/jdbc

JDBC (Java DataBase Connectivity), è un connettore (driver) per database che consente l’accesso e la gestione della persistenza dei dati sulle basi di dati da qualsiasi programma scritto con il linguaggio di programmazione Java, indipendentemente dal tipo di DBMS utilizzato.

Hawkers ONE X - Occhiali da sole, CARAMEL CAREY SKY

Una volta scaricato il driver occorre estrarre dall’archivio il file ojdbc8.jar (nel mio caso la versione 8) e copiarlo all’interno della folder  [TOMCAT_HOME]/lib, dove per [TOMCAT_HOME] si intende la home di Tomcat su FileSystem.

Definire la risorsa JNDI in Tomcat

Il passo successivo è quello di definire una risorsa JNDI. Ricordo che JNDI (Java Naming and Directory Interface) è una API Java per servizi di directory che permette ai client java di scoprire e ottenere dati e oggetti attraverso un nome.

Ecco i passi per definire la risorsa JNDI in Tomcat:

All’interno del file “server.xml” di Tomcat (situato nella folder [TOMCAT_HOME]/conf), va dichiarata la Resource JNDI come segue:

La nuova resource va dichiarata all’interno del tag GlobalNamingResources del file “server.xml”.

In questo esempio è stata dichiarata una risorsa con nome “jdbc/DatabaseName” ed i relativi parametri di connessione la database Oracle.

A questo punto occorre editare anche il file “context.xml” di Tomcat (situato nella folder [TOMCAT_HOME]/conf), inserendo il ResoruceLink alla Resource dichiarata in precedenza.

A questo punto è sufficiente riavviare Tomcat per rendere effettive le modifiche.

Utilizzo del data source in Spring MVC

Per utilizzare il Datasource, ad esempio in Spring MVC, è possibile effettuare la “lookup” della risorsa JNDI in questo modo.

O alternativamente utilizzare il JndiObjectFactoryBean:

Una volta recuperato il datasource è possibile  “iniettarlo” ad esempio all’interno di un bean DAO (Data Access Object) come segue:

Environment utilizzato per la guida

La guida è stata realizzata e testata con successo sul seguente ambiente di sviluppo:

  • Apache Tomcat 7
  • Driver Oracle ojdbc8.jar
  • Spring MVC 4.3.6