Apache Tomcat - база данни връзка Обединяването
В Apache Tomcat можете да направите база данни връзка Обединяването къде в сървъра ще управлява не на връзки с базата данни. В тази статия ще научите как можем да постигнем Database Connection Обединяването използвате Apache Tomcat.
ЗАБЕЛЕЖКА:
Тук аз съм като моя показва MySql база данни, разработчиците могат да постигнат същите да ползва друга база данни на двигателя те просто трябва да промените връзката към нея низ. Също така аз съм създаване на уеб приложения Контекст .
База данни възли е два етапа:
1) Добавяне на ресурс база данни в контекста на уеб приложения
2) Как / Четене на JDBC връзката с Java
Добавяне на ресурс база данни при прилагането Контекст Web:
Предполагам, че знаете как да се създаде нова молба за контекста, в Apache Tomcat, все още не знаят, отколкото можете да минават през тази статия . Тук ние трябва да добавите допълнителен маркер, наречен "ресурс" вътре контекста маркер.
docBase = "/home/hitesh/test/web" reloadable = "true" > <context пътя = "/test" docBase = "/home/hitesh/test/web" презаредим = "true"> prefix = "localhost_test_log." suffix = ".txt" timestamp = "true" /> <logger className = "org.apache.catalina.logger.FileLogger" префикс = "localhost_test_log." наставка = ".txt" клеймото = "true" /> auth = "Container" type = "javax.sql.DataSource" username = "test" password = "test" driverClassName = "org.gjt.mm.mysql.Driver" url = "jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true" maxActive = "100" maxIdle = "30" /> <Ресурс име = "JDBC / тест" AUTH = "Контейнер" тип = "javax.sql.DataSource" име = "тест" Password = "тест" driverClassName = "org.gjt.mm.mysql.Driver" URL = "JDBC : MySQL: / / 127.0.0.1:3306 / изпитване? useUnicode = вярно & characterEncoding = UTF-8 & autoReconnect = истинска "maxActive =" 100 "maxIdle =" 30 "/> </ Context>
Тук, ако виждате съм добавил един ресурс етикет, съдържащ всички най-важната информация, необходима за свързване с база данни. Проектите трябва да се промени на driverClassName и URL кутия, които използват други Database Engine.
Първи / четене на JDBC връзка в Java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | ; пакет com.hiteshagrawal; ; внос javax.naming .*; ; внос java.sql .*; ; внос javax.sql .*; ; внос java.io. *; обществени крайния клас ConnectionManager ( null ; Частни DS DataSource = NULL; обществени ConnectionManager getDatabaseInstance () ( null ; Контекст CTX = NULL; null ; Струнен източници на данни = NULL; is = null ; Java. Йо. InputStream е = NULL; null != ds ) { ако (нула! = ДС) ( връщане DS; ) опитайте ( InitialContext ( ) ; CTX = нови InitialContext (); null == ctx ) { ако (нула == CTX) ( ( "Context is null. Error in connecting to the datasource." ) ; хвърлят нови Exception ("Контекст е нищожна. Грешка в свързването към източника на данни."); ) . getResourceAsStream ( "jdbc" ) ; е = DBConnection. класа. getResourceAsStream ("JDBC"); is == null ) { ако (е == NULL) ( DataSource ) ctx. lookup ( "java:comp/env/jdbc/test" ) ; DS = (DataSource) CTX. търсене ("Java: Comp / Околна среда / JDBC / тест"); { ) (Останало String ( convertStreamToString ( is ) ) . trim ( ) ; източници на данни = нов String (convertStreamToString (е)). отрежете (); DataSource ) ctx. lookup ( datasource ) ; DS = (DataSource) CTX. търсене (източници на данни); ) ( Exception e ) { ) Улов (Изключение д) ( ; Д. printStackTrace (); ) връщане DS; ) getDatabaseConnection ( ) { публично връзката getDatabaseConnection () ( null ; Връзка против = NULL; опитайте ( ( ) ; против = ДС. getConnection (); ( Exception e ) { ) Улов (Изключение д) ( ; Д. printStackTrace (); ) връщане против; ) convertStreamToString ( InputStream is ) { Частни струнен convertStreamToString (InputStream е) ( new BufferedReader ( new InputStreamReader ( is ) ) ; BufferedReader читателя = нови BufferedReader (ново InputStreamReader (е)); StringBuilder ( ) ; StringBuilder SB = нови StringBuilder (); null ; Низ линия = NULL; опитайте ( line = reader. readLine ( ) ) != null ) { време ((ред = читател. Readline ())! = NULL) ( line + " \n " ) ; SB. добавяне (линия + "\ N"); ) ( IOException e ) { ) Улов (IOException д) ( ; Д. printStackTrace (); { ) (Най-накрая опитайте ( ; е. тясно (); ( IOException e ) { ) Улов (IOException д) ( ; Д. printStackTrace (); ) ) ( ) ; връщане SB. toString (); ) ) |
Код Обяснение:
getDatabaseInstance () функцията ще търсене на ресурс име, което сте определили във вашия уеб приложения Контекст. Можете също така да съхраняват същия вид в свойства на файла или вътре в WEB-INF папка.
getDatabaseConnection () функцията е отговорен за получаване на нова база данни връзка от групата.
convertStreamToString () функция ще преобразува InputStream в низ.



































