Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%)
|
Witam, ostatnio postanowilem sie zajac cachowaniem zapytan z bd. I tak pomalutku stworzylem swoja klase do cachowania/odczytywania zapytan z PostgreSQL. Klasa po malych przerobkach bedzie dzialac rowniez z MySQL.
Na poczatek, co by nie byc posadzony o plagiat Na poczatek moze diagram mojego rozwiazania Diagram klas (uml znam slabo wiec pewnie sa bledy w diagramie jesli chodzi o oznaczenie relacji) Co do kodu to znajduje sie on tutaj: (podaje linki bo kodu jest za duzo na wklejanie) Klasa DB -glowna klasa bazy danych Db_result - abstrakcyjna klasa wyniku zapytania Db_Result_orig - wynik zapytania wykonanego z bazy Db_result_cache - wynik zapytania wykonanego z cachu (lub z bazy z pozniejszym cachowaniem) GenericException - Rozszerzenie klasy Exception o zapis wyjatkow do loga PGException - klasa wyjatku bazy danych Klasy dodatkowo korzystaja z kilku stalych (np. connection string, sciezka do katalogu z cachem itp), ktore trzymam w osobnym pliku -> gdyby ktos chcial przetestowac na zywo dzialanie klasy to trzeba odpowiednie pliki wygenerowac wraz ze stalymi. Najwazniejsze cechy moich klas to: - cachowanie zapytan do pliku tekstowego / odczytywanie zapytan z takiego cachu - system obslugi wyjatkow z zapisem bledow do logow - mozliwosc iterowania wyniku - zastsowany interfejs iteratora Jako ze jestem poczatkujacy prosze o ocene kazdego aspektu, ktory przyjdzie wam do glowy - poczynajac od kodu a na organizacji projektu konczac - kazda rada / wytkniecie bledu mile widziane. Przykladowe zastosowanie
Ten post edytował athabus 15.06.2006, 19:28:22 |
|
|
|
athabus [zestaw klas PHP5]Cachowanie zapytan db 15.06.2006, 18:55:09
dr_bonzo Przyklad uzycia jest lipny -- co bedzie jak nie po... 15.06.2006, 19:17:13
athabus Dodałem die() w razie bledu polaczenia. Faktycznie... 15.06.2006, 19:33:23
dr_bonzo CytatDodałem die() w razie bledu polaczenia
Tez zl... 15.06.2006, 20:25:19 
athabus Cytat(dr_bonzo @ 15.06.2006, 19:25 ) Tez ... 15.06.2006, 20:45:58
mariuszn3 Nie wiem jak jest z Postgre ale przecież w MySQL c... 16.06.2006, 12:41:57
ActivePlayer CytatPo co więc pisać w php klasę, która by przejm... 16.06.2006, 12:46:03
Cysiaczek Nie chcę przesadzić, ale muszę z wnioskiem formaln... 16.06.2006, 12:51:30
dr_bonzo CytatTu sie gdzies zgubilem - o jakich blokach mow... 16.06.2006, 14:00:17
athabus @Cysiaczek
Czy chodzi Ci o cos takiego?
[PHP] pobi... 16.06.2006, 14:52:34 
mariuszn3 Cytat(athabus @ 16.06.2006, 13:52 ) @mari... 16.06.2006, 17:28:15
ActivePlayer CytatPrzykładowo u mnie na Win XP PIV: pierwsze za... 16.06.2006, 18:21:23
athabus Zrobile maly test.
Wykonalem 1000 zapytan uzywaja... 16.06.2006, 18:22:18
ActivePlayer jesli chodzi o nawiązywanie połączenia... przeciez... 16.06.2006, 18:48:15
athabus To prawda, ale wyszedlem z zalozenia, ze jeszcze n... 16.06.2006, 19:20:01
mariuszn3 Zrobiłem parę testów na MySQL. Niestety ... 16.06.2006, 22:06:13
athabus mariuszn3Dzieki za przeprowadzenie testow. Mysle z... 16.06.2006, 22:56:00 
mariuszn3 Cytat(athabus @ 16.06.2006, 21:56 ) Teraz... 16.06.2006, 23:31:09
eai Nie szyfrujesz danych zapisanych w cache. Powinien... 11.08.2006, 13:50:24 
NuLL Cytat(eai @ 11.08.2006, 14:50:24 ) Ni... 6.10.2006, 00:37:47
pawel_ z tego co widze, to zapomniałeś o jednej małej rze... 14.08.2006, 15:45:10
alpin19 btw... UML jest baaardzo marny. Polecam szczegółow... 6.10.2006, 00:31:16 ![]() ![]() |
|
Aktualny czas: 20.08.2025 - 02:08 |