Avatar billede stenmadsen Nybegynder
29. november 2003 - 14:33 Der er 4 kommentarer og
2 løsninger

Embedded DB i Tomcat

Jeg vil forsøge, at udskifte DB'en i min web applikation (kører tomcat 4.1.27) med en embedded DB. Jeg har pt. de 3 DB'er hsql, mckoi og pointbase jeg kan forsøge med. Jeg forestiller mig, at man blot kopier DB-jar'en til enten tomcats common/lib (hvor også JDBC driveren ligger) eller til web applikationens WEB-INF/lib og retter parametrene til datasourcen (server.xml). Men hvordan startes DB'en og hvad med DB'ens ini-fil som fortæller hvor databasen ligger? Jeg har ikke kunnet finde nogle eksempler/dokumentation af dette, så derfor vil alle foreslag være velkomne.
Avatar billede arne_v Ekspert
29. november 2003 - 14:44 #1
JBoss kommer med hsql - du kunne jo "kigge" lidt der.
Avatar billede soelvpil Nybegynder
08. december 2003 - 23:00 #2
Følgende er nogenlunde frit fra hukommelsen, fra sidst jeg brugte hsql.

Prøv følgende opsætning

databasedriver = "org.hsqldb.jdbcDriver"
databaseurl = "jdbc:hsqldb:sti/til/hsql"
username = "sa"
password = ""

Så burde det virke, og databasen vil placere filerne under jakarta-tomcat-4.1.27/sti/til/hsql (eller hvad du nu sætter stien til).

Hvis du i stedet for stien blot angiver et ".", altså "jdbc:hsqldb:.", vil databasen køre i memory (dårligt i produktion, men kan undertiden være nice til test).

McKoi har jeg ikke prøvet at bruge, men mener at kunne huske fra dokumentationen, at der gælder noget tilsvarende.
Avatar billede stenmadsen Nybegynder
09. december 2003 - 19:55 #3
Det er jo dejligt nemt. Jeg har også forsøgt med Point Base, og mener at kunne mærke en lidt bedre svartid i min webapplikation. Det må så være JDBC-driver'en der instantiere DB'en, ikke? Jeg har tidligere defineret datasource globalt i min Tomcat server.xml, men nu da jeg mulighed for at lade database-engine være en del af min war-fil, er det jo også oplagt, at definere datasource lokalt i min web-applikations context. Er det muligt at gøre dette i web.xml, og så deploy'e hele molevitten via ant?
Avatar billede arne_v Ekspert
09. december 2003 - 20:28 #4
Det mener jeg ikke at du kan.

Jge har aldrig set andr steder end server.xml at definere data sources
i Tomcat (og web.xml er jo defineret i standarden).

Men du kunne jo evt. deploye din egen connection pool i din web app
og bruge den.

Eller du kunne evt. skifte fra Tomcat til JBoss+Tomcat, fordi i JBoss
kan du deploye data sources i separate filer (hot deploy ved copy d.v.s. virker
også med ant).
Avatar billede stenmadsen Nybegynder
09. december 2003 - 23:39 #5
Jeg indrømmer at JBOSS ser interessant ud, det er bare lige det med tiden. Men mon ikke at tiden er givet godt ud, jeg må vist hellere komme i gang? Send et svar Arne så deler jeg point ud.
Avatar billede arne_v Ekspert
10. december 2003 - 08:04 #6
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester