Vous êtes sur la page 1sur 5

POOL DE CONEXIONES A TRAVS DE TOMCAT.

El Tomcat nos ayuda, al igual que otros servidores Java (EE), a manejar un pool de conexiones a las bases de datos. Procedimiento El procedimiento a seguir se resume en los siguientes cuatro pasos. 1. Instalar los dri ers !D"C En primer lugar debemos copiar los ficheros .jar que contienen los drivers JD ! que vamos a usar en el directorio "!#$#%&'#()*+E,common,lib. Desde ah- estar.n disponibles para la aplicaci/n y para el servidor por lo que en principio ya no har. falta distribuirlos con la aplicaci/n. #. Con$i%&rar el $ic'ero (E")IN*+,e-..ml 0or cada fuente JD ! a1adimos una entrada como la siguiente en el fichero 2eb.xml 34esource5ref6 3description6Descripci/n del driver3,description6 3res5ref5name6jdbc,hsqldb3,res5ref5name6 3res5type6javax.sql.Data7ource3,res5type6 3res5auth6!ontainer3,res5auth6 3,4esource5ref6 /descri0tion18 descripci/n textual del recurso. /res)re$)name18 hace las veces de alias para acceder al recurso JD !. 0uede ser cualquier nombre que queramos, pero siempre con el prefijo jdbc, ya que 9ste forma parte del nombre J'D& ( Java Naming and Directory Interface) que emplea $omcat para locali:ar los recursos de la aplicaci/n. /res)t20e18 indica el tipo de fuente de datos a la que estamos accediendo. El tipo javax.sql.Data7ource es el propio de los drivers JD !. /res)a&t'18 especifica si la aplicaci/n se registra en el gestor de recursos a trav9s de su propio c/digo fuente o si el contenedor de la aplicaci/n se registra en nombre de la misma de forma autom.tica. 7us valores posibles son Container y Application.

3.

Con$i%&rar el $ic'ero META)IN*+conte.t..ml

El siguiente fichero a configurar es context.xml en el directorio +E$#5&';. Es posible que dicho fichero no exista, por lo que deberemos crearlo en tal caso. En este fichero es en el que realmente especificaremos los par.metros de conexi/n a una base de datos determinada. Deber. existir una entrada 34esource6 por cada

base de datos que se vaya a emplear y su nombre deber. coincidir con el indicado en el fichero 2eb.xml 3!ontext path<=,0re0angea= doc ase<=0re0angea=6 34esource name<=jdbc,hsqldb= auth<=!ontainer= type<=javax.sql.Data7ource= username<=user= pass2ord<=pass2ord= driver!lass'ame<=org.hsqldb.jdbcDriver= url<=jdbc8hsqldb8hsql8,,phoenix,hsqlD = max#ctive<=>= max&dle<=?= ,6 3,!ontext6 El elemento 3!ontext6 hace referencia al contexto donde este recurso es v.lido, esto es, a la aplicaci/n que se est. desplegando. 7us propiedades path y doc ase hacen referencia al nombre de dicha aplicaci/n. %as propiedades de configuraci/n de 3resource6 son las siguientes8 name8 nombre J'D&. Debe ser el mismo nombre que el indicado en 2eb.xml. a&t'8 igual que 3res5auth6 en el fichero 2eb.xml. t20e8 igual que 3res5type6 en el fichero 2eb.xml. &sername8 usuario para acceder a la base de datos. 0ass,ord8 su contrase1a. dri erClassName8 nombre completo de la clase con el driver JD ! &rl8 url de conexi/n a la base de datos ma.Acti e8 n@mero m.ximo de instancias activas simult.neas para esta base de datos. ma.Idle8 n@mero m.ximo de conexiones simult.neas sin actividad. ma.(ait8 tiempo en milisegundos que esperar. el sistema antes de generar una excepci/n cuando se le solicita una nueva conexi/n y no haya ninguna disponible. alidation4&er28 !onsulta 7A% que puede usarse para comprobar la valide: de una conexi/n. Debe ser un 7E%E!$ y devolver al menos una fila. C6di%o de la a0licaci6n

5.

El c/digo necesario para que nuestra aplicaci/n acceda a una fuente de datos JD ! a trav9s de un pool de conexiones gestionado por $omcat es el que sigue8 try B ,, *btenemos un contexto inicial &nitial!ontext ctx < ne2 &nitial!ontext()C ,, *btenemos el contexto de nuestro entorno. %a cadena ,, =java8 comp,env= es siempre la misma !ontext env!tx < (!ontext) ctx.looDup(=java8comp,env=)C

,, *btenemos una fuente de datos identificada con la cadena que ,, le hemos asignado en los ficheros de configuraci/n Data7ource ds < (Data7ource) env!tx.looDup(=jdbc,hsqldb=)C ,, Ea podemos obtener una conexi/n y operar con ella normalmente !onnection conn < ds.get!onnection ()C F !atch (Exception e) BF

7.

Con$i%&rando 0ara 8&e se e9ec&te en :lass$is'.

#hora, imaginemos que debamos utili:ar nuestra aplicaci/n en un contenedor de aplicaciones en el cual ya se tiene configurada la conexi/n a la base de datos. E el est.ndar de la organi:aci/n en que estamos trabajando es el Glassfish. 0ara comen:ar, debemos cambiar el servidor de ejecuci/n de nuestra aplicaci/n. En 'et eans, entramos a las propiedades del proyecto, y en la categor-a Run cambiamos a Glassfish.

Nota; no olvidemos copiar el .jar del JD ! de la base de datos en "G%#77;&7),domains,domainH,lib 7i usamos 'et eans, el &DE crear. autom.ticamente el archivo (E")IN*+s&n) ,e-..ml 3Ixml version<=H.J= encoding<=K$;5>=I6
<!DOCTYPE sun-web-app PUBLIC "-//Sun Micros s!e"s# Inc$//DTD %pp&ica!ion Ser'er ($) Ser'&e! *$+//E," "-!!p.//www$sun$co"/so/!ware/appser'er/0!0s/sun-web-app1*1+-)$0!0"2 <sun-web-app error-ur&3""2 <con!e4!-roo!2/0e"oweb</con!e4!-roo!2 <c&ass-&oa0er 0e&e5a!e3"!rue"/2 <6sp-con/i52 <proper! na"e3"7eep5enera!e0" 'a&ue3"!rue"2 <0escrip!ion28eep a cop o/ !-e 5enera!e0 ser'&e! c&ass 6a'a co0e$</0escrip!ion2 </proper! 2

</6sp-con/i52 </sun-web-app2

Este es el archivo de despliegue para Glassfish (an.logo del context.xml en el $omcat). 0ara ello entramos a la consola en http8,,localhost8>J>J (por omisi/n, el usuario es admin y la contrase1a adminadmin). %uego, en el panel de la i:quierda seleccionamos Resources > JDBC > Connection Pools y hacemos clic en el bot/n superior ='e2=. Escribimos los valores para identificar nuestro 0ool que crearemos a continuaci/n8

Damos clic en 'ext.


En la ventana buscaremos las propiedades necesarias para establecer la conexi/n a la

base de datos. Es decir8 url, user, pass2ord, 7erver'ame ( < localhost), databasename( < Database'ame). )acemos clic en ;inish. 0odemos hacer clic al 0ool reci9n creado, y le damos clic en el bot/n =0ing= para ver si est. bien configurado.

#hora, debemos crear el 4ecurso JD !. 0ara ello, en el panel i:quierdo entramos a Resources > JDBC > JDBC Resources y le damos clic en ='e2=. Escribimos los valores que hagan referencia al 0ool que acabamos de crear. 4ecordemos que el nombre del J'D& debe ser ser el mismo que hacemos referencia

en 2eb.xml.

Re$erencias; 'tt0;++tomcat.a0ac'e.or%+tomcat)7.7)doc+con$i%+conte.t.'tml 'tt0;++,i<i.net-eans.or%+PoolCone.iones:lass$is'Net"eans 'tt0;++,,,.m29a a=one.com+#>13+>#+&so)de)&n)0ool)de)cone.iones.'tml

Al&mna; Lendy 0amela +orante Mences

Vous aimerez peut-être aussi