search query: @keyword SQL / total: 36
reference: 14 / 36
« previous | next »
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 Centre

In 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

  • Aalto University staff members log on to the customer computer using the Aalto username and password.
  • Other customers log on using a shared username and password.

Opening a thesis

  • On the desktop of the customer computers, you will find an icon titled:

    Aalto Thesis Database

  • Click on the icon to search for and open the thesis you are looking for from Aaltodoc database. You can find the thesis file by clicking the link on the OEV or OEVS field.

Reading the thesis

  • You can either print the thesis or read it on the customer computer screen.
  • You cannot save the thesis file on a flash drive or email it.
  • You cannot copy text or images from the file.
  • You cannot edit the file.

Printing the thesis

  • You can print the thesis for your personal study or research use.
  • Aalto University students and staff members may print black-and-white prints on the PrintingPoint devices when using the computer with personal Aalto username and password. Color printing is possible using the printer u90203-psc3, which is located near the customer service. Color printing is subject to a charge to Aalto University students and staff members.
  • Other customers can use the printer u90203-psc3. All printing is subject to a charge to non-University members.
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
« previous | next »
INSSI