search query: @keyword sql / total: 36
reference: 15 / 36
Author: | Vainio-Kaila, Touko |
Title: | Providing persistence for an existing three-tier Java application with a legacy relational database |
Pysyvyyden toteuttaminen vanhaa relaatiotietokantamallia käyttävälle kolmikerrosarkkitehtuuriselle Java-ohjelmistolle | |
Publication type: | Master's thesis |
Publication year: | 2009 |
Pages: | (9+) 91 s. Language: eng |
Department/School: | Tietotekniikan laitos |
Main subject: | Ohjelmistotekniikka (T-106) |
Supervisor: | Malmi, Lauri |
Instructor: | Koitto, Mikko |
OEVS: | Electronic archive copy is available via Aalto Thesis Database.
Instructions Reading digital theses in the closed network of the Aalto University Harald Herlin Learning CentreIn the closed network of Learning Centre you can read digital and digitized theses not available in the open network. The Learning Centre contact details and opening hours: https://learningcentre.aalto.fi/en/harald-herlin-learning-centre/ You can read theses on the Learning Centre customer computers, which are available on all floors.
Logging on to the customer computers
Opening a thesis
Reading the thesis
Printing the thesis
|
Location: | P1 Ark Aalto | Archive |
Keywords: | persistence Java relational databases SQL JDBC three-tier architecture rich client Hibernate ORM pysyvyys Java relaatiotietokannat SQL JDBC kolmikerrosarkkitehtuuri Hibernate ORM |
Abstract (eng): | This thesis provides a general persistence solution for an existing three-tier Java application using a legacy relational database schema. In addition to keeping track of and saving the changes made to objects in the database and mapping between the objects and database tables, the main issues are concurrency control and fitting the solution to the architecture of the target case. The literature review first covers a general scope and then focuses on the specific context of Java. The solutions, based on and developed from current available literature, are gathered and evaluated in the context of the target case. Based on this, a prototype for the solution is created and evaluated. During the research, many candidate solutions were found, both patterns and techniques for different aspects of persistence as well as frameworks and libraries providing complete solutions. It was found that the existing frameworks are mainly targeted at server-side programmes, such as web applications. Based on various special properties of the target case and the challenges of using existing frameworks with the rich client approach, a custom solution was made by combining various ideas and patterns, based on optimistic concurrency control and using the Command pattern. A prototype for the persistence solution was made with support for a couple of types of entities. Based on the evaluation done, the solution works well within the target case and will be used for the application. Instead of trying to provide a solution for different Java applications in general, this solution provides a general and flexible solution for the needs of the target case and its basic structure could also be used with other similar software. |
Abstract (fin): | Tämän diplomityön aiheena on yleisen ratkaisun kehittäminen pysyvyyden toteuttamiseksi olemassa olevaan, olemassa olevaa relaatiotietokantamallia käyttävään kolmikerrosarkkitehtuuriin perustuvaan Java-ohjelmistoon. Työn pääkysymyksiä ovat olioihin tehtyjen muutosten hallinta ja tallentaminen tietokantaan, rinnakkaisuuden hallinta ja olemassa olevaan ohjelmistoon ja arkkitehtuuriin soveltuvan ratkaisun etsiminen. Työssä tehdään kirjallisuuskatsaus aiheesta, ensin yleisellä tasolla ja sitten Javan yhteydessä. Löytyneet ratkaisumallit kootaan yhteen ja arvioidaan niiden soveltuvuutta kyseessä olevaan tapaukseen. Valittujen ratkaisujen avulla tehdään prototyyppi toteutuksesta. Työssä löytyi erityyppisiä ratkaisuvaihtoehtoja ja -malleja. Osa löydetyistä vaihtoehdoista oli pysyvyyden osa-alueisiin kohdistuvia tekniikoita ja suunnittelumalleja, osa puolestaan kokonaisratkaisua tarjoavia valmiita ohjelmistokehyksiä. Valmiiden ratkaisujen havaittiin olevan suuntautuneita palvelinpuolen ohjelmistoihin, kuten www-sovelluksiin kun taas kohdeohjelmistossa pääosa toiminnoista tehdään asiakaspuolella. Tämän lisäksi ohjelmiston ja tietokantamallin erityispiirteet vaikuttivat siihen, että päädyttiin oman ratkaisun tekemiseen. Ratkaisun perusteiksi valittiin optimistinen rinnakkaisuuden hallinta ja Käskyolio-suunnittelumalli (Command pattern). Prototyypin arvioinnin perusteella ratkaisu täyttää hyvin tavoitteet. Sen sijaan, että ratkaisu pyrkisi palvelemaan erilaisia Java-sovelluksia yleisesti, tarjoaa se kohdeohjelmiston tarpeisiin sopivan yleisen ja joustavan toteutuksen pysyvyydelle siten, että ratkaisua voisi soveltaa muissakin samantyyppisissä ohjelmistoissa. |
ED: | 2009-12-11 |
INSSI record number: 38654
+ add basket
INSSI