PRIRODNO MATEMATIKI MATEMATIKI FAKULTET - GRUPA ZA INFROMATIKU - KOSOVSKA MITROVICA
SEMINARSKI RAD PREDMET: BAZE PODATAKA TEMA:Baze podataka i elektronska trgovina
PROFESOR:
STUDENT:
ALEKSANDAR MICI
DENIS IVI 213 KOSVOSKA MITROVICA, JUN 2011
Sadraj UVOD............. ........................ ................... ........ ........................ ................................ ........ ..................... ............................... ............ ....................... ................................ ......... ................. ................. 2 1. Primena Primena baze podataka u elektronskoj elektronskoj prodaji knjiga............................ .............. .................. .... ....................... ............. ................... ......... ..... 3 1.1 Arhitektura Arhitektura baze podataka.................... ................................ ............ ..................... ............................... ............ ....................... ................................ ......... ........... ........... 4 1.2 Komunikacije Komunikacije baze podataka i sajta..................... ................................ ........... .................... .............................. ............ .. ........................ .............................. ...... 5 2. Relacija baze podataka podataka na sajtu E-book store ...................... ................................ .......... .................... ................................ ............ ................. ................. 5 2.1 Proces Proces modelovan modelovanja ja baze podataka podataka..................... ................................ ........... .................... ............................... ............. ........................ .............................. ...... 6 3. Proces Proces konekcije baze podataka i sajta E-book E-book store............. store........................ ................... ........ ........................ ................................ ........ ..... 16
1
Sadraj UVOD............. ........................ ................... ........ ........................ ................................ ........ ..................... ............................... ............ ....................... ................................ ......... ................. ................. 2 1. Primena Primena baze podataka u elektronskoj elektronskoj prodaji knjiga............................ .............. .................. .... ....................... ............. ................... ......... ..... 3 1.1 Arhitektura Arhitektura baze podataka.................... ................................ ............ ..................... ............................... ............ ....................... ................................ ......... ........... ........... 4 1.2 Komunikacije Komunikacije baze podataka i sajta..................... ................................ ........... .................... .............................. ............ .. ........................ .............................. ...... 5 2. Relacija baze podataka podataka na sajtu E-book store ...................... ................................ .......... .................... ................................ ............ ................. ................. 5 2.1 Proces Proces modelovan modelovanja ja baze podataka podataka..................... ................................ ........... .................... ............................... ............. ........................ .............................. ...... 6 3. Proces Proces konekcije baze podataka i sajta E-book E-book store............. store........................ ................... ........ ........................ ................................ ........ ..... 16
1
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA UVOD
Osnovna tematika je upotreba baze podataka radi lake , dinaminije, funkcionalne primene i upotrebe sajta za prodaju knjiga u elektronskoj formi. Baze podataka nam slue radi lake organizacije, manipulacije i uvanja podataka. Pojedinci ili i li kompanije svakodnevno koriste baze b aze podataka, pristupanje nekom programu ili sajtu koji daje odreene informacije na upit korisnika, aktivira se baza podataka i daje odgovor putem odreenih metoda. Kao to je poznato, internet kao pojava nosi veliki broj informacije za iroku primenu u raznim segmentima poslovanja. Sve informacije moraju biti smetene najee fiziki ali kako se infrastruktura globalne mree svakodnevno iri i doivljava ekspanziju, podaci se, sve ee uvaju i u elektronskom obliku uz pomo baza podataka. U vezi sa tim, ljudska populacija mora da se opismeni i prihvati Internet kao globalnu mreu i kao svakodnevicu, naravno uz potovanje odreenih zakona i administrativnih procedura. Globalna mrea u dananje vreme polako prevazilazi samu sebe takoto tako to postaje zasiena mnogobrojnim mogunostima zarade i trgovine, to je i paradoks, jer je i sama ideja postojanja Interneta bila da se olakaju transakcije novanih sredstava i pojednostave i poboljaju komercijalne potrebe. Naravno da globalna mrea ima jo mnotvo drugih mogunosti i donosi pozitivan ton novim poslovima i omoguava dobitke kako velikim kompanijama tako i korisnicima kao jedinkama. Sa druge strane ima i mnotvo nepravilnosti i zloupotreba i moe napraviti pravne i ekonomske probleme firmama i zadati glavobolju obinom korisniku. Kako se Internet iri i popunjava novim korisnicima, tako se javljaju novi programi za rad i edukaciju, ali i mogunosti predstavljanja samih firmi i pojedinaca na istom. Samo poveanje uslovljava automatski i proirivanje samih firmi i pojedinaca na istom. Samo poveanje uslovljava automatski i proirivanje dosadanje infrastrukture to je povezano sa bazama podataka, jer se i sama baza podataka moraju proirivati i menjati, tj. postajati fleksibilnije i dinaminije kako bi mogle da odgovore svim upitima koje postavljaju korisnici. Kako bi se prodajna mrea i distribucija razvila itavom planetom, tako postojanje i izrada sajtova dobijaju na teini i funkcionalnosti ali bez primene baze podataka sajtovi bi izgledali na putujue slike koje bi kruile Internetom. Primene baze podataka je obavezna ako elimo da ostvarimo konkurentnost u odnosu na druge, na Internetu, tanije globalnom mega marketu. Prednost ostvarujemo u dinamici mislei na brzinu odgovora na upit korisnika, a fleksibilnost, da se sa jednog mesta prilagodimo korisniku i njegovim prohtevima kao poslodavac i obezbedimo sigurnosti kako bi korisnik imao oseaj da su mu zatieni integritet i identitet, to je i najbitnija stavka u svetu poslovanja u elektronskom biznisu. Rad se bavi izradom sajta za prodaju knjiga e elektronskom formatu i pratee baze podataka na kojoj su smetene knjige. Projekat E-book store u sebi sadri opciju ne samo dostavljanja knjiga, jer je ta opcija postala ustaljena na mnogim sajtovima konkurencijske prodaje, ve i da kupac moe preuzeti sadraj knjige koju pupuje u elektronskoj formi. Kao to je na poetku uvoda navedeno, Internet i samo postojanje informacionih tehnologija omoguavaju korisnicima da sve to ima je potrebno za rad ne nose fiziki sa sobom, nego da jednostavno, za sve svoje potrebe se obrate odreenom sajtu. Tome u prilogu idu i nove tehnologije TFT i Plazma monitori, koji funkcionalnost i operativnost omoguavaju dodirom na sam ekran i time ostvaruju veliku lepezu opcija. Zamislimo, da klijent sa druge strane zemljine lopte eli da kupi odreenu knjigu i nae je na sajtu. Postavlja se pitanje koliko dugo treba da eka na isporuku. Odgovor na to pitanje je, otprilike nedelju dana. Ali ako je mogue da pri kupovini knjige korisnik ima mogunost da skine sadraj u elektronskoj formi, automatski firma postaje ekspeditivinija od svojih konkurenata. Ne treba zaboraviti da je korienje knjiga kako strunih tako i knjievnih u velikoj ekspanziji, kako kod mladih tako i kod starijih osoba. Time u prilog ide ideja o pravljenju sajta koji e omoguiti korisnicima da se jednostavno registruju, pristupe sajtu sa svojim korisnikim imenom i lozinkom i izborom knjige stavivi je u korpu, klikom na dugme, plate. U sledeem trenutku imaju opciju da izvre preuzimanje knjige na vlastiti raunar ili neki ureaj i tada knjiga postaje njihovo vlasnitvo, uz obavezno potovanje autorskih prava i zakonskih regulativa.
2
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
1. Primena baze podataka u elektronskoj prodaji knjiga Nastankom marketinga i komercijalne prodaje na Internetu, doli smo do pojave elektronskog poslovanja. Sama pojava elektronskog poslovanja veoma brzo je zaivela u zemljama, koje su imale ureen pravni sistem. Od tada se velika panja daje bezbednosti podataka kojimoraju biti smeteni u prvom trenutku na nekoj odreenoj bazi podataka, a potom se distribuiraju. Vrativi se u prolost, svaka odtampana knjiga da vi doivela sudbinu da je neko kupi, morala je biti izloena u vitrini ili izlogu nekog duana. Prodaja knjige bi trajala danima, a ponekad i nedeljama, da vi se saznalo da je ta knjiga uopte i odtampana i putena u prodaju. Marketing je bio dosta teak sve do pojave radija ili putem televizije. I onda bi korisnikbi doao i kupio knjigu, ali ta ako je ta knjiga odtampana i putena u prodaju u samo jednoj zemlji. Korisniku koji bi trebao da pree okean i jo par zemalja kako bi je kupio. Putovao bi nedeljama a nekada i vie, ali pojavom prevoznih sredstava ili aviona put bi ubrzao. To opet ne bi bilo dovoljno brzo, jer i u ovom sluaju bi morao ili da saeka isporuku ili da izae iz svog doma i krene na puteestvija. Postoji mogunost da saeka da se knjiga pojavi i u njegovom komiluku, ali re saeka objanjava, da knjigu opet mne moe da dobije istog momenta. Nastankom sajta i baze podataka koja opsluuje sajt za elektronsku prodaju knjiga, prebacivanje knjiga iz fizikog oblika u elektronski i smetanjem knjiga u bazu podataka, dobija se na ekspeditivnosti. Na taj nain baze podataka su postale toliko mone da mogu u sebi da nose informacije o autori, ime knjige, ceni, jer knjiga e elektronskoj formi moe da se kopira i proda i na hiljade puta, a da pri tom, kada korisnik izabere i plati knjigu moe je preuzeti istog trenutka, proitati je kod kue ili parku ili poslu ili bilo gde na planeti zemlji samo pod uslovom da ima konekciju ka internetu. Problem konekcije je prevazien u velikom broju sluajeva, sa uvoenjem beinog ili satelitskog interneta uz korienje odreenih ureaja koji to i podravaju. Samim tim, sajt za elektronsku prodaju knjiga postaje konkurentan i uz pomo baze podataka na kojoj se uvaju svi podaci vezani za prodaju knjiga, spisak svih lanova sajta, podaci o karticama kojima se moe izvriti plaanje, podaci o naruenim ili preuzetim knjigama i podaci o novanim transakcijama koje su ostvarene na samom sajtu. Isto tako, baza podataka se koristi i za pretragu knjiga kako bi korisniku omoguila da lake i bre doe do knjige koju eli da ima u svojoj digitalnoj biblioteci. Uloga baze podataka je velika, to se moe videti, da se sa svim ovim podacima moe manipulisati, odraivati, podnositi izvetaj ako to menadment kompanije trai. Podaci se mogu lako aurirati ili brisati po potrebi, a da pri tom se po zahtevu uklone iz svih tabela ili da se ostave ukoliko je potrebno, da se cela funkcionalnost sajta i dinamika korienja baze podataka ne menja. Mogui problemi o kojima treba da se vodi rauna pre modelovanja i projektovanja baze podataka su: 1.1 Arhitektura baze podataka organizovanost relacionih tabela i podataka u njima, u odnosu na potrebe sajta i zastupljenost podataka koji su postavljeni. 1.2 Komunikacija baze podataka i sajta korienjem drajvera, SQL upita i logikog sloja pisanog programskim jezikom C#. 3
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
1.1 Arhitektura baze podataka Arhitektura baze podataka je najvaniji deo izrade Web aplikacije ili bilo koje aplikacije koja se koristi za izradu baze podataka. Internet tehnologije slue za olakanje deljenja podataka i informacija. Svi podaci su smeteni u bazu podataka. Dobro modelovana baza podataka e omoguiti korisniku pojednostavljenje problema i posmatranje samo sa stanovita bitnih za ciljeve analize. Na sajtu prodaju knjiga, glavni cilj je prezentovanje knjiga i navesti korisnika da kupi knjigu kako vi se ostvario profit za firmu. Knjiga kao objekta posmatranja, moe imati vie osobina ili atributa od kojih u datom trenutku analize moe biti dovoljan samo manji broj, kao na primer, autor knjige, ime knjige, opis knjige, slika knjige, cena knjige. ovek kao jedinka, obdaren sposobnostima apstraktnog naina miljenja i shvatanja, stvara jedan svet apstraktnog modela realnog sveta. Da bi pristupili modelovanju baze podataka moramo raditi paralelno sa analizom potreba sajta i korisnika koji e pristupati slamamo sajtu. Model ini osnovu za osmiljavanje, definisanje i implementaciju baze podataka. Kako se informacije prikupljaju, objekti se identifikuju, dodeljuju im se imena korienjem termina bliskim korisnicima. Dijagram arhitekture se moe pregledati od strane dizajnera i krajnjeg korisnika da bi se osigurala njegova kompletnost i tanost. Ako kojim sluajem model nije dobro napravljen on se moe modifikovati jer je lake to uraditi preko dijagrama nego ve implementiranu bazu podataka prepravljati. To moe zadati velike potekoe. Zbog toga proces arhitekture i modelovanje baze podataka traje 70% (sedamdeset posto) vremena, a nekada i vie, od celokupnog proces projektovanja i implementiranja baze podataka. Ciklus pregledanja i modifikovanja treba da traje sve dok se ne dobije potvrda da je model korektan. Objekti iz realnog vreme se opisuju u raunarskoj primeni kao podaci. Zato se kae da su podaci apstrakcija relanosti. Modelovanje, kao postupak kojim se realni svet prevodi u odreeni broj podatak, predstavlja veoma kompleksan posao i sastoji se od nekoliko koraka, kao to su izbor, imenovanje i klasifikacija. Ovako navedeni koraci zovu se konceptualni modeli. Ispitivanjem se dolo do podataka da svaki model podataka ima tri neodvojive komponente, a to su struktura podataka, operacija nad podacima i ogranienja. Modeli koji se koriste u izradi baze podataka vezane za sajt elektronske prodaje knjiga je objektno orjentisani model. Bazira se na konceptu objekata koji predstavljaju skup podataka i operacija koje se na njima mogu izvriti. U objektno orjentisanom modelu podataka svaki objekat se moe predstaviti klasom. Klasa obuhvata atribute i ponaanje entiteta. Direktna veza izmeu objekata u Web aplikaciji i objekata u bazi podataka daje za rezultat bolje performanse baze podataka i samog upita. U objektno orjentisanom model, informacije je sauvana kao stalni objekta, a ne kao red u tabeli. Ovo sistem ini efikasnijim kako je gore prethodno navedeno, u smislu prostora potrebnog za uvanje i smetanje podataka. To osigurava da korisnik ili administrator ureuje podatke, manipuliu istim, kao i brzinu u dobijanju odgovora na upite, ali samo na onakav nain na koji je programer ili administrator baze podataka ili administrator sajta odredio. Postoje i relacije izmeu objekta koji su korieni u izradi baze podataka vezane za Web aplikaciju elektronske prodaje knjiga, a one su 1:1, 1:N i N:M. veze postoje jer objekti nisu meusobno izolovani nego se nalaze u interakciji. U modelu podatak ne postoje samo atributi objekata ve postoje i 4
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA njihove veze. Prvo se selektuju objekti, imenuju se, a zatim se analiziraju tipovi odnosa koji se uspostavljaju izmeu objekata. Odnosi izmeu objekata posmatranja, prikazuju se naee primenom logikih skupova i preslikavanjem elemenata. Primena podatak ili informacija iz baze podataka na sajt za elektronsku prodaju knjiga, je bitan raf u celokupnoj izradi same Web aplikacije. Veoma je bitno da se podaci, koji se upitima povlae iz baze podataka, budu smeteni na pravo mesto na stranici sajta, kako bi vizuelnim delom omoguili korisniku veu funkcionalnost i operisanje samim sajtom. Najvanije je da korisnik pravovremenom sazna odreene informacije zbog kojih je i postavio upit. Ovaj deo posla je usko struno vezan za pravila dizajniranja Web stanice, jer time moramo voditi rauna o nekolicini segmenata, kao to su izgled strani ali ne samo statiki, nego i dinamiki jer kada korisnik izvri pritisak na odreeno dugme, alje se upit u bazu podataka, baza podataka izvrava upit i putem izvetaja obavetava korisnika. Bitno je, da taj izvetaj bude vidljiv i dizajniranokorektan kako bi korisnik prihvatio sajt kao privlaan, zadrao se dugo ili vratio po drugi put na njega, ali i ostvario novanu transakciji, to je i sama ideja elektronskog poslovanja.
1.2 Komunikacije baze podataka i sajta Komunikacije baze podatak i sajta za elektronsku prodaju knjiga je od velike vanosti jer se sam sajt zasniva na dinaminosti i efikasnosti, to bez upotrebe baze podatak ne bi bilo mogue. Komunikacija se ostvaruje preko ODBC drajvera koji slui da poveu hardverski server na kome se nalazi sajt i bazu podataka. Izvravanje povezanosti u softverskom domenu se ostvaruje putem SQL upita koji su upisani u delove koda C# jezika. Za odreene objekte imamo metode koji slue da se izvri konekcija sa bazom podataka, ili da se konekcija prekine. Uspostavljanjem konekcije se otvara mogunost za nove zahteve, a samim tim i u logikom sloju C# programskog jezika, za nove metode vezane za odreene upite i izvetaje. Tako da, ako korisnik eli da vidi odreeni podatak iz baze podataka, kao na primer informacije o nekoj knjizi, pritiskom na sliku knjige aktivira prvo konekciju, a zatim izvrava upit u bazu podataka. Baza podataka prosleuje izvetaj koji posebnom metodom i delom koda se izvrava na samoj Web stranici. Tekst se ispsuje na Web stranici. Dizajn i font teksta je odreen u viem sloju Web aplikacije uz upotrebu HTML i CSS jezika.
2. Relacija baze podataka na sajtu E-book store Za relaciju baze podataka koristi se Microsoft tehnologija, a za modelovanje i projektovanje baze podataka Microsoft Access iz paketa Office 2007. Prvi korak za realizaciju i povezivanje sajta i baze podatak je izrada Web aplikacije u Microsoft Visual studio 2008 i konekcija driver ODBC koji je ve instaliran pri projektovanu servera ASP.NET. kompletan kod je raen u C# programskom jeziku i on simulira logiki sloj Web aplikacije. U tom kodu su metode za konekciju sa bazom podataka, upitima, izvetajima i prekidima konekcije.
5
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA Mode ov je baze podatak je zahtevalo ob jektno or jentisani model. Ob jektno or jentisani model je jedan od na jnovi jih model baze podatak. Istraivai s za n je a postali zainteresovani kra jem 70-tih godina i poetkom 80-tih godina prolog veka i tada je zaiveo uz podrku programskih jezika. Bazira se na skupu ob jekata i operaci ja ko je se na n jemu mogu izvriti. Ba to je omoguilo da se pro jektu je baza podataka i da u n jo j budu smeteni svi ob jekti ko ji su potrebni za funkcionalnost samog sa jta za elektronsku proda ju kn jiga. To zahteva da se pre samog modelovan ja baze podataka donese odluka, za jednu vrstu ispitivan ja, kako bi se dolo do informaci je potrebnih kako sa jt uoptetreba da izgleda i bude vidl jiv na Internetu. Ispitivan ja i istraivan ja pre samog poetka i pisan ja programskog koda su na jbitni ja jer je jednostavni je ispraviti greke ko je se naprave u procesumodelovan ja i pro jektovan ja, nego kada se kod ve napie. To zna da zada velike glavobol je timu pro jektanata, a kamoli po jedincu.
¡
¢
¤
£
U toku ispitivan ja je vreno poreivan je ideje vezane za proda ju kn jiga elektronskim putem i dostavl jan je istih. Dolo se do saznan ja, da se ideja elektronske proda je kn jiga visoko kotira na Internet tritu. Ta j prvi korak je bitan, jer morate imati saznan ja da li je ideja uspena i materi jalno isplativa.
2.
¥
Pr c ¦
§
¨
mod lovanja baze podataka §
Proces modelovan ja baze podatak je veoma sloen. Proces izisku je minimum sedamdeset posto ukupnog vremena, ko je je potrebno koristiti u realizaci ji i implementaci ji Web aplikaci je. Veoma je bitno da se ima ju sve informaci je vezane za zahtev kli jenata jer dodano modelovan je baze podatak moe predstavl jati veliki problem ako je potrebno uklan jati odreene relacione tabele. U procesu izrade baze podataka je korien alatAccess iz Office paketa verzi je 2007. Microsoft je napravio jednostavan koncept funkcionalnosti za povezivan je baze podataka i sa jta ko ji je pisan C# kodu, koristei alat Visual Studio 2008. Prvi problem sa ko jim se susreemo, je da se mora ju imati sve informaci je o lanovima ko ji e biti registrovani na sa jtu. Problem je razreen tako to je pro jektovan ob jektno or jentisani modle baze podataka sa tabelom members (lanovi) . Prikaz slike 1. Tabele lanovi, vizuelno govori o ob jektu lanovi i n jegovim metodama, ko ji su uneti u kolone tabele sa podeenim parametrima.
Slika 1. Tabela members (lanovi)
6
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Kao to se vidi iz priloenog, slika 1. Tabela members, kao objekat ima nekoliko atributa koji ga opsuju. Atribut objekta members je member_id, koji je podeen kao AutoNumber. To je opis samog atributa, jer e svaki novi uneti korisnik dobiti identifikacioni broj prvi sledei u nizu i time e se izbei mogunost duplikata identifikujueg broja korisnika, to je veoma bitno, tako da svaki korisnik e biti smeten u bazu podataka pod odreenim i jedinstvenim borjem. Poto su pomenute rei jedinstvenim brojem, automatski taj atribut e posluiti i dobiti jo jednu funkcionalnost a to je da postane primarni klju. Ostali atributi e biti upotrebljeni, kako bi svakog korisnika kako objekta ili kao virtualni podatak opisali sa to vie informacija, kako bi potrebne informacije muterija ostavi prilikom registracije, time bi imali to bolji uvid o svakom pojedinom korisniku kao potencijalnom muteriji. Polje index parametra atributa member_id je podeeno opcijom Yes (No Duplicate), to opisuje, da taj atribut koji opisuje svaki objekat ponaosob, nee moi da se duplira pri unosu i bie jedinstven. To je jedna od predradnji, da vi u relaciji sa drugim relacionim objektno orjentisanim tabelama omoguili da korisnik uvek ostane jedinstven. Sledei zahtev je da nai korisnici koji bi se registrovali na sajt elektronske prodaje knjiga, mogu da izvre i neke porudbine. Slika 1.2 koja sledi opisuje tabele members i orders i njihova meusobnu relaciju.
7
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 1.1. Relacioni model veze izmeu objekata Members i Orders (lanovi i porudbine)
Relaci ja izmeu tabela members i orders pokazu je da se radi o 1 n relaci ji, gde je tabela members glavna tabela, t j. glavni ob jekat. Time se postie postavl jan je spol jn jeg kl jua u tabeli orders, a to je atribut member _id. To e omoguiti ob jektu members da porui vie kn jiga po potrebi ako to eli. Kod ob jekata orders je jasno da ga opisu je nekoliko atributa, od ko jih je na jvani ji jedinstveni atribut order _id, ko jem je podeen parametar Yes (No Duplicat), to ga ini jedinstvenim i tako simulira primarni kl ju. ©
8
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 1.2. Tabela orders (porudbine)
Ono to je bitno je, podeavan je parametara jednog atributa ob jekta orders a to je member _id.
Slika 1.3. Tabela orders i atribut member_id (porudbine i atribut korisnik id)
Gore napomenuti spol jni kl ju member _id je atribut ko ji opisu je ob jekat orders i ko ji ini vezu sa ob jektom members. Da bi relaci ja bila korektna, opis atributa member _id iz tabele member je AutoNumber. Kako bi spol jni kl ju member _id u tabeli ordes bio funkcionalan, potrebno je da n jegov opis bude Number, jer e time podravati upis svakog korisnika kao ob jekta u tabelu orders. Jedinstveni bro j iz tabele members e biti upisan, zato to opis atributa member _id u tabeli orders bitno je pol je inde , ko je da je informaci ju da posto ji mogunost duplikata kako bi porudbina korisnika bila mogua i ako se posle jedne konekci je vrati, ponovi proces, za novu porudbinu.
9
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA Zbog potreba za ubacivan jem ob jekta items, to u prevodu znai stavka ili artikal, napravl jena je tabela items. Poto pravimo Web aplikaci ju ko ja se bavi proda jom kn jiga, mora ju se smestiti sve kn jige ko je se mogu ponuditi korisnicima sa jta, tani je kupcima. Ovde se javio problem sa atributima ko ji opisu ju ob jekat, jer morao se nai nain ko ji bi bio adekvatan da se kn jigakao artikal opie sa svim elementima ko je korisnik zahteva. Ono to je olakalo ispitivan je opisa ob jekta je to da se u prvi mah stave opisi vezani za na jbitni je informaci je, kao naprimer, autor kn jige, ime kn jige, cena, slika kn jige, opis i kako je rangirana kn jiga na sa jtu od strane korisnika. Time bi se stvorila slika i marketinkom pogledu, da li je kn jiga rangirana kao top naslov ili ako ni je prihvaena od strane italaca, kako bi bila uklon jena iz reklamne ponude sa prve stranice sa jta. Time bi se postigao bol ji marketinki funkcionalan dinamian sa jt, prihvatl jiv od strane korisnika.
Slika 1.4. Tabela items (stavke ili artikli)
Kao to se vidi iz priloenog, slika 1.4, ob jekat items je opisan sa svim potrebnim atributima poevi od item _id ko ji ima funkci ju primarnog kl jua, a parametrom podeen na Yes (No Duplicate) i ini ga jedinstvenim. Ovo je bitno jer ne bi bilo dobro da se po javi ista kn jiga na dva razliita mesta u ob jektu items i time napravi problem kako administraci ji sa jta tako i raunovodstvu. To moe izazvati ozbil jne finansi jske probleme. Atributi redom opisu ju kategori ju odreene kn jige ili anra, to je opisano u sledeo j tabeli categories. Ideja je da sa jt ima pretragu ime bi se olakao upit iz logikog slo ja programsko j jezika C# i tako odreenom anru ili kategori je dodelio identifikacioni bro j. Atribut name i Author ima ju funkcionalnost opisa kn jiga. Ob jekat items u ovom slua ju da je informaci ju ko ja kn jigu napisao i ko je ime nosi kn jiga. Isto vai i za atribut Price u ko jem administrator ostavl ja cenu kn jige ko ju su mu prosledili iz menadmenta firme. Menadmentu e biti omogueno, da jednostavnim putem izvrava ju korekci je cena kako bi rasteretili administratora od dodatnog posla, pristupom na sa jtu uz korien je odreenog korisnikog imena i lozinke. Notes ima ulogu da kao kontejner tekstualnog fa jla omogui unos teksta i opisan je kao atribut sa memo opci jom. Uloga mu je da sadri
10
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA kn jige u kratkim crtama prenese kao informaci ju korisnicima na sa jt i time privue pan ju ili omogui im laki odabir kn jiga. Atribut image_url je opisan kao tekst pol je, ko je slui da prihvati tekstualnu informaci ju u bazu podataka. To u prvom trenutku i radi, ali u samom logikom delu koda C# programskog jezika, posto ji mogunost da informaci ju ko ja se upitom povlai iz baze podataka i ko ja je tekstualnog tipa, prosledi do izvornih fa jlova- slika ili images-a, ko ji se nalaze u odreenom podfolderu. Podfolder je deo foldera Web aplikaci je. Time e se na sa jtu predstaviti slike, naslovne strane ili korice neke kn jige ko je su smetene u podfolderu Images.
Slika 1.5. Tabela items (stavke ili artikli)
Slika 1.5 predstavl ja pogled na ob jekat items i na atribute ko ji ga opisu ju kao i jedan unos imena, autora, cena i putan je do odgovara jueg izvornog fa jla slike. Vidi se da je uspostavl jena relaci ja i funkcionalnost korektna. Sa slike 1.5. se vidi identifiku jui bro jevi porudbina, identifiku jui bro jevi korisnika i koliina kn jiga ko ja je poruena. Da bi korisnik imao laku mogunost pretrage modelovan je ob jekat categories ko ji je opisan sa atributima category _id i name.
11
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 1.6. Relacioni model objekta categories (kategorije ili anrovi) i relacija sa objektima Orders, Items, Members
Otvorena je mogunost da se odreene kn jige veu za neku od kategori ja i time se olaka pretraga kn jiga, kako korisnik ne bi morao da kuca taan naslov kn jige u pol ju za pretragu, ve mu je omogueno da izabere odgovara juu kategori ju ili anr ime bi olakao bri pristup do el jene kn jige. relaci jom je omogueno da tabela categories bude glavna u odnosu na tabelu items i time se dobi ja mogunost da ob jekat categories bude vezan za vie razliitih kn jiga to je i cil j.
12
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 1.7. Tabela processor
Opisani atribut processor _id ob jekta processor, predstavl jen na slici 1.7., ima ulogu jedinstvenog primarnog kl jua i opisan je parametrom kao AutoNumber, to ga ini jedinstvenim. Ova tabela, tani je ob jekat processor, je vezan za banku i kreditni biro. Banka vri proveru stan ja kao i otvaran je novih rauna za korisnike. Kreditni biro ima ulogu supervizor pri svako j transakci ji jer proverava vrednost kreditnih i debitnih kartica. Zbog veze sa bankomi kreditnim biroom u tabeli processor se poval ju ju jo dva atributa ko ji opisu ju ob jekat, a to su, bank _id i member _id. Atribut bank _id je spol jni kl ju primarnog kl jua tabele bank i time omoguava da se izvrene transakci je memoriu u ob jekat processor. Atribut member _id omoguava da svaku novanu transakci ju vee za odreenog korisnika, tani je lana baze podataka kn jige.mdb, to je i predstavl jeno na slici 1.8.
13
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 1.8 Relacioni model baze sa bankom i kreditnim biroom
Cela baza podataka je modelovana tako to su jo j dodate jo dve tabele ko je nisu sa n jom fiziki vezane. N jihova funkcionalnost je osmil jena tako da u sebi nose informaci je o novitetima i odreenim kn jigama ko ji e se nai na popustu ili akci ji. Time e privui korisnika na povol jni ju ali dobru kupovinu.
Slika 1.9. Tabele editorials i editorials_categories
14
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA Ob jekat editorial _categories, ko ji je predstavl jen na slici 1.9, ima funkci ju da napravi kategori je akci jske proda jne ponude na sa jtu, tako da se korisnicima da do znan ja da posto je proda jne akci je i sniene cene. Ova j deo je bitan za marketing proda ju samog menadmenta sa jta. Atribut editorial _cat _id je primarni kl ju, ko ji omoguava da se za odreenu kategori ju ponude vee odgovara jui tekst. Tekst moe biti, na primer, mislei na aktuelne teme, na nove naslove, nedel jnu ponudu i slino. Ob jekat editorials ima funkcionalnost da prihvati unos marketing slube sa jta, za sve informaci je ko je ga opisu ju, naravno uz korien je atributa. Primarni kl ju je artical _id, ko jem je uloga da svaki artikal bude jedinstven, da ne bi dolo do dupliran ja istog na dva ili vie mesta u bazi podataka, to bi moglo da izazove probleme, mislei ako korisnik pokrene upit za neki naslov kn jige ko ja je na akci jsko j proda ji, izveta j iz baze podataka mogao bi da bude dupliran i da napravi konfuzno stan je kako kod korisnika tako i kod marketing slube firme. Atribut editorial _cat _id ima funkci ju spol jnog kl jua i pravi relaci ju izmeu ob jekata. Atributi artical _title i artical _desc ima ju funkci ju da prime tekstualne informaci je, ko je e biti prezentovane na sa jt u koloni ta se itai Novi naslovi. Ove informaci je e korisnik moi da vidi. Informaci je se mogu vrlo lako men jati i n jima se lako moe manipulisati jer se administriran je obavl ja ili iza baze podataka ili sa sa jta odgovara juim korisnikim nalogom. Jednostavan unos podataka ifunkcionalnost u tabele editorial _categories i editorials omoguava ju da se marketing sluba lako nosi sa svim problemima vezanim za povean je proda je kn jiga i omogui korisnicima povol jni je cene u odnosu na druge konkurentne sa jtove.
Slika 2. Tabela editorial_categories
Veza izmeu ob jekata editorials i editorial _categories je funkcionalna i korektna, prikazana je na slici 2. Ona pokazu je, na ko ji nain je vezan atribut editorial _cat _id sa atributima ob jekta editorials, ko ji u sebi nose opisne informaci je. Modelovan je baze podataka kao to se moe videti iz priloenog je kompleksan proces. Kada se uspostave relaci je izmeu ob jekata i kad se izvre unosi u pol ja n jihovih atributa, posto je veoma teko, a nekada skoro i nemogue, izvriti promene kompletne infrastrukture. U nekim slua jevim, mogue je ostvariti ubacivan je novih opisanih atributa kako bi se poveao bro j informaci ja potrebnih za odreenim ob jekat.
15
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 2.2. Relacioni model objektno orjentisane baze podatak knjige.mdb
Za implementaci ju baze podataka kn jige.mdb i relaci ju korien je alat Access database iz Microsoft Office 2007 paketa. Slike ko je su predstavl jene, su uz pomo printscrean-a iz Access database 2007 paketa, korien jem fa jla kn jige.mdb. Implementaci ja baze podataka na sa jt je proces ko ji zahteva hardversku vezu izmeu baze podataka i servera na kome e biti postavl jena Web aplikaci ja ko ja se pokree uz pomo servera ASP.NET. Web aplikaci je se implementira i postavl ja u rad preko ODBC driver-a. ODBC driver se moe koristiti za Microsoft proizvode i instaliran je uz sistem Windows7, kao podrka. Posto je jo i OLE DB driver-i, ko ji su implementirani u Microsoft pakete, ali oni nisu korieni ta konekci ju o ovom radu i ima ju istu ulogu kao i ODBC driver-i, ali sa malo razliku ju u funkcionalnosti.
3.
Proces konek cije baze podataka i sajta E-book store
Kako bi sa jt za elektronsku proda ju kn jiga zaiveo i bio implementiran u globalnu mreu, mora se pristupiti celokupnom modelovan ju procesa pravl jen ja sa jta i pisan ja programskog koda. Ova j proces se sasto ji od nekolicine stavki, ali na jvani ja stavka ko jom se bavi ova j rad je konekci ja izmeu baze podataka i Web servera na kome e se pokretati Web aplikaci ja. y y y y y y
Za povezivan je potrebni su: Driver ODBC Metodi ili funkci je u C# programskom jeziku S L- jezik upita Baza podataka kn jige.mdb ASP.NET
16
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 3. Use case dijagram
Kada kli jent otvori poetnu stranu, rada se uspostavl ja konekci ja Web aplikaci je i servera ali poto je sama aplikaci ja podrana od strane baze podataka, a veina podataka nalazi se na n jo j, tada se uspostavl ja i konekci ja izmeu baze podataka i servera preko ODBC driver-a. ODBC driver je standardni interf ejs za pristup S L bazama podataka ko ji je definisala kompani ja Microsoft. Definisan je u Windows 7 operativnom sistemu korien jem ODBC data Source Administrator alata. Pristup ovom alatu se sprovodi kroz Control Panel prozor u Windows operativnom sistemu.
Administrator doda je ODBC driver-e konfiguriui dra jvere da rade sa odreenom datotekom specifine baze podataka. U ovom radu povezu ju se baza podataka kn jige.mdb sa ODBC driver-om. Takvim pozivan jem se omoguava ju izvren ja S L naredbi, ko je preko upita, jer je S L jezik upita, omoguava ju korisniku da bude dinamiki usluen od strane Web aplikaci je E-book store ko ja je povezana sa bazom podataka kn jige.mdb.
S L (Stuctiured Query Language) je standardni relacioni upitnik jezik (ANSI American National Standards Institute - standard). Slui za kreiran je, organizaci ju i manipulaci ju podacima u relacionim bazama podataka. Danas je SQL ugraen u sve vodee SUBP SQL i uspeno primen jen u sistemima za upravl jan je bazom podataka kao to su MS Access. U terminologi ji SQL-a umesto po jma relaci je koristi se po jam tabele. Proces povezivan ja baze podataka kn jige.mdb i PDBC driver-a je jednostavan na operativnom sistemu Microsoft Windows 7.
17
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 3.1. Pokretanje O DBC driver-a
Kada se otvori Control Panel bira se opci ja Administrative tools. Ovde biramo opci ju Data Sources (ODBC) kao to se moe videti na slici 3.1. Otvorie se novi prozor u kome se bira opci ja MS Access Database i kao to se sa slike 3.1. moe uoiti da su u ovo j opci ji podrane ekstenzi je .mdb. takva ekstenzi ja je i potrebna za izvravan je pro jekta jer je baza podataka kn jige.mdb u isto j ekstenzi ji. Time je osigurano da e ODBC driver korektno izvriti povezivan je baze podataka kn jige.mdb i izvren je SQL naredbi. Pritiskom na dugme finish otvara se prozor u kome treba navesti putan ju do baze podataka kn jige.mdb.
18
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 3.2 Projektovanje ODBC driver-a
Kao to se moe videti sa slike 3.2, izborom opci je Select otvara se novi prozor Select Database. Prvo je potrebno izabrati na kom delu ili partici je se nalazi pro jekat. Poto se pro jekat nalazi na c parti jci hard disc-a, jednostavnim odabirom partici je i samog foldera u kome se nalazi baza podataka kn jige.mdb i odabirom ekstenzi je.mdb dolazimo do baze podataka n jige.mdb ko ju koristimo za izradu sa jta elektronske proda je kn jiga. Kada je driver ODBC podeen i korektno svetovan, trebalo je napraviti pro jekat sa jta za proda ju kn jiga. Poto se diplomski rad ne bavi pro jektovan jem sa jta kroz pisan je programskog koda u jeziku C#, ali Web aplikaci ja je morala biti napravl jena, kako bi gotov pro jekat u fizikom obliku mogao biti predstavl jen, a da je funkcionalno korektno uraena aplikaci ja, predstavl jen je deo procesa UML modelovan ja ko ji je prethodio izradi sa jta.
19
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA Slika 3.3, s poetka poglavl ja predstavl ja Use case di jagram, ko ji govori o tome ko je funkcionalnosti korisnika moe da koristi na sa jtu a da pri tom mora da bude ulogovan ili pravl jen, t j. prvo registrovan a potom dobi ja mogunost da se ulogu ju ili pri javi na odreene stranice. Kako bi se videle odreene aktivnosti ko je odreene stranice treba ju da prue korisniku predstavl jena su tri di jagrama aktivnosti.
Slika 3.3. Dijagrama aktivnosti pregleda knjiga na Home Page
Ukratko, korisnik moe imati izbor katalokog pregleda kn jiga. Ako bi odabrano ne, ostao bi na Home Page, poetno j stranici. Ali ako bi korisnik odabrao izbor kn jiga, imao bi opci ju da izborom anrova suzi selekci ju i jednostavni je nae odreenu kn jigu. Ova j korak je bitan jer ima veze sa pro jektovan jem baze podataka kn jige.mdb ko ja je ob jan jena u poglavl ju 3.2. Prisean ja radi, ob jekat categories iz baze podataka kn jige.mdb, upuu je na to da se vidi da e se na sa jtu po javiti ba te kategori je kn jiga iz baze podataka. Time se postie jedna funkcionalnost i dokaz da je dobro modelovana ob jektno or jentisana baza podataka veoma bitan raf u celokupnom procesu i radu Web aplikaci je. U nastavku aktivnosti vidi se da korisnik kada zavri pregled kataloga automatski se vraa na Home Page, poetnu stranicu. Ovu aktivnosti mogu da obave svi korisnici bilo da su registrovani ili ne. Sledea dva di jagrama aktivnosti, opisu ju situaci ji i mogunost akci je korisnika kao aktivnosti, ako je registrovan. Opci jom pri javl jivan ja, omogueno je da korisnik napravi oping korpu i da, kada se odlui, plati kn jige ko je je odabrao. 20
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 3.4. Dijagrama aktivnosti logovanje i korpa
Slika 3.5. Dijagramaktivnosti plaanje
21
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA to se tie dijagrama aktivnosti sa slika 3.4 i 3.5 oigledna je veza baze podataka knjige.mdb i sajta za prodaju knjiga, jer aktivnost logovanja je povezana sa objektima baze podataka knjige.mdb i sajta za prodaju knjiga, jer aktivnost logovanja je povezana sa objektima baze podataka members i preko SQL jezika se vri upit u bazu podataka da bi se dobile informacije da li je korisnik registrovan ili ne. Jer ako korisnik nije u objektu members u objektno orjentisanoj bazi podataka knjige.mdb, mora da izvri registraciju popunivi sva polja na stranici Registracija.aspx, a to su utvari atributi koji opisuju objekat members i koji se prosleuju bazi podataka. Svako polje se popunjava i to po principu kako je atribut opisan, tanije reeno, da li je polje tekstualnog, brojevog ili datumskog tipa. Dijagram aktivnosti koji opisuje aktivnosti korisnika koji je napravio korpu i sada eli da plati, kako bi doao do knjige koju je odabrao u katalogu. Veza sa bazom podataka knjige.mdb je u tome to se sada koriste relacije, tanije veze izmeu objekata members i card_type koji imaju funkciju da provere da li korisnik koji je ulogovan, plaa kreditnom ili debitnom karticom i da li je piritom takva kartica i vrsta novane transakcije, uopte podrana od firme, odnosno da li je firma uspostavila ugovor sa platnim prometom te vrste kartica. Druga veza se odnosi na objekte u bazi podataka, a to su, members i bank. Banka vri proveru da li korisnik ima uopte otvoren raun i da li ima dovoljno novanih sredstava da izvri novanu transakciju. Ako je korisnik uspeno obavio novanu transakciju i banka mu je skinula sredstva sa rauna, aktivira se objekat processor u bazi podataka knjige.mdb koji u sebi belei novanu transakciju i korisnika koji je u njoj uestvovao. Time se vidi da je prisustvo baze podataka njige.mdb koja je objektno orjentisano modelovana, bitno i obezbeuje funkcionalnost i dinaminost. Ostaje da se modeluje kompletan sajt za prodaju knjiga, kako bi se upiti korisnika i vizuelni prikaz odgovora, podstaknut dizajnom, izvravao u realnom vremenu. U procesu UML modelovanja sajta E-book store, korieni su dijagram sekvenci dijagrama komunikacije, dijagram stanja knjige, dijagram klasa, dijagram komponenti i dijagrama uvoenja ili hardverske implementacije.
22
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Sli
36
ij
s
!
n i "
Dijagram sekvenci prikazan na slici 3.6, sastoji se od uspravnih linija (Lifelines) koje predstavljaju objekte, dok linije izmeu, predstavljaju poruke radnje koje se odvijaju izmeu objekata. Radnje su poreane hronoloki. Dijagram sekvenci prikazuje objekte koji uestvuju u relaciji odreene radnje i akcije koje se deavaju. Odreen je dijagram sekvenci koji se odnosi na izbor knjiga. Poto se sajt Ebook store bavi prodajom knjiga, uzet je kao objekat knjiga ili kao je u bazi podataka njige.mdb objekat nazvan kao items.
23
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 3.6. Dijagrama stanja knjige
Kod di jagrama stan ja ko ji je predstavl jen na slici 3.6, jasno se vidi kroz ko ja sve stan ja prolazi ob jekat items-kn jiga. Lini je ko je ih povezu ju predstavl ja ju metode. Na prvi pogled delu je apstraktno, kada se pomisli u ko jim sve stan jima moe da se nae kn jiga, ali ako se posmatra, kako je rani je navedeno, kao ob jekat, jasno je da moe men jati stan ja u zavisnosti od potrebe same aplikaci je. Dal jim modelovan jem pomou UML dolo se do pro jektovan ja di jagrama klasa. Pro jektovan je sistema podrazumeva grafiko crtan je klasa, prikaz stan ja ob jekata, n jihove meusobne veze. Zavrni deo pro jektovan ja odnosi se na grafiko predstavl jan je, implementaci je hardvera, potrebnog za uspeno realizovan je samog sa jta E-book store kao i n jegovo uspeno funkcionisan je. Pro jektovan je sistema posto ji u cil ju olakavan ja posla programerima. Ideja je da programeri mehaniki kuca ju unapred priml jenkod. Kod diza jna klasa vrlo je bitno da se prekontroliu svi ob jekti, atributi i metode ko je treba da sadri sam pro jekat. Iz tih razloga je di jagrama klasa veoma koristan, jer se mnogo lake na di jagramu klasa mogu ispraviti greke nego kasni je u samom kodu. Di jagram klasa je predstavl jen na slici 3.7.
24
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 3.7. Dijagram klasa
Poto se ceo pro jekat sasto ji od tri slo ja, takav sistem modelovan ja sa naziva troslo jna arhitektura. Sasto ji se od slo ja baze podataka, aplikacionog slo ja i logikog slo ja.
Slika 3.8. Dijagram komponenti
Di jagram komponenti se prave da bi pokazali komponente ko je ine fiziku relaci ju sistema. Di jagram komponenti vezan za sa jt E-book store je predstavl jen na slici 3.8. 25
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 3.9 Dijagram uvoenja
Di jagram uvoen ja, predstavl jen na slici 3.9, na jslikoviti je ob jan java ko ji je to hardver potreban za implementaci ju i ko ji su sve to akteri ko ji se mogu javiti kao deo sistema. Takoe na slici 3.9 mogu se videti ko je sve vrste veza u smislu mrea podrava celokupan sistem. Navedeni di jagram predstavl ja osnovnu strukturu sistema. Sistem se sasto ji od servera baze na kome je smetena baza podataka, ko ja je LAN mreom povezana preko switch-a na Web serveru. Na hardversko j podlozi Web servera, smetena je aplikaci je ASP.NET ko ja proputa pakete preko porta 50265. Pristup korisnici mogu vriti preko adrese URL http://localhost:50265/uglednipro jekat. To je u jedno i ROOT URL samog pro jekta. Poto se poetna strana automatski pokree startovan jem ASP.NET servera,a stranica nosi ime U TRENDU t j. Home.aspx, kako je memorisan u alatu Visual Studio 2008, korisnici mogu pristupiti poetno j strani putem internet konekci je, GSM ili WiFi beine mree. Serveri su hardverski opreml jeni sa po 64Mb RAM memori je i sa procesorima sa etiri jezgra kako bi svaki zahtev bio razreen u realnom vremenu. Propusna mo kabla preko ko jeg korisnice vre konekci ju igra bitnu ulogu ali sa strane Web servera kome korisnici pristupa ju, jer sam optiki kabal na Web serveru kome korisnici pristupa ju, jer sam optiki kabal ima veliku propusnu mo i time omoguava transf er velikog bro ja paketa podataka u veoma kratkom vremenskom intervalu. Konekci ja sa strane korisnika ni je toliko bitna za rada same Web aplikaci je, ve je bitna da korisnik omogui tim putem sebi bri pristup, ali poto je sa jt E-book store ni je grafiki zahtevan, a poznato je da grafiki zahtevni sa jtovi trae da konekci je budu sa velikom propusnom moi, tako da otvaran je stranica sa jta E-book store i funkcionalnost istog ne zahteva ju odreenu niti specifinu vrstu konekci je od strane korisnika. Ovo je veoma bitan zahtev ko ji treba ispotovati, jer se time omoguava da svaki korisnik moe pristupiti sa jtu nezavisno kakvu konekci ju posedu je u zavisnosti od brzine i tipa. Server na kome se nalazi implementirana baza podataka kn jige.mdb je povezan putem internetkonekci je sa serverom banke i serverom baze kartica. Ob jan jen je sam pro jekci je sa jta za proda ju kn jiga tokom poglavl ja 2.2. i ob jan jen jem modelovan ja i pro jektovan ja baze podataka kn jige.mdb stie se slika o funkcionalnosti sa jta i n jegovo j kompleksnosti. Obradom koda pisanog u programskom jeziku C# se ni je bavilo u ovom radu, jer to ni je zadata tema.
26
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA Potrebno je ob jasniti konekci je i metode vezane za uspostavl jan je veze izmeu baze podatak kn jige.mdb i logikog slo ja Web aplikaci je E-book store.
Slika 4.0 Home Page
Slika 4.0 prikazu je poetnu stranu. Ovo je bitno da bi se videlo, kako bi se ulo u sr problema vezanog za konekci ju Web aplikaci je E-book store i baze podataka kn jige.mdb
27
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 4.1. Alat Visual Studio 2008
28
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA
Slika 4.2. Alat Visual Studi 2008 Projektovanje poetne strane
Slike 4.1. i 4.2. pokazu ju da e se na poetno j strani Home.aspx prikazivati informaci je iz baze podataka kn jige.mdb. oigledno je, u odnosu na poetnu stranu home page predstavl jenu na slici 4.1 i 4.2, da su mesta na ko jima pie DATABOUND, mesta na poetno j stranici Home.aspx gde e se informaci je iz baze podataka kn jige.mdb po javl jivati. Diza jnerski deo je uraen u HTML-u i CSS-u kako bi se korisniku pruile prave ali i vizuelne privlane informaci je.
Slika 4.3. Predstavljanje lokacije baze podataka knjige.mdb
29
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA Ovaj deo koda je putanja do baze podataka njige.mdb. kod koji je prikazan na slici 4.3. je bitan zbog mogunosti da se fiziki moe promeniti mesto bazi podataka ako je to potrebno. Tako da se otvara mogunost, da celokupnu Web aplikaciju E-book store sa bazom podataka knjige.mdb, premestimo na dugi raunar. I pri toj aktivnosti nee se izgubiti funkcionalnost sajta E-book store. Sledea slika 4.4. zajedno sa slikom 4.5. predstavlja uspostavljanje konekcije ODBC driver-a sa bazom podataka knjige.mdb public void DBOpen () { // uzmi apsloutnu putanju baze iz fajla Config.web string sConnectionString = System.ConfigurationSettings.AppSettings[sBook_StoreDBConnectionString] // otvori bazu korienjem OdbcConnection Connection = new OdbcConnection (sConnectionString) Connection.Open () }
#
#
#
Sli $
%
44
tod on $
(
&
'
to
$
(
)
%
nj s b o %
%
%
1
0
pod t %
$
$
%
%
nji 2
1
(
&
db
Konektovanje sa bazom podataka knjige.mdb kako je predstavljeno na slici 4.4. govori o metodu koji uspostavlja konekciju sa bazom podataka i ita gde se nalazi baza podataka, to je i predstavljeno u komentari na slici. Potom uzima ODBC driver, pravi novu instancu klase OdbcConnection i tada konstruktoru prosleuje parametre za uspostavljanje konekcije value, koji je predstavljen na slici 4.3. i sa funkcijom Connection.Open() otvara konekciju prema bazi podataka knjige.mdb. posle otvaranja konekcije stie se mogunost da se uspostavi korektna veza i svim funkcijama iz programskog jezika C# omogui normalan rad sa bazom podataka knjige.mdb u pogledu upita i povlaenja izvetaja. Bradom u logikom sloju Web aplikacije dolazi se do delova koda vezanih za relacione veze baze podataka knjige.mdb i programskog jezika C#. void Search_Show () { Utility.buildListBox (Search_category _id.Items, select category _id, name from categories order by 2, category _id, name, All, ) #
//Pretraga String s #
s = Utility.GetParam(category _id)
#
try { Search_category _id.SelectedIndex = Search_category _id.Items.Indexof(Search_category _id.Items.FindByValue(s)) } catch { } s = Utility.GetParam(name) Search_name.Text = s }
#
#
Sli
#
$
30
4 5 C# od p t $
%
3
&
&
(
3
%
2
(
po
4
%
no i 3
)
1
%
PRIRODNO MATEMATIKI FAKULTET KOSOVSKA MITROVICA Kod kojih je predstavljen na slici 4.5. opisuje metod Search_Show(). Metod slui da povue informaciju iz baze podataka njige.mdb vezane za izbor anrova odreene knjige. Upotrebom SQL-a omogueno je da se izvri upit u bazu podataka knjige.mdb na odreeni objekat categories i na njegove atribute koji ga opisuju. Tekst boks omoguava pretragu po kategoriji anra knjige, ali prua i mogunost pretrage i po imenu knjige. Prvenstveno je potrebno u primenjivi string s, smestiti naziv kategorije. Poto su svi anrovi smeteni u bazu podataka u atribut categor y _id, zbog toga je prosleena brojana vrednost iz atributa category _id kao parametar. GetParam() slui kao pomo da bi se dobila informacije da li postoji parametar u Quer yString-u, koji mu se prosleuje, kao na primer, category _id. Ako bi bio prosleen parametar koji ne postoji vratio bi prazan string. Povezanost svih elemenata informacionih tehnologija korienih za izradu Web aplikacije E-book store, za elektronsku prodaju knjiga, kao to se moglo videti iz celokupnog rada, pospeuje jednostavniju administraciju u odravanju sajta i mogunost da korisnici imaju lagodan odnos u interakciji sa samim sajtom.
31