Đề tài Chương trình quản lý mua bán sách trên thiết bị di động

pdf 91 trang yendo 4260
Bạn đang xem 20 trang mẫu của tài liệu "Đề tài Chương trình quản lý mua bán sách trên thiết bị di động", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfde_tai_chuong_trinh_quan_ly_mua_ban_sach_tren_thiet_bi_di_do.pdf

Nội dung text: Đề tài Chương trình quản lý mua bán sách trên thiết bị di động

  1. Li C m Ơn Tr ưc h t chúng em xin chân thành c m ơn Quý th y cơ trong khoa Cơng Ngh Thơng Tin tr ưng Cao Đ ng Nguy n T t Thành đã t n tình giúp đ, d y d cho chúng em nhi u ki n th c b ích trong su t th i gian h c tr ưng c ũng nh ư đã t o đi u ki n cho chúng em đ ưc làm khĩa lu n này. Đc bi t chúng em xin g i l i c m ơn đ n th y Nguy n Duy Thái đã t n tình giúp đ chúng em trong su t th i gian làm khĩa lu n. Th y đã trang b cho chúng em k năng làm vi c và nh ng kinh nghi m quý báu sau nh ng l n g p khĩ khăn. Lu n văn c a chúng em s khĩ hồn thành n u khơng cĩ s giúp đ c a th y. Chúng con c ũng c m ơn cha m và gia đình luơn ng h , t o đi u ki n t t nh t cho chúng con trong vi c làm lu n văn này. Xin c m ơn các b n sinh vi ên CNTT khĩa 2005 đ ã giúp đ , đ ĩng gĩp cho chúng tơi nhi u ý ki n quý báu. Lu n v ă n đ ưc hồn thành v i m t k t qu nh t đ nh. Dù đ ã r t n l c, c g ng nh ưng ch c ch n s khơng tránh kh i sai sĩt. Chúng em r t mong đ ưc s c m thơng và s gĩp ý c a Quý th y cơ và các b n TP H Chí Minh, tháng 8 năm 2008 Nhĩm sinh viên th c hi n Võ Anh Văn – Võ Thanh Tùng
  2. Li Nĩi Đ u Ngày nay, đ i v i nhi u ng ưi s ng thành th thì nh ng thi t b di đ ng nh ư: đi n tho i đi đ ng, máy tính xách tay, máy nh n tin khơng cịn gì xa l . Các thi t b di đ ng này khơng ch đ ơn thu n ph c nh ng ch c năng thu n túy mà nĩ cịn là mt ph ươ ng ti n gi i trí, tra c u thơng tin, mua bán thơng qua m ng r t ti n l i. Do đĩ vi c xây d ng các ng d ng trên các thi t b này là m t yêu c u t t y u trong xu th hi n nay. Hai h ưng phát tri n trên thi t b di đ ng ph bi n hi n nay là ngơn ng C++ trên n n h đi u hành Symbian và J2ME. Các ng d ng đ ưc vi t trên n n Symbian cĩ các ưu th truy c p các tài nguyên c a đi n tho i c ũng nh ư h tr h th ng t p tin, th ư m c r t ti n l i. Tuy nhiên h đi u hành Symbian l i cĩ kích th ưc khá ln nên ch cĩ th ch y trên nh ng thi t b di đ ng t ươ ng đ i cao c p. H ơn n a vi c xây d ng ng d ng dùng Symbian API c ũng khá ph c t p. Đi l p v i Symbian API là cơng ngh J2ME v i kích th ưc nh g n, ti n dng, đ ưc h tr b i h u h t các thi t b di đ ng. Chúng ta cĩ th nĩi đ i t ưng ca ngơn ng J2ME là r ng h ơn r t nhi u so v i C++ trên n n Symbian. J2ME là m t ngơn ng nh , g n nh ưng r t ch t ch và d n m b t. Nĩ là ngơn ng đ ưc các t ch c mã ngu n m ng h m nh m và phát tri n nhanh chĩng. Th t khĩ so sánh gi a các dịng ngơn ng l p trình v i nhau vì m i lo i đ u cĩ ưu và khuy t đi m riêng. Trong lu n văn c a mình, chúng em ch n nghiên c u và vi t ch ươ ng trình ng d ng trên các thi t b di đ ng cĩ h tr J2ME s d ng h qu n tr c ơ s d li u Firebird, m t khác chúng em c ũng mu n th s c m t l ĩnh vc khá m i m là ti p c n v i ph n m m mã ngu n m . ng d ng mà chúng em ch n thc hi n trong khĩa lu n này là:“Ch ươ ng trình qu n lý vi c mua bán sách trên thi t b di đ ng ”. Đ i v i nh ng ng ưi dân trí th c đ c bi t là nh ng b n sinh viên thì vi c mua sách là chuy n r t bình th ưng Trang 1
  3. và d dàng. Hi n nay h th ng nhà sách đ ưc phân b r ng kh p. Tuy nhiên khi đã bưc vào cu c s ng cơng ngh thì m t câu h i đ t ra t i sao chúng ta khơng t n dng t i đa s c m nh c a cơng ngh . Ch ng h n vi c mua sách thay vì ph i m t cơng ra nhà sách ch n sách chúng ta cĩ th nhà mà v n ch n đ ưc sách và mua đưc cu n sách đúng nh ư mong mu n. Ch c n nhà chúng ta cĩ m t thi t b di đng h tr Internet. Vi c chuy n các ng d ng th ươ ng m i t mơi tr ưng web sang mơi tr ưng các thi t b di đ ng nh g n s khi n s ti n d ng tăng cao, s ng ưi s d ng d ch v tr c tuy n ch c ch n s tăng nhanh vì đi v i nhi u ng ưi các thi t b di đ ng r t ti n l i và d s d ng h ơn r t nhi u so v i chi c máy tính “ph c t p và khĩ hi u”. Khi nĩi đ n l p trình cho các thi t b di đ ng, chúng ta đ u hình dung đưc hai tr ng i l n. Th nh t, đĩ là năng l c c a b vi x lý trên đi n tho i r t y u và th hai, đĩ là dung l ưng c a b nh r t nh . Điu này gây tr ng i khơng nh đ n vi c t ch c d li u cho ph n m m, b i l m t c a hi u bán sách thì cĩ r t nhi u lo i sách và các đ u sách. Chúng ta khơng th nào t i h t lên thi t b di đ ng đ ưc. Ngồi ra, các h n ch c a các thi t b di đ ng c ũng bu c ng ưi l p trình ph i ch n gi i thu t th t hi u qu và ph i luơn tính tốn nh m t i ưu hĩa ch ươ ng trình. M t khác, đ i v i ng ưi l p trình, s h n ch c a th ư vi n hàm trong ngơn ng Java đưc h tr cho các thi t b di đ ng là m t v n đ khơng d gi i quyt. Nh ng h n ch đã nêu th t s là m t thách th c l n mà đ tài b t bu c ph i v ưt qua. Vì m t s đi u ki n đ c bi t c a các thi t b di đ ng, nên hi n nay ng d ng này ch ch y trên ch ươ ng trình gi l p. Tuy nhiên, chúng em hy v ng trong t ươ ng lai g n ng d ng này s đ ưc ng d ng trên thi t b di đ ng c th và cĩ th ng dng vào th c ti n. Vi vi c xây d ng thành cơng ng d ng này chúng tơi hy v ng trong m t tươ ng lai khơng xa nĩ s đ ưc phát tri n thành các ng d ng cho vi c mua bán trong các h th ng siêu th , đ t vé máy tàu h a, đ t vé máy bay qua các thi t b di Trang 2
  4. đng nh g n. nh ng thi t b này s tr thành m t cơng c giao d ch khơng th thi u trong th i đ i m i, th i đ i c a th ươ ng m i đi n t tồn c u. Trang 3
  5. MỤC L ỤC Li nĩi đ u 1 Ch ươ ng 1: T ng quan v l p trình trên thi t b di đ ng 4 1.1 Đơi nét v th tr ưng thi t b di đ ng Vi t Nam 4 1.2 Lp trình trên thi t b đ ng s d ng j2me 4 1.3 Mt s cơng c h tr j2me 6 Ch ươ ng 2: Khái quát v j2me, j2ee, MVC, JSP, Servlet và h qu n tr CSDL FireBird 9 2.1 Gi i thi u j2me 9 2.1.1 Khái ni m j2me 9 2.1.2 Ki n trúc j2me 9 2.2 Gi i thi u j2ee 12 2.2.1 Khái ni m j2ee 12 2.2.2 Ki n trúc j2ee 13 2.3 C ơ ch giao ti p j2me và j2ee 14 2.4 Gi i thi u mơ hình MVC 14 2.5 Gi i thi u v JSP 15 2.5.1 Khái ni m 15 2.5.2 Mơ hình ho t đ ng c a JSP 15 2.6 Gi i thi u v Servlet 16 2.6.1 Khái ni m 16 2.6.2 Đ c đi m c a Servlet 16 2.7 Gi i thi u h qu n tr CSDL FireBird 16 2.7.1. Khái ni m 16 2.7.2. Lý do dùng h qu n tr CSDL Firebird 16 Ch ươ ng 3: Phân tích thi t k ng d ng 18 3.1 Kh o sát hi n tr ng 18 3.2 Quy trình nghi p v mua bán sách 18 3.2.1 Trên server 18 3.2.2 Trên Client di đ ng 19 3.3 Phân tích và xác đ nh yêu c u 19 3.3.1 Danh sách các yêu c u nghi p v 19 3.3.2 Các yêu c u phi ch c năng 21 3.4 Thi t k ng d ng 22 3.4.1 S ơ đ Use Case t ng th 22 3.4.2 S ơ đ Use Case cho t ng actor 23 3.4.3 Đ c t m t s Use Case tiêu bi u 25 3.4.4 Thi t k c ơ s d li u 35 Ch ươ ng 4: Th nghi m, cài đ t và h ưng d n s d ng 50 4.1 Cài đ t ch ươ ng trình (webserver) 50 4.2 Hưng d n s d ng webserver 52 4.3 H ưng d n s d ng J2ME 61
  6. Ch ươ ng 5: T ng k t, đ ánh giá, h ưng phát tri n 71 5.1 M t s k t qu đ t đ ưc 71 5.2 M t s h n ch 71 5.3 Đ ánh giá k t qu 72 5.3.1 Ch ươ ng trình ch y trên Server 72 5.3.1 Ch ươ ng trình ch y trên Client 72 5.4 H ưng phát tri n 73 Danh m c tài li u tham kh o 75 Ph l c 76 Hưng d n cài đ t J2ME Wireless Toolkit 2.5 76
  7. Nh n xét c a giáo viên h ưng d n TpHCM, ngày tháng năm Giáo viên h ưng d n [Ký và ghi rõ h tên]
  8. Các ch cái, thu t ng đ ưc s d ng API Application Program Interface CDC Connected Device Configuation CLDC Connected Limited Device Configuation GCF General Connection Framework J2EE Java 2 Enterpise Edition J2ME Java 2 Micro Edition J2SE Java 2 Standard Edition JDK Java Development Process JSR Java Specification Requests KVM Máy o Java cho mơi tr ưng CLDC PDA Personal Digital Assistant MIDlet Tên g i chung cho các ng d ng J2ME MIDP Mobile Information Device Profile Profile Các t p th ư vi n c p cao đ nh ngh ĩa n n Configuation RMS RecordStore Management System Symbian H đi u hành cho đi n tho i di đ ng c a hãng Symbian XML Extensible Markup Language
  9. TĨM T T KHĨA LU N Ni dung khĩa lu n chia làm 5 ch ươ ng: - Ch ươ ng 1: Tng quan v l p trình trên thi t b di đ ng . Ch ươ ng này nêu nh ng tình hình s d ng các thi t b di đ ng Vi t Nam, ho t đ ng phát tri n ph n m m cho các thi t b này. Gi i thi u m t s các ph n m m cơng c h tr ng d ng phát tri n ph n m m trên thi t b di đ ng b ng ngơn ng Java. - Ch ươ ng 2: Khái quát v J2ME, J2EE, MVC và h qu n tr CSDL Firebird. Ch ươ ng này trình bày các khái ni m, ki n trúc, ch c năng c a J2ME, J2EE và h qu n tr CSDL Firebird. - Ch ươ ng 3: Phân tích thi t k ng d ng. Phân tích các yêu c u nghi p v . Đc t chi ti t ng d ng m c phân tích, thi t k . - Ch ươ ng 4: Th nghi m, cài đ t và h ưng d n s d ng. Ch ươ ng này gi i thi u v trình gi l p đ ưc khĩa lu n ch n th nghi m. H ưng d n cài đ t và cách s d ng các ch c năng c a ch ươ ng trình. - Ch ươ ng 5: Tng k t, đánh giá, h ưng phát tri n. Nh n xét đánh giá v nh ng m t đã làm đưc, nh ng m t ch ưa làm đ ưc. Đ ra nh ng gi i pháp và ph ươ ng h ưng đ ti p t c phát tri n ch ươ ng trình ngày càng hồn thi n hơn và phát tri n thành nhi u ch ươ ng trình ng d ng khác n a. - Danh m c các tài li u tham kh o: Đây là các tài li u đã đưc tham kh o khi làm lu n văn này. - Ph l c: Mc này h ưng d n cài đ t các ph n m m liên quan đ ch y demo ch ươ ng trình.
  10. CChhCh ươ ng 1: T ng Quan V LLLp TrìTrìnhnh Trên Thi t B Di ð nnggng Ch ươ ng 1: Tng Quan V Lp Trình Trên Thi t B Di Đ ng 1.1 Tng quan v th tr ưng thi t b di đ ng Vi t Nam S l ưng thi t b di đ ng ngày càng tăng Vi t Nam, nhi u ng ưi đã coi nh ng thi t b này nh ư m t v t khơng th thi u trong cu c s ng h ng ngày. Cùng vi s gia tăng s l ưng ng ưi dùng thì các ng d ng dành cho thi t b di đ ng cũng tăng theo t ươ ng ng. Hàng lo t các ng d ng cho thi t b di đ ng đã trình làng và r t đ ưc chào đĩn. Đây cĩ th đ ưc coi là m t cu c cách m ng trong l ĩnh v c di đng, nĩ bi n nh ng thi t b di đ ng nh bé c a b n thành m t chi c máy tính thu nh , v i nh ng thi t b này b n cĩ th đ c báo, ti u thuy t, tra cu thơng tin Cĩ th nĩi th tr ưng di đ ng Vi t Nam là m t th tr ưng r t h p d n đ i v i các nhà s n xu t ph n m m. 1.2 Lp trình trên thi t b di đ ng s d ng J2ME 1.2.1 Quá trình phát tri n ng d ng J2ME Thơng th ưng vi c phát tri n ng d ng J2ME đ ưc ti n hành qua các giai đo n sau: - Vi t mã ngu n Java - Biên d ch - Tùy ch n (Obfuscate) Obfuscate s lo i b các thơng tin khơng c n thi t trong class, ch ng h n nh ư tên c a các bi n c c b . Các l p, ph ươ ng th c, interface, c ũng đ ưc đ i tên đ làm cho chúng ng n g n h ơn. M t gĩi đ ã đưc obfuscate s b o v các t p tin class kh i vi c d ch ng ưc và reverse engineering. Ngồi vi c b o v mã ngu n, obfuscate cịn gi m kích th ưc c a các t p tin class, làm cho kích th ưc c a t p tin Trang 4
  11. CChhCh ươ ng 1: T ng Quan V LLLp TrìTrìnhnh Trên Thi t B Di ð nnggng JAR c ũng gi m đ i. Vi c gi m kích th ưc r t cĩ ý ngh ĩa b i vì các thi t b MIDP th ưng cĩ b nh gi i h n. - Ti n ki m tra (Pre-verify): B ki m tra trong J2SE t n ít nh t là 50KB, khơng k vi c tiêu t n vùng nh heap và th i gian x lý. Đ gi m vi c tiêu t n này cho J2ME, vi c ki m tra t p tin class s đ ưc chia thành hai giai đ o n. Quá trình ti n ki m tra tr ưc khi tri n khai s thêm các t p tin class các tham s ph đ t ă ng t c quá trình ki m tra lúc th c thi. Thi t b s th c hi n quá trình ki m tra s ơ l ưc b ng cách s d ng các tham s ph đ ưc phát sinh trong quá trình ki m tra. - To t p tin JAR - To t p tin JAD - Th c thi trên trình gi l p thích h p - Tri n khai trên thi t b di đ ng 1.2.2 Các J2ME IDE Mơi tr ưng phát tri n tích h p (IDE) c i thi n n ă ng sut c a l p trình viên b ng cách cung c p m t t p h p các cơng c l p trình tích h p thơng qua giao di n đ h a (GUI), h tr cơng c so n th o, qu n lý project, biên dch và g r i (debugger). Thành viên m i nh t trong gia đ ình Java là J2ME. Khi nhi u chuyên gia d đ ốn v s phát tri n l n m nh c a th tr ưng phát tri n các ng d ng J2ME, các nhà phát tri n IDE đ ã đưa ra các b n m rng cho các s n ph m IDE c a h đ h tr thêm J2ME. Ngồi ra, các nhà cung c p chuyên nghi p khác c ũng đ ã phát tri n các IDE dành riêng cho J2ME. 1.2.2.1 Mt IDE cho J2ME c n phái cung c p các ti n ích sau - Qu n lý project: Qu n lý t p tin ngu n và các thơng s MIDlet - Trình so n th o: So n th o mã ngu n và các tài nguyên Trang 5
  12. CChhCh ươ ng 1: T ng Quan V LLLp TrìTrìnhnh Trên Thi t B Di ð nnggng - Build: Biên d ch, obfcuscate và pre-verify mã ngu n - Đĩng gĩi (package): Đ ĩng gĩi các MIDlet thành ph n JAR và JAD - Gi l p (emulation): Th c thi các MIDlet v i m t trình gi l p - G r i (debugger) 1.3 Mt s cơng c h tr J2ME 1.3.1 J2ME Wireless Toolkit (WTK) J2ME Wireless Toolkit (WTK) là m t b cơng c phát tri n J2ME cho các l p trình viên trên mơi tr ưng gi l p, là cơng c c n thi t đ phát tri n ng d ng MIDP. WTK khơng ph i là mt IDE hồn ch nh, b i vì nĩ đã b các tính n ă ng so n th o và g r i v n đ ưc xem là b t bu c ph i cĩ trong mt IDE. Tuy nhiên, Ktoolbar, đ ưc cung c p trong b WTK là m t mơi tr ưng phát tri n t i thi u cung c p m t GUI dành cho vi c biên d ch, đ ĩng gĩi và th c thi các ng d ng MIDP. M i project cĩ m t th ư m c dành riêng trong th ư m c apps. Th ư m c apps n m bên trong th ư m c chính c a WTK. Các th ư vi n c n thi t cho project cĩ th đ ưc chép th cơng vào th ư m c bên trong th ư m c project. Nu m t th ư vi n c n cho t t c project, nĩ cĩ th đ ưc chép vào th ư m c apps/lib. Khi Ktoolbar project đ ưc t o ra, c u trúc th ư m c project s đ ưc thi t lp. Ngồi ra các t p tin JAD và manifest c ũng đ ưc phát sinh d a vào các thơng s c a MIDlet suite đ ã đưc xác đ nh. Tuy nhiên, khơng cĩ t p tin ngu n nào đ ưc phát sinh cho MIDlet. L p trình viên ph i vi t các t p tin ngu n này t đ u Ktoobar khơng h tr n p nhi u project trong m t GUI. Trình so n th o WTK khơng cung c p m t trình so n th o tích h p nào. Thay vào đ ĩ, l p trình viên ph i s d ng m t trình so n th o c a hãng th ba. Trang 6
  13. CChhCh ươ ng 1: T ng Quan V LLLp TrìTrìnhnh Trên Thi t B Di ð nnggng Ktoolbar c ũng cung c p h tr cho vi c biên d ch và đ ĩng gĩi d án. Gĩi đưc t o ra s ch a t p tin JAR và JAD c a MIDlet suite. WTK đ ưc tích hp cơng c obfuscator là RetroGuard. Cơng c này khơng đ ưc cung c p kèm v i WTK mà cĩ th download mi n phí t website www.retrologic.com . Đ cài đ t, chúng ta ch c n chép t p tin retroguard.jar vào th ư m c bin c a th ư m c cài đ t WTK. Tĩm l i: WTK là m t mơi tr ưng c ơ b n cho vi c phát tri n các ng dng trên thi t b di đ ng. Tuy nhiên, do thi u m t trình so n th o và ch c n ă ng g r i, rõ ràng cơng c này khơng th nào c nh tranh đ ưc v i các cơng c th ươ ng m i khác. Tuy nhiên v i nh ng ai m i b t đ u tìm hi u J2ME thì đ ây v n là m t cơng c cĩ ích. B ng vi c t o l p s n m t c u trúc th ư m c, nĩ cho phép l p trình viên cĩ th xây d ng ngay ng d ng mà khơng c n quan tâm v vi c t ch c các t p tin, tài nguyên trong d án. Khi mt l p trình viên đã tr nên thành th o v i vi c phát tri n ng d ng J2ME thì cĩ th chuy n sang s d ng m t cơng c khác. 1.3.2 Borland Jbuilder 2006: Mơi tr ưng làm vi c c a Jbuilder cho J2ME hồn tồn gi ng nh ư mơi tr ưng phát tri n các ng d ng Java bình th ưng nh ưng cĩ thêm các tabs và options trong các h p tho i đ h tr J2ME và hai winzard m i: MIDP MIDlet wizard và MIDP Displayable wizard. Trong phiên b n Jbuilder Professionnal và Enterprise, trình duy t Archive Builder cĩ th t o ra m t MIDlet suite v i các t p tin manifest và JAD t ươ ng ng. Jbuilder 2006 c ũng cn cài đ t WTK 2.1 đ ưc s d ng nh ư m t mơi tr ưng gi l p. Ngồi ra Jbuilder cịn cung c p các h ưng d n cho vi c tích h p thêm các J2ME JDK khác, ch ng h n nh ư Nokia Developer Suite for J2ME và Siemens Mobility Toolkit (SMTK). Trang 7
  14. CChhCh ươ ng 1: T ng Quan V LLLp TrìTrìnhnh Trên Thi t B Di ð nnggng Ngồi các tính n ă ng chính c a Jbuilder, khi l p trình cho J2ME chúng ta đưc thêm các tính n ă ng sau: - Code completion cho các l p CLDC/MIDP - Duy t class/package cho các l p CLDC/MIDP - Chuy n đ i JDK - Các MIDP wizards - B thi t k tr c quan (visual designer) cho các thành ph n giao di n MIDP - Cơng c g r i MIDlet - Đ ĩng gĩi file JAD và JAR - Np d li u thơng qua OTA (Over The Air Provisioning) Tĩm l i: Ch c n ă ng thi t k giao di n c a Jbuilder là m t cơng c h u ích trong vi c t o l p giao di n MIDP. Tuy nhiên, ch c n ă ng này l i khơng h tr đ y đ các thành ph n giao di n hi n cĩ và trong nhi u tr ưng h p mã ngu n phát sinh c n đ ưc ch nh s a thêm m i ho t đ ng đ úng theo ý mu n. Trang 8
  15. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird Ch ươ ng 2: Khái Quát J2ME, J2EE, MVC, JSP, Servlet Và H Qu n Tr CSDL Firebird 2.1. Gi i thi u J2ME 2.1.1. Khái ni m J2ME là m t nhánh c a ngơn ng l p trình JAVA đưc phát tri n nh m h ưng ti vi c l p trình trên các thi t b cĩ b nh , hi n th và x lý h n ch . 2.1.2. Ki n trúc J2ME H 2.01 Ki n trúc t ng quát c a J2ME 2.1.2.1. CLDC – Connected Limited Device Configuation Mc đích c a t ng này là cung c p m t t p t i thi u các th ư vi n cho phép mt ng d ng Java ch y trên thi t b di đ ng. Nĩ cung cp c ơ s cho t ng hi n tr ng, t ng này s ch a nhi u API chuyên bi t h ơn. Trang 9
  16. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird Đưc thi t k đ nh m vào th tr ưng các thi t b c p th p, các thi t b này thơng th ưng là máy nh n tin, đ i n tho i di đ ng và PDA. Các thi t b này cĩ giao di n đ ơn gi n, b nh kho ng 32K đ n 512KB, b ă ng thơng nh , trong các thi t b này, vi c truy n thơng trên m ng khơng d a vào nghi th c TCP/IP. Vì tài nguyên b nh h n ch nên CLDC đ ưc g n v i Java khơng dây (Java Wireless), d ng nh ư cho phép ng ưi s d ng mua và t i v nh ng ng d ng Java, ví d nh ư là Midlet. 2.1.2.2. CDC – Connected Device Configuation Đưc đ ưa ra nh m đ n các thi t b cĩ tính n ă ng m nh h ơn dịng thi t b thu c CLDC nh ưng v n cịn y u h ơn các h th ng máy đ bàn s d ng J2SE. Các thi t b thu c lo i này bao g m các h p đ i u khi n TV, đ i n tho i Internet, các thi t b gi i trí, đ nh h ưng Các thi t b này cĩ giao di n phong phú, b nh nhi u h ơn (thơng th ưng là trên 2Mb) và cĩ b x lý m nh h ơn, b ă ng thơng l n và s d ng giao th c TCP/IP. 2.1.2.3. Máy o Java (KVM) Vai trị c a máy o Java hay KVM là d ch mã bytecode đưc sinh ra t ch ươ ng trình Java đã biên d ch sang ngơn ng máy. Chính KVM s chu n hĩa output c a các ch ươ ng trình Java cho các thi t b di đ ng khác nhau cĩ th cĩ b vi x lý và t p l nh khác nhau. Khơng cĩ KVM, các ch ươ ng trình Java ph i đưc biên d ch thành t p l nh cho m i thi t b di đ ng. Nh ư v y l p trình viên ph i xây d ng nhi u đ ích cho m i lo i thi t b di đ ng.Do các thi t b di đ ng dùng CLDC th ưng cĩ tài nguyên h n ch nên Sun đ ã đ ra máy o Java KVM ph c v riêng cho các thi t b này. Máy o KVM th c ch t là m t b ph n con ca các máy o trên mơi tr ưng J2SE và J2EE nên c ũng cĩ nhi u h n ch . Trang 10
  17. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird 2.1.2.3.1. Mt s h n ch - Khơng h tr ki u d li u float: Vi c x lý s float đ ịi h i nhi u tài nguyên x lý, ngồi ra các thi t b di đ ng khơng cĩ nh ng c u hình ph n c ng dành riêng cho vi c x lý s float trong J2ME. - Ph ươ ng th c finalize: Trong J2SE, chúng ta cĩ th khai báo ph ươ ng th c finalize (t ươ ng t ph ươ ng th c destructor). Garbage Collector s g i ph ươ ng th c này tr ưc khi h y b m t đ i t ưng, ph ươ ng th c này th ưng đ ưc dùng đ thu h i các tài nguyên h th ng nh ư sockets, file handles tr ưc khi đ i t ưng b “phá h y”. Tuy nhiên trong J2ME chúng ta khơng cĩ ph ươ ng th c finalize. - Erro Handling: Trong J2ME chúng ta v n đ ưc h tr các cơng c v by l i (ch y u thơng qua try và catch). Tuy nhiên kh n ă ng v x lý li c a J2ME c ũng h n ch h ơn J2SE và J2EE. - Khơng h tr vi c s d ng code c a các ngơn ng khác - Khơng h tr Reflection: Trong J2SE và J2EE, chúng ta cĩ th dùng các lp Reflection đ tìm hi u thơng s mơi tr ưng máy o Java đ ang th c thi. - Khơng h tr ThreadGroup: M i thread đ ưc qu n lý riêng bi t, khơng cịn l p ThreadGroup. N u mu n đ i u khi n m t lúc nhi u threads chúng ta cĩ th dùng m ng ho c Vector. 2.1.2.4. MIDP – Mobile Information Device Profile Đ ây là Profile đ ưc đ nh ngh ĩa dành riêng cho các thi t b di đ ng và là thành ph n chính trong J2ME. MIDP cung c p các ch c n ă ng c ơ b n cho h u ht các thi t b di đ ng ph bi n nh t là các máy đ i n tho i di đ ng và các máy PDA. Tuy nhiên MIDP c ũng cĩ nhi u h n ch l n c ũng ch vì đưc thi t k cho các máy di đ ng cĩ c u hình r t th p. Trang 11
  18. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird 2.2. Gi i thi u J2EE 2.2.1. Khái ni m: J2EE d a trên cơng ngh J2SE – Java TM 2 Platform Standard Edition đ ưc xây d ng b ng ngơn ng Java . Là m t thành ph n r t quan tr ng và r ng l n trong lĩnh v c Java. J2EE đ ưc dùng d phát tri n các ng d ng l n, mang tính ch t rng kh p. Đ ây là l ĩnh v c đ ưc chú tr ng và ng d ng nhi u nh t c a Java trong th c t . J2EE cung cp cách ti p c n d a trên linh ki n (component: là m t thành ph n hay m t đ ơn v ph n m m đ c l p) đ thi t k , phát tri n, tích h p và tri n khai ng d ng. J2EE đ ưa ra mơ hình ng d ng phân tán đ a t ng v i các linh ki n cĩ kh n ă ng tái s d ng, mơ hình b o m t th ng nh t, đ i u khi n giao d ch (transaction) linh đ ng, h tr d ch v web (web service) thơng qua vi c s d ng chu n XML đ tích h p và trao đ i d li u. Nĩi chung m t ph n m m d a trên J2EE là m t ng d ng phân tán đ a t ng bao g m nh ng linh ki n tích h p v i nhau theo đ c t c a J2EE, linh ki n là: Web service, EJB hay gĩi java classes Nu là nhà s n xu t ph n m m, v i J2EE, b n cĩ th nhanh chĩng phát tri n mt ph n m m th ươ ng m i b ng cách xây d ng & tích h p nh ng linh ki n đ c lp và đ a h , b n cĩ th phân rã trách nhi m xây d ng các linh ki n cho các nhĩm lp trình viên đc l p. N u là ng ưi tiêu th v i vai trị l p trình viên, v i J2EE, bn khơng c n ph i mua tr n gĩi m t th ư vi n ph n m m l n cho vài nhu c u nh , thay vào đ ĩ, b n s mua t ng linh ki n J2EE v a đ nhu c u, đ i u này ti t ki m chi phí và t o tính ch đ ng cho ng ưi tiêu th . J2EE phù h p cho nh ng ng dng quy mơ l n v i giá thành th p. Trang 12
  19. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird 2.2.2. Ki n trúc J2EE H 2.02 Ki n trúc t ng quát J2EE 2.2.2.1. Client Machine Ch đ m nh n ph n bi u di n thơng tin đ n server và thu th p d li u c a ng ưi dùng. Nĩ khơng bi t ho c khơng quan tâm đ n cách mà thơng tin đ ưc phát sinh, m c dù nĩ bi t m t s đ i u v “hình d ng (shape)” c a thơng tin. 2.2.2.2. J2EE Machine T ng này đ m nh n ch c n ă ng biên d ch hay thay đ i d li u, các lu t ph i đưc áp d ng cho d li u khi nĩ thay đ i. T ng này cung c p cho t ng Client Machine tr ưc nĩ, và c ũng là ph ươ ng ti n cho vi c l ưu tr và nh n d li u c a tng sau nĩ. 2.2.2.3. Database Server Machine Tng này đ m nhi m qu n lý l ưu tr và l y d li u ng d ng. T ng này cĩ th bao g m mã ch ươ ng trình c ng v i h qu n tr c ơ s d li u quan h . Trang 13
  20. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird 2.3. C ơ ch giao ti p gi a J2ME và J2EE HTTP là m t giao th c liên l c gi a Clien/Server lý t ưng cho các ng d ng java di đ ng. Đ i v i m i đ c t , thi t b t ươ ng thích MIDP ph i h tr HTTP. Các giao thc khác nh ư TCP hay UDP là tùy ch n. B i vì khơng ph i t t c các thi t b MIDP đu h tr tuy n thơng socket hay datagram, do đ ĩ tri n khai HTTP trên thi t b di đng cho phép t i ưu hĩa kh n ă ng chuy n đ i gi a các thi t b t các nhà s n xu t khác nhau. M t l i đ i m khác c a giao th c HTTP đ ưc h ưng truy xu t khơng l i thơng qua tưng l a. B i vì server và client di đng h u nh ư đ ưc tách bi t b ng firewall, HTTP khơng c n ph i c u hình thêm. M c dù v y ta c ũng nên quan tâm đ n các r i ro b o mt cĩ th cĩ khi m k t n i HTTP ra th gi i bên ngồi. Java cung c p API l p trình mng, h tr giao th c HTTP. Ta d dàng t o ra các request GET, POST và HEAD trong ng d ng Java. 2.4. Gi i thi u Mơ hình MVC H 2.03 Mơ hình MVC t ng quát Trang 14
  21. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird Mơ hình MVC chia các component ng d ng thành 3 lo i khác nhau đ ĩ là Model- View-Controller m i components đ m nh n m t trách nhi m nh t đ nh, các components đ u đ c l p v i các components khác. Nhi m v c a các components là: • View: Ng ưi dùng t ươ ng tác v i ng d ng thơng qua components View. View cĩ trách nhi m l y request và g i yêu c u đ n controller, nh n k t qu t controller hi n th cho ng ưi dùng.HTML, JSPs, các th ư vi n Tag và các File ngu n là các thành ph n c a components View. • Controller: Là trung gian gi a Model và View, Controller cĩ trách nhi m nh n yêu c u t View sau khi nh n yêu c u controller s th c thi Business logic thích h p t Model, sau đ ĩ đ i u khi n components View xu t d li u cho User.ActionSevlet, Action, ActionForm và Struts-config.XML là các thành ph n c a Controller. • Model: Đ m nh n nhi m v cung c p d li u t c ơ s d li u và l ưu thơng tin vào CSDL, t t c các Business đ u đ ưc th c thi Model.Truy xu t d li u,s h p l c a d li u và data saving logic là các thành ph n c a Model. 2.5. Gi i thi u v JSP (Java Server Pages) 2.5.1. Khái ni m Là cơng ngh xây d ng trên ngơn ng Java. Nĩ th a k t t c nh ng ưu đ i m cũng nh ư các đ c tính c a Java. Nĩ cĩ th ch y đ ưc trên t t c Platform. Cu trúc c a m t trang JSP: - Directives - Scripting Elements - Actions Trang 15
  22. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird 2.5.2. Sơ đ ho t đ ng c a JSP H 2.04 Mơ hình ho t đ ng c a JSP 2.6. Gi i thi u v Servlet 2.6.1. Khái ni m Servlet dùng đ m r ng các ch c n ă ng c a Java-enable server. Dùng đ thay th cho CGI Script. Servlet ch y trong Java Virtural Machine. Khơng b t bu c Web browser ph i h tr Java. H 2.05 S ơ đ ho t đ ng c a Servlet 2.6.2. Đc đi m Servlet - Khơng ph thu c n n - Cĩ th làm vi c trên nhi u web servers. - Là cơng ngh đ u tiên c a Java đ t o ra web Application Trang 16
  23. CChhCh ươ ng 2: Khái Quát J2ME, j2j2EE,EE, MVCMVC,, JSP, S ervlet và H ệ Qu ản Tr ị CSDL Firebird - Khơng n m trong core Java API mà n m trong hai package javax.servlet và java.servlet.http ca Java Servlet Development Kit (JSDK) 2.7. Gi i thi u v h qu n tr CSDL Firebird 2.7.1. Khái ni m Là m t h qu n tr CSDL do c ng đ ng mã ngu n m phát tri n. Cung cp mơi trưng và cơng c đ l ưu tr và truy xu t d li u t c ơ s d li u m t cách hi u qu . Lưu gi thơng tin v ng ưi dùng c a h qu n tr c ơ s d li u và nh ng tác v mà ng ưi dùng này cĩ th t ươ ng tác v i d li u đ ưc l ưu tr . 2.7.2. Lý do dùng h qu n tr CSDL Firebird - Do c ng mã ngu n m phát tri n nên d tích h p v i các ph n m m mã ngu n m. - Gi m thi u s d ư th a d li u, tránh đ ưc s khơng đ ng nh t v d li u. Tính nh t quán c a d li u s đ ưc đ m b o. Trang 17
  24. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng Ch ươ ng 3: Phân Tích Thi t K ng D ng 3.1 Kh o sát hi n tr ng Hi n nay, trên th gi i c ũng nh ư Vi t Nam các thi t b di đ ng ngày càng đ ưc s dng r ng rãi ph c v nh ng nhu c u c a con ng ưi. Hi n nay các lo i hình d ch v trên các thi t b này c ũng r t đa d ng: Tra c u đi m thi, xem k t qu x s , tìm xe buýt Qua m t th i gian kh o sát và tìm hi u chúng em nh n th y r ng lo i ng dng mua bán sách qua thi t b di đ ng h u nh ư ch ưa cĩ trên th tr ưng. Vi vi c xây d ng thành cơng ng d ng này chúng em hy v ng trên th tr ưng s xu t hi n m t lo i hình d ch v m i cho thi t b di đ ng. Nĩ s làm cho cu c s ng c a chúng ta ngày càng phong phú h ơn. 3.2 Qui trình nghi p v c a vi c mua bán sách 3.2.1 Trên Server • Cp nh t sá ch: Khi c n c p nh t sá ch thì nhân viên cĩ th đăng nh p và o h th ng v i vai trị là nhân viên c p nh t và cp nh t sá ch trong database • Chuy n giao sách đã đưc đ t mua: - Nhân viên s đăng nh p và o h th ng v i vai trị là nhân viên l p hĩ a đ ơn và xem cá c hĩ a đ ơn đ ã đư c t o ra, in cá c hĩ a đ ơn c n thi t và chuy n giao cho b ph n so n hĩ a đ ơn. - B ph n so n hĩ a đ ơn s so n đ y đ cá c đ u sá ch cĩ trong hĩ a đ ơn và chuy n đ n cho b ph n chuy n giao sá ch. - B ph n chuy n giao sá ch s tin hà nh chuy n giao sá ch cho khá ch hà ng và thu ti n. - Nu khá ch hà ng khơng nh n ho c ch nh n m t ph n thì sá ch s đư c mang v và cp nh t tr l i và o database. Trang 18
  25. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng • Th ng kê: Khi c n thi t nhân viên th ng kê s th ng kê sá ch t n kho, sá ch đ ã bá n, sá ch c n b sung theo yêu c u • Phân quy n: Admin s phân quy n, t o nhĩ m ng ư i dù ng khi c n thi t. 3.2.2 Trên Client di đ ng - Và o trang web xem cá c đ u sá ch mà trang web đang cĩ . - Ch n sá ch c n mua và sá ch đ ĩ s đư c cho và o gi hà ng. - Nu ng ư i dù ng ti p t c ch n nh ng sá ch khá c thì nh ng sá ch đ ĩ cũ ng l n lư t đ ư c đ ưa và o gi hà ng. - Nu ng ư i dù ng đ i ý, mu n thay đ i sá ch đ ã ch n thì cĩ th cp nh t l i gi hà ng c a mì nh. - Ng ư i dù ng ch n l nh Thanh Tố n và mà n hì nh ti p nh n thơng tin khá ch hà ng xu t hi n, khá ch hà ng ti n hà nh nh p cá c thơng tin c n thi t. - Khi khơng hi u v cá ch th c thanh tố n và chuy n giao sá ch khá ch hà ng cĩ th xem h ưng d n trên trang web. - Khi c n tì m lo i sá ch ho c sá ch khá ch hà ng cĩ th tra c u trên trang web. 3.3 Phân tích và xác đ nh yêu c u D a trên các yêu c u v mua bán sách qua thi t b di đ ng chúng tơi đ ưa ra các yêu c u sau: 3.3.1 Danh sách các yêu c u nghi p v TT Các tr ưng h p Mơ t Server Nhân viên c p nh t 1. Qu n lý sá ch To m i/ c p nh t / xem và l ưu trên server 2. Qu n lý thơng tin lo i sá ch To m i/ c p nh t / xem và l ưu trên server 3. Qu n lý thơng tin tá c gi To m i/ c p nh t / xem và l ưu trên server 4. Qu n lý thơng tin nhà xu t b n To m i/ c p nh t / xem và l ưu trên server Nhân viên l p hĩ a đ ơn To m i/ c p nh t / xem và l ưu thơng tin c a hĩ a 1. Qu n lý hĩ a đ ơn bán hàng đơn bán hàng trên server Trang 19
  26. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 2. Qu n lý thơng tin k há ch hà ng To m i/ c p nh t / xem và l ưu trên server 3. Cp nh t b ng giá Cp nh t b ng giá Cho phép nhân viên l p hĩ a đ ơn xem tr ng thái và 4. Th ng kê các đ ơn hàng bán kt qu bán hàng ngày đ n ngày, theo khá ch hà ng. 5. Tra c u thơng tin khá ch hà ng Tra c u thơng tin khá ch hà ng In hĩ a đ ơn chuy n đ n b ph n so n sá ch cho hĩ a 6. Xu t hĩ a đ ơn đơn Nhà qu n tr To m i, c p nh t và gán ng ưi dùng t i quy n 1. Qu n lý ng ưi dùng truy xu t (nhĩm ng ưi s d ng). Khơng gán đ n ch c n ă ng 2. Qu n lý nhĩ m ng ư i dù ng To m i / c p nh t / xem và l ưu trên server Nhân viên th ng kê 1. Th ng kê doanh thu Th ng kê t ngà y đ n ngà y, theo khá ch hà ng 2. Th ng kê sá ch đ ã bá n Theo Mã sá ch, Tên sá ch, Ngà y bá n Nh ng sá ch đ ã bá n g n h t cĩ nhu c u b sung 3. Th ng kê sá ch c n mua thêm thêm 4. Th ng kê chuy n giao sách Clien di đ ng Khá ch hà ng 1. Hi n th Danh m c sách 2. Hi n th sá ch theo Danh m c Hi n th danh sá ch sá ch bá n 3. ch y nh t Ch n sá ch, lưu sá ch đ ã ch n, cp nh t sá ch đ ã 4. ð t mua sá ch ch n, Hi n th sá ch đ ã ch n 5. Đă ng ký mua sá ch 6. Đc thơng tin h ư ng d n 7. Tra c u thơng tin sá ch Tra c u sá ch, lo i sá ch theo Mã s, Tên Trang 20
  27. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.3.2 Các yêu c u phi ch c năng • Ch ương trình ch y trên Client: - Ch ươ ng trình ph i ch y đ ưc trên t t c các thi t b di đ ng cĩ h tr Internet. - Tc đ duy t, tìm ki m trên thi t b m c ch p nh n đ ưc - Kích th ưc khơng quá l n - Giao di n d s d ng • Ch ươ ng trình ch y trên Server: - Tc đ nhanh, b o m t t t - Giao di n d s d ng Trang 21
  28. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4 Thi t k ng d ng 3.4.1 Sơ đ Use case t ng th Update existing kind of Updating Officer book Admin > Assign Permission Enter new kind of book > Enter new usergroup Update user group Enter new book > Update existing author > > > > > Update existing book > Enter new author > Enter new user > Update user > > > > > Update existing employee > Enter new publisher > > > Enter new employee > > Show hot book list Update existing publisher System login > Read introduction Show kind of book list Update existing order > > Register Customer Show new book list > Enter new order Show chosen book > > Save chosen book Update chosen book > > Statictis by order > Chose new book Order Officer > > Statistic book relegation Statistic income Print order > Statistic book Lookup customer > Modify customer Statistic bought book Statistic Officer Enter new customer H 3.06 S ơ đ Use Case t ng th Trang 22
  29. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.2 Sơ đ Use case cho t ng Actor 3.4.2.1 Order Officer (Nhân viên l p hĩa đ ơn) Satistic by order Update existing order > > > Enter new order > > Order officer System login > Print order > Modife customer Lookup customer H 3.07 S ơ đ Use Case – nhân viên l p hĩa đ ơn 3.4.2.2 Update Officer (Nhân viên c p nh t) Update existing kind of book > Enter new kind of book > Update existing book > > > > Enter new book > Update officer System login Enter new publisher > > > Update existing publisher > Enter new author > Update existing author H 3.08 S ơ đ Use Case – nhân viên c p nh t Trang 23
  30. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.2.3 Admin (Nhà qu n tr ) Assign permission Update existing usergroup > > Enter new usergroup > Admin > Enter new user System login > > > Update existing user > Enter new employee > Update existing employee H 3.09 S ơ đ Use Case – nhân viên qu n tr 3.4.2.4 Statistic Officer (Nhân viên th ng kê) H 3.10 S ơ đ Use Case – nhân viên th ng kê Trang 24
  31. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.2.5 Customer (Khách hàng) H 3.11 S ơ đ Use Case – khách hàng 3.4.3 Đc t mt s Use case tiêu bi u 3.4.3.1 Enter new book 3.4.3.1.1 Mơ t Use case này mơ t ch c n ă ng h th ng h tr nhân viên c p nh t trong vi c thêm sách m i vào danh m c sách. Nhân viên c p nh t là Actor c a usep-case này. 3.4.3.1.2 Dịng s ki n • Dịng s ki n chính Use case này b t đ u khi actor mu n thêm m t sách vào danh mc sách. - H th ng hi n th trang Index - Actor ch n n t dung th c hi n là thêm sách m i. - H th ng m trang thêm sách, các thơng tin cn thi t đ ưc đ ưa vào các combobox. - Actor nh p thơng tin và ch n l ưu - H th ng ki m tra thơng tin đ ã đưc nh p. - H th ng s t đ ng phát sinh mã s cho sách m i này. Trang 25
  32. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng - H th ng th c hi n thêm thơng tin sách vào CSDL. - H th ng thơng báo thêm thành cơng hay khơng thành cơng. - Kt thúc Use Case. • Dịng s ki n khác Khơng cĩ • Yêu c u đ c bi t Khơng cĩ • Đ i u ki n ban đ u Actor ph i đă ng nh p vào h th ng v i vai trị là nhân viên c p nh t ho c nhà qu n tr . • Đ i u ki n sau khi hồn thành Sau khi thêm lo i sách m i h th ng ph i thơng báo thành cơng hay khơng thành cơng. • Đ i m m r ng Khơng cĩ 3.4.3.2 Update existing book 3.4.3.2.1 Mơ t : Use case này mơ t ch c n ă ng h th ng h tr nhân viên c p nh t trong vi c c p nh t thơng tin sách (xĩa, s a). 3.4.3.2.2 Dịng s ki n • Dịng s ki n chính Use case này b t đ u khi actor ch n liên k t đ n trang c p nh t (s a, xĩa) sách trên trang index. - H th ng hi n th trang c p nh t. - Actor th c hi n tra c u đn sách c n c p nh t. - Nu actor ch n s a h th ng hi n th trang S a sách, n u ch n Xĩa h th ng s xĩa sách đ ã ch n. - Kt thúc Use Case. Trang 26
  33. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng • Dịng s ki n khác Các dịng s ki n con x y ra nh ư sau: Sửa sách - H th ng hi n th các danh m c sách. - Actor ch n sách cn s a. - Actor s a l i nh ng ch ch ưa đ úng. - Nhân viên c p nh t nh n nút Sa. - H th ng h i l i cĩ ch c ch n thay đ i thơng tin sách khơng? - Actor sách ch n Yes . - H th ng th c hi n s a thơng tin sách này trong CSDL. - H th ng thơng báo s a thành cơng hay khơng thành cơng. - Kt thúc use case Xĩa sách - H th ng hi n th t t c các danh m c sách. - Actor ch n sách c n xĩa. - Actor nh n nút Xĩa . - H th ng h i l i cĩ ch c ch n xĩa lo i sách này hay khơng? - Actor ch n Yes - H th ng th c hi n xĩa sách này kh i CSDL - H th ng thơng báo xĩa thành cơng hay khơng thành cơng. - Kt thúc use case. • Yêu c u đ c bi t Khơng cĩ • Đ i u ki n ban đ u Actor ph i đă ng nh p vào h th ng v i vai trị là nhân viên cp nh t ho c nhà qu n tr . • Đ i u ki n sau khi hồn thành Khơng cĩ • Đ i m m r ng Trang 27
  34. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng Khơng cĩ 3.4.3.3 Statictis book (Th ng kê sách) 3.4.3.3.1 Mơ t Use case này mơ t ch c n ă ng ca h th ng h tr nhân viên th ng kê trong vi c th ng kê sách trong h th ng, nhân viên th ng kê là acor ca use-case này. 3.4.3.3.2 Dịng s ki n • Dịng s ki n chính Use case này b t đ u khi nhân viên th ng kê ch n liên k t m màn hình th ng kê t trang index. - Nhân viên c p nh t nh p thơng tin th ng kê nh ư: Mã sách, Tên sách, Lo i sách, Nhà xu t b n, - H th ng ti n hành ki m tra thơng tin đ ã nh p và th c hi n th ng kê. - H th ng đc d li u t các b ng liên quan. - H th ng hi n th k t qu th ng kê ra màn hình. - Nhân viên nhân viên cĩ th ch n l nh đ in ho c thốt kh i màn hình th ng kê. - Kt thúc Use Case. • Dịng s ki n khác Khơng cĩ • Yêu c u đ c bi t Khơng cĩ • Đ i u ki n ban đ u Actor ph i đă ng nh p vào h th ng v i vai trị là nhân viên th ng kê ho c nhà qu n tr . • Đ i u ki n sau khi hồn thành Khơng cĩ • Đ i m m r ng Khơng cĩ Trang 28
  35. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.3.4 Assign permission (Phân quy n ng ưi dùng) 3.4.3.4.1 Mơ t : Use case này mơ t ch c n ă ng h th ng h tr nhân viên c p nh t trong vi c c p nh t thơng tin sách (xĩa, s a). 3.4.3.4.2 Dịng s ki n • Dịng s ki n chính Use case này mơ t ch c n ă ng ca h th ng h tr nhà qu n tr trong vi c phân quy n cho nhân viên, nhà qu n tr là Actor c a use-case này. - H th ng đ c d li u t các b ng liên qu n. - Actor ch n nhân viên c n phân quy n - Actor phân quy n cho nhân viên đ ĩ. - Actor l ưu l i thơng tin phân quy n. - H th ng c p nh t vào database. - Kt thúc Use Case. • Dịng s ki n khác Khơng cĩ • Yêu c u đ c bi t Khơng cĩ • Đ i u ki n ban đ u Actor ph i đă ng nh p v i vai trị là nhà qu n tr . • Đ i u ki n sau khi hồn thành Khơng cĩ • Đ i m m r ng Khơng cĩ Trang 29
  36. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.3.5 Login ( Đă ng nh p) 3.4.3.5.1 Mơ t Use case này mơ t ch c n ă ng ca h th ng cho phép các Actor đă ng nh p v i các quy n h n khác nhau. T t c ng ưi dùng đ ưc c p mt tài kho n đ đă ng nh p là Actor c a use-case này 3.4.3.5.2 Dịng s ki n • Dịng s ki n chính Use case này b t đ u khi nhân viên đă ng nh p vào h th ng - Actor nh p tên đă ng nh p và m t kh u h p l - H th ng ti n hành dị tìm các quy n h n c a actor đă ng nh p và lưu vào m t m ng t m. - H th ng s ti n hành m các màn hình c ũng nh ư menu t ươ ng ng vi quy n h n c a actor đă ng nh p sau khi đ ã xét giá tr trong mng t m. - Kt thúc Use case • Dịng s ki n khác Khi actor đă ng nh p sai tài kho n thì h th ng thơng báo • Yêu c u đ c bi t Khơng cĩ • Đ i u ki n ban đ u Actor ph i cĩ m t tài kho n và m t kh u đ ưc l ưu trong h th ng • Đ i u ki n sau khi hồn thành Khơng cĩ • Đ i m m r ng Khơng cĩ Trang 30
  37. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.4 Sơ đ tu n t m t s Use case tiêu bi u 3.4.4.1 Enter new book (thêm sách m i) Author : Book import Book import Enter new Book : Book group Publisher : Order Index : Author detai Officer Index boo Book 1: Open 2: Selec Enter new book 3: Open 4: Submit info 5: Get info 6: Info 7: Get info 8: Info 9: Get info 10: Info 11: Get info 12: Info 13: Submit 14: Check info 15: Save 16: Result 17: Update book import 18: Update book import detail H 3.12 S ơ đ tu n t - Thêm sách m i Trang 31
  38. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.4.2 Statistic book (th ng kê sách) : Book : BookGroup : Statistic : Index Statistic book : : Author : Puclisher : : BookImport StatisticBook BookImportD Officer 1: Open 2: Selec Statistic 3: Open 4: Submit info 5: Click Statistic 6: Get info 7: Info 8: Get info 9: Info 10: Get info 11: Info 12: Get info 13: Info 14: Get info 15: Info 16: Get info 17: Info 18: Show result H 3.13 S ơ đ tu n t - Th ng kê sách Trang 32
  39. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.4.3 Update book (C p nh t sách) : Updating : Index : LookupInfo : UpdateBook : Book : Author : Puclisher : BookGroup : BookImport : Officer BookImportDetail 1: Open 2: Select update book 3: Open 4: Lookup info 5: Get info 6: Info 7: Get info 8: Info 9: Get info 10: info 11: Get info 12: Info 13: Show result 14: Select a book 15: Open 16: Get info 17: info 18: Get info 19: info 20: Get info 21: Info 22: Get info 23: Info 24: Submit 25: Check info 26: Update 27: Update 28: Update 29: Result H 3.14 S ơ đ tu n t - C p nh t sách Trang 33
  40. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.4.4 Assign permission (phân quy n) H 3.15 S ơ đ tu n t - Phân quy n 3.4.4.5 Login ( đă ng nh p) : Actor Login : Login : Index : Role 1: Open 2: Submit info 3: Get info 4: Info 5: Open H 3.16 S ơ đ tu n t - Đă ng nh p Trang 34
  41. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5 Thi t k c ơ s d li u 3.4.5.1 Sơ đ th c th k t h p BOOK_GROUP BOOK AUTHOR Sang tac BookID Number AuthorID Number BookGroupID Number Gom BookName Characters (100) Name Characters (100) Name Characters (100) Description Characters (150) Description Characters (150) Description Characters (150) ID_BOOKGROUPID Quanlity Number ID_AuthorID_1 PublicYear Number Exist Number BOOK_IMPORT_DETAIL Da xuat ban Price Money Duoc nhap vao BOOK_RELEGATION BookID BID_ID RelegationDate Date Quanlity Number Complete Boolean ImportPrice Money Gom sach OutPrice Money Gom BID_ID PUBLICSHER PublisherID Number BOOK_IMPORT ROLE Name Characters (100) Da chuyen BookImportID Number RoleID Characters (10) Description Characters (150) DateImport Date RoleName Characters (100) ID_Publicsher Description Characters (150) ID_BookImport UserGroupID EMPLOYEE Duoc chuyen EMPLOYEEID Da nhap Duoc gan cho Name Characters (100) BirthDay Date Username USER TelNum Characters (12) USER_ROLE Co quyen Address Characters (150) Username Characters (50) ID_EMPLOYEEID Password Characters (50) Description Characters (150) Gom ID_USERNAME ORDER OderID Number POSITION OrderDate Date Chi tiet PositionID Number ID_OrderID Name Characters (100) Description Characters (150) Dac mua ID_POSITION CUSTOMER ORDER_DETAIL CustomerID Number OderDetailID Number Name Characters (100) OutPrice Money Address Characters (150) Quanlity Number TelNum Characters (12) Amount Money ID_CustomerID ID_OderDetailID H 3.17 S ơ đ th c th k t h p – M c quan ni m Trang 35
  42. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5.2 Sơ đ th c th k t h p m c v t lý PUBLICSHER PublisherID numeric Name char(100) Description char(150) FK_BOOK_RELATIONS_PUBLICSH AUTHOR BOOK_GROUP BOOK AuthorID numeric BookGroupID numeric BookID numeric Name char(100) BookName char(100) BookGroupID numeric Description char(150) Description char(150) BookImportID numeric AuthorID numeric FK_BOOK_DA_SANG_T_AUTHOR FK_BOOK_CO_TRONG1_BOOK_GRO PublisherID numeric BOOK_RELEGATION Name char(100) FK_BOOK_IMP_DUOC_NHAP_BOOK Description char(150) EMPLOYEEID Quanlity numeric BOOK_IMPORT_DETAIL OderID numeric PublicYear numeric BID_ID RelegationDate date Exist numeric BookID numeric Complete smallint Price numeric(8,2) BookImportID numeric Quanlity numeric FK_BOOK_REL_CO_TRONG3_ORDER ImportPrice numeric(8,2) FK_BOOK_REL_DA_CHUYEN_EMPLOYEE OutPrice numeric(8,2) ORDER FK_BOOK_GOM_BOOK_IMP OderID numeric FK_BOOK_IMP_RELATIONS_BOOK_IMP CustomerID numeric EMPLOYEE BOOK_IMPORT OrderDate date EMPLOYEEID Username char(50) BookImportID numeric PositionID numeric Username char(50) FK_ORDER_DE_CHI_TIET_ORDER Name char(100) DateImport date BirthDay date ROLE ORDER_DETAIL TelNum char(12) Address char(150) RoleID char(10) OderDetailID numeric RoleName char(100) OderID numeric Description char(150) OutPrice numeric(8,2) Quanlity numeric FK_EMPLOYEE_GOMCO_POSITION Amount numeric(8,2) FK_EMPLOYEE_USERNAME_USER FK_USER_ROL_RELATIONS_ROLE FK_USER_USERNAME2_EMPLOYEE USER_ROLE POSITION RoleID char(10) PositionID numeric Username char(50) FK_ORDER_DAC_MUA_CUSTOMER Name char(100) Description char(150) FK_BOOK_IMP_DA_NHAP_USER CUSTOMER USER CustomerID numeric Username char(50) Name char(100) EMPLOYEEID FK_USER_ROL_CO_QUYEN_USER Address char(150) Password char(50) TelNum char(12) Description char(150) H 3.18 S ơ đ th c th k t h p – m c v t lý Trang 36
  43. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5.3 Đc t c ơ s d li u Ghi chú: - PK: khĩa chính - FK: Khĩa ngo i 3.4.5.3.1 Customer (khách hàng) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh CustomerID Mã khách hàng Numeric Not null PK Name Tên khách hàng String 100 Not null Address Đa ch String 150 Not null TelNum Đ i n tho i String 12 3.4.5.3.2 Order (hĩa đ ơn) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh OrderID Mã hĩa đơn Numeric Not null PK Date Ngày hĩa đ ơn Date Not null CustomerID Mã khách hàng Numeric Not null FK 3.4.5.3.3 Order detail (chi ti t hĩa đ ơn) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh OrderDetailID Mã CT hĩa đ ơn Numeric Not null PK OderID Mã hĩa đơn Numeric Not null FK OutPrice Đơn giá xu t Numeric Not null Quanlity S l ưng Numeric Not null Amound Thành ti n Numeric 3.4.5.3.4 Book group (lo i sách) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh BookGroupID Mã nhĩm sách Numeric Not null PK Name Tên nhĩm sách String 100 Not null Description Miêu t String 150 Trang 37
  44. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5.3.5 Book (sách) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh BookID Mã sách Numeric Not null PK BookGroupID Mã lo i sách Numeric Not null FK Name Tên sách String 100 Not null FK Description Miêu t String 150 Not null Quantity S l ưng Numeric Exist SL t n Numeric PublicYear N ă m xu t b n Numeric PublicsherID Mã nhà xu t b n Numeric FK Price Giá ti n Money AuthorID Mã tác gi Numeric FK Book Mã phi u nh p Numeric FK importID 3.4.5.3.6 Author (tác gi ) Kích Giá tr Vùng Din gi i Ki u DL Ràng bu c th ưc ng m đ nh AuthorID Mã tác gi Numeric Not null PK Name Tên tác gi String 100 Not null Description Miêu t String 150 3.4.5.3.7 Publisher (nhà xu t b n) Kích Giá tr Vùng Di n gi i Ki u DL Ràng buc th ưc ng m đ nh PublisherID Mã nhà xu t b n Numeric Not null PK Name Tên tác gi String 100 Not null Description Miêu t String 150 3.4.5.3.8 Book regelation (chuy n giao sách) Kích Giá tr Ràng Vùng Di n gi i Ki u DL th ưc ng m đ nh bu c BookID Mã sách Numeric Not null PK+FK OderID Mã hĩa đơn Numeric Not null PK+FK EmployeeID Mã nhân viên Number Not null PK+FK Date Ngày giao Date Not null Complete Đã hồn t t Boolean AuthorID Mã tác gi Numeric FK Trang 38
  45. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5.3.9 Book import (phi u nh p sách) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh BookImportID Mã nh p sách Numeric Not null PK DateImport Mã ngày nh p Date Not null Username Mã nhân viên String 30 Not null FK 3.4.5.3.10 Book import detail (chi ti t phi u nh p) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh BID_ID Mã chi ti t Numeric Not null PK Quanlity S l ưng Numeric Not null ImportPrice Giá nh p Numeric Not null OutPrice Giá xu t Date Not null BookImportID Mã nh p sách Numeric Not null FK BookID Mã sách Numeric Not null FK 3.4.5.3.11 User role Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh RoleID Mã phân quy n String 10 Not null PK+FK Username Tên đă ng nh p String 50 Not null PK+FK 3.4.5.3.12 Role Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh RoleID Mã phân quy n String 10 Not null PK Rolename Tên phân quy n String 50 Not null Description Miêu t String 150 3.4.5.3.13 User Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh Username Tên đă ng nh p String 50 Not null PK Password Pas String 30 Not null Description Miêu t String 150 EmployeeID Mã nhân viên Undefined Not null FK Trang 39
  46. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5.3.14 Position (ch c v ) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh PostionID Mã ch c v Numeric Not null PK Name Tên ch c v String 100 Not null Description Miêu t String 150 3.4.5.3.15 Employee (nhân viên) Kích Giá tr Vùng Di n gi i Ki u DL Ràng bu c th ưc ng m đ nh EmployeeID Mã nhân viên Numeric Not null PK Username Tên đă ng nh p String 50 Name Tên nhân viên String 100 Not null BirthDay Ngày sinh Date TelNum S Đ T String 12 Not null Address Đa ch String 150 Not null PositionID Mã ch c v Numeric Not null FK Trang 40
  47. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5.4 Ki n trúc c a h th ng • Ki n trúc t ng quát ` J2ME PC Web server Jboss Lap top J2ME Database Customer Employee H 3.19 Ki n trúc t ng quát c a h th ng Trang 41
  48. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng • Ki n trúc chi ti t Database Firebird JDBC Driver Business model Interface Register New Book Group Book Update Book Search Book List Update Author StatisticCustomer Income Introduction Update Order UpdateB ookImpor Statistic Book Hot Book Update Employ ee Authort Action List Register Update Order Update Customer Book Search Update Employee Statistic Income Introduction Group Book Statistic Book Hot Book Update Author New Book Update Publisher Book List Update BookImport Servlet BookStore BookStore Serverlet Serverlet JSP JSP (Secure) (Secure) HTTP HTTP Java J2ME Client Java J2EE Client BookStore Browser MIDlet H 3.20 Ki n trúc chi ti t c a h th ng Trang 42
  49. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5.4.1 Mơ t chi ti t v JDBC Driver: - Đm b o cho m t ng d ng Java cĩ th giao ti p v i database. - Đm b o nh ng yêu c u t ng d ng đ ưc chuy n đ n database dưi d ng m t ngơn ng mà database cĩ th hi u đ ưc. - Khi database tr v k t qu c a vi c x lý yêu c u thì JDBC s nh n k t qu đ ĩ, đ nh d ng và g i đ n ng d ng v Business model - Là các logic nghi p v đ ưc th hi n thơng qua các interface. v Action List - Là các l p th c thi c a các interface, chúng đ ưc cài đ t chi ti t các hành đ ng trong m i ph ươ ng th c c a interface. v Servlet - Servlet d ch yêu c u t Client, và t i l ưt nĩ, g i yêu c u đ n Action List. Khi các yêu c u đ ưc th a mãn, servlet phát sinh mt h i đ áp cho client. v Java J2ME Client - Là m t đ i n tho i di đ ng, ki n trúc chi ti t đ ưc mơ t trong ph n thi t k J2ME Client. v Java J2EE Client - Là m t m t máy tính truy c p vào server cĩ trình duy t web h tr java Trang 43
  50. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng 3.4.5.5 Ph ươ ng th c truy n t i d li u gi a J2ME và Server Trong th c t cĩ r t nhi u cách đ trao đ i d li u gi a J2ME và Server nh ư: CHAR , BYTE , CSS, XSL Trong lu n v ă n này chúng em ch n ph ươ ng th c trao đ i d li u thơng qua XML . Cĩ th nĩi XML là mt ph ươ ng th c truy n thơng đ i p khá lý t ưng. Nĩ cho phép d li u đưc l ưu tr b t k ỳ đ nh d ng nào. Kh n ă ng x lý d li u c a XML nhanh chĩng. Sau đ ây chúng em xin gi i thi u m t s ph ươ ng pháp truy n thơng đ i p XML • Đnh d ng và truyn thơng đ i p XML - S d ng l p Xstream trong th ư vi n chu n JAXP DOM đ phân gi i tu n t m t đ i t ưng thành XML trên Client và tái t o m t đ i t ưng t file XML trên Server. - Cú pháp phân gi i tu n t : XStream xstream = new XStream(new DomDriver()) String xml = xstream.toXML(object) - C pháp tái t o đ i t ưng: XStream xstream = new XStream(new DomDriver()) Object newObject = (Object)xstream.fromXML(xml) - Trên Client s d ng hàm đ truy n thơng đ i p public static HttpConnection open(String queryString, String searchString ) throws IOException { / * Below is the bookstoreServer URL when server is running on local host. * If you run the server on a different machine, then change the URL to the * corresponding server URL. */ Trang 44
  51. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng String bookstoreServerURL = " et"; HttpConnection conn = null; String urlString = bookstoreServerURL + "?" + queryString + searchString; / Connection is opened with a READ_WRITE flag. * It indicates that this connection is used for sending message to and * receiving message from the server. * The default request method is GET. */ conn = (HttpConnection)Connector.open(urlString,Connec tor.READ_WRITE); return conn; } - Trên Server s d ng hàm đ nh n và ph n h i thơng đ i p public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } Trang 45
  52. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng v Thơng đ i p yêu c u hi n th thơng tin ch d n introductionID Ph n h i t servlet introductionID Content v Thơng đ i p yêu c u danh m c sách bookgroup Ph n h i t sevlet ID1 Name1 ID2 Name2 Trang 46
  53. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng v Thơng đ i p yêu c u sách theo danh m c bookgroupID Ph n h i t servlet id ID1 Name1 ID2 Name2 v Thơng đ i p yêu c u hi n th sách m i newbooklist Ph n h i t servlet ID1 Name1 ID2 Name2 Trang 47
  54. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng v Thơng đ i p yêu c u sách đ ưc mua nhi u nh t hotbooklist Ph n h i t servlet ID1 Name1 ID2 Name2 v Thơng đ i p yêu c u tìm sách searchname searchauthor searchpublisher Ph n h i t servlet ID1 Name1 ID2 Name2 Trang 48
  55. CChhCh ươ ng 3: Phân Tích Thi t K ng D nnggng v Thơng đ i p yêu c u ti p nh n đă ng ký Name address phone date id1 id2 Ph n h i t servlet result Trang 49
  56. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Ch ươ ng 4: Th nghi m, cài đ t và h ưng d n s d ng Vì ch ưa th ch y đ ưc trên thi t b th t nên trong lu n v ă n này chúng em xin ch y demo trên mơi tr ưng gi l p. Đ ch y đ ưc thì chúng ta c n ph i cài các ph n mm h tr liên quan sau. - Cài đ t J2ME Wireless Toolkit 2.5 (Xem ph n h ưng d n ph l c): Đ ây là ph n m m gi l p đ cho khách hàng s d ng đă ng ký mua sách. 4.1 H ưng d n cài đ t ch ươ ng trình (webserver) Ti n hành ch y t p tin BookStore.exe ch n đ ưng d n đ cài đ t ch ươ ng trình ph i ch n đ úng đưng d n nh ư trong hình. Trong lu n v ă n này chúng ta b t bu c ph i cài đ t vào đ ĩa C. Sau đ ĩ nh n nút Install. Trang 50
  57. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Khi màn hình sau xu t hi n t c là đ ã cài đt xong ph n webserver, nh t nút Close đ hồn thành vi c cài đ t H 4.21 Màn hình cài đt ng d ng Sau khi đ ã cài đt xong chúng ta ti n hành t o bi n mơi tr ưng đ ch ươ ng trình ch y. Chúng ta Click ph i chu t lên My computer Properties Advanced Enviroment Variables New trong group System variable. Sau đ ĩ đ i n các thơng tin vào h p tho i nh ư sau: Nh n OK r i Log Off l i máy đ c p nh t bi n mơi tr ưng Trang 51
  58. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng 4.2 Hưng d n s d ng web server Vào th ư m c v a cài đ t C:/Jboss-4.0.0/bin ti n hành ch y t p tin run.bat đ kh i đ ng webserver Jboss. Đ i t ưng s d ng web server này là các nhân viên c a c a hàng, m i nhân viên s đ ưc c p m t username , password và đ ưc phân quy n b i ng ưi qu n tr . Tùy theo quy n h n ng ưi đ ĩ s d ng khi đă ng nh p vào h th ng s t đ ng ki m tra và m nh ng ch c n ă ng đ úng v i quy n h n c a ng ưi đ ĩ. Nhân viên m trình duy t web nh p vào: sau đ ĩ nh p username và password vào H 4.22 Màn hình đăng nh p Trang 52
  59. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng T t c nhân viên c a c a hàng mu n vào ch ươ ng trình làm vi c thì ph i đă ng nh p vào h th ng thơng qua trang này. M i nhân viên s đ ưc nhà qu n tr cung cp m t username và password đ truy c p. • Nhân viên b ph n c p nh t Sau khi đă ng nh p đ úng username và password thì màn hình sau s xu t hi n H 4.23 Màn hình nhân viên c p nh t Khi mu n tìm sách theo ngày nh p thì nhân viên c p nh t ch n ngày/tháng/n ă m r i nh n nút Tìm. Lưu ý: nhân viên ph i ch n đ y đ ngày/tháng/n ă m n u khơng h th ng s khơng tìm đưc. Tùy theo cơng vi c mà nhân viên c p nh t ch n menu cho phù h p. Khi nhân viên ch n m t ch c n ă ng nào đ ĩ thì h th ng s hi n th trang thơng tin đ ĩ đ làm vi c. Trang 53
  60. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Khi nhân viên ch n m c Tìm theo thơng tin sách h th ng s hi n th trang sau: H 4.24 Màn hình tìm ki m sách đ ây nhân viên khơng nh t thi t ph i nh p đ y đ thơng tin. Tùy theo thơng tin mà nhân viên c p nh p mà h th ng s l c d li u và hi n th đ úng k t qu . Trang 54
  61. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng H 4.25 Màn hình k t qu tìm ki m theo lo i sách Trang 55
  62. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Khi ch n tìm theo tác gi H 4.26 Màn hình tìm ki m theo tác gi Trang 56
  63. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng H 4.27 Màn hình k t qu tìm theo tác gi Khi nhân viên ch n ch c n ă ng Cp nh t lo i sách h th ng s m ra trang sau Trang 57
  64. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng H 4.28 Màn hình c p nh t lo i sách Trang này th hi n t t c các thơng tin lo i sách d ưi c ơ s d li u lên. Trong trang này th hi n 3 ch c n ă ng: Thêm m i, s a, xĩa. Trang 58
  65. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Khi ng ưi dùng ch n ch c n ă ng Thêm m i h th ng s m ra trang sau H 4.29 Màn hình thêm lo i sách Khi vào trang này: nhân viên nh p tên lo i sách c n thêm và nh p chú thích. Mã lo i sách s đ ưc phát sinh t đ ng và l ưu vào c ơ s d li u. Khi nh p xong nhân viên ch n nút Lưu h th ng s ti n hành l ưu thơng tin vào c ơ s d li u. Khi nh p thơng tin b sai, chúng ta cĩ th ch n nút B qua đ xĩa các d li u trên form Trang 59
  66. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Khi ng ưi dùng ch n ch c n ă ng sa h th ng s m ra trang sau H 4. 30 Màn hình s a lo i sách Trong trang này ng ưi dùng ch đ ưc s a tên và chú thích. Khi s a xong, ng ưi dùng chn l ưu. H th ng s c p nh t l i c ơ s d li u. Khi ng ưi dùng ch n nút xĩa h th ng s xuât hi n thơng báo H 4.31 Thơng báo xĩa lo i sách Khi ng ưi dùng ch n Yes h th ng s xĩa mã lo i sách này ra kh i c ơ s d li u Trang 60
  67. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Các ch c n ă ng Cp nh t tác gi , C p nh t nhà xu t b n thì t ươ ng t nh ư ch c n ă ng Cp nh t lo i sách. 4.3 H ưng d n s d ng J2ME Đ ch y đ ưc ph n di đ ng chúng ta c n cài đ t ph n m m Wireless Toolkit (xem ph n h ưng d n cài đ t m c l c) Ti n hành ch y file BookStoreJ2MEClient.jad, ng ưi dùng phím m ũi tên lên, xu ng ch n ch c n ă ng. Nh p OK đ ch n ch c n ă ng. Trang 61
  68. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng H 4.32 Menu chính trên J2ME Trang 62
  69. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Ng ưi dùng ch n lo i sách mu n mua sau đ ĩ nh n menu đ ti p t c quy trình mua sách H 4.33 Màn hình ch n sách và đưa vào gi hàng Trang 63
  70. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Mc Xem chi ti t th hi n các thơng tin v sách H 4.34 Màn hình xem chi ti t v sách Trang 64
  71. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Danh sách gi hàng H 4.35 Màn hình xem gi hàng Trang 65
  72. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Sau khi ch n sách xong ng ưi dùng ch n m c đă ng ký đ g i thơng tin đă ng ký mua sách H 4.36 Màn hinh ch n ch c n ă ng đă ng ký mua sách Trang 66
  73. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng H 3.37 Màn hình đă ng ký mua sách Trang 67
  74. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng H 4.38 Thơng báo khi ng ưi dùng ch ưa nh p đ y đ thơng tin Trang 68
  75. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng H 4.39 Màn hình thơng báo g i thơng tin thành cơng Trang 69
  76. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Khi ng ưi dùng ch ưa bi t s d ng thì cĩ th nh p vào menu Tr giúp H 4.40 Màn hình tr giúp Trang 70
  77. CChhCh ươ ng 44:::: TThhTh nghi m, cài đ t và h ưng d n s d ng Trang 71
  78. CChhCh ươ ng 555:5::: TTTổng k ết – đánh giá Ch ươ ng 5: Tng k t, đánh giá, h ưng phát tri n 5.1 M t s k t qu đ t đ ưc: Sau h ơn 5 tháng th c hi n, lu n văn đã hồn thành v i m t k t qu nh t đ nh. Chúng em xin li t kê nh ng k t qu đã th c hi n đ ưc nh ư sau: - Tìm hi u đ ưc cách l p trình trên webserver Jboss và l p trình trên các thi t b di đ ng. - Tìm hi u đ ưc cách t ch c và s d ng h qu n tr c ơ s d li u FireBird - Tìm hi u đ ưc và thi t k các trang web b ng JSP. - Xây d ng đ ưc ch ươ ng trình qu n lý mua bán sách trên thi t b di d ng tươ ng đ i hồn ch nh. 5.2 M t s h n ch Mc dù đã r t n l c đ hồn thành lu n văn này nh ưng v n cịn m t s h n ch nh t đ nh mà chúng em ch ưa kh c ph c đ ưc. Chúng em xin li t kê ra nh ư sau: - Vì qu th i gian r t h n ch nên chúng em ch chú tâm làm m t s ch c năng tiêu bi u. - Ch ưa gi i quy t đ ưc tri t đ nh ng xung đ t tìm n x y ra trong ch ươ ng trình. - Các thi t b h tr J2ME th ưng cĩ dung l ưng b nh h n ch và ki n th c l p trình trên các thi t b này chúng em cịn quá ít kinh nghi m nên ch ươ ng trình th nghi m ch ưa đ ưc t i ưu. - Vì m t s đi u ki n khách quan mà ch ươ ng trình ch ch y đ ưc trên mơi tr ưng gi l p ch ưa th ch y đ ưc trên thi t b th t và ng d ng vào th c t . - Cơ s d li u t thi t k nên khơng sát th c v i th c t . Trang 71
  79. CChhCh ươ ng 555:5::: TTTổng k ết – đánh giá 5.3 Đánh giá k t qu 5.3.1 Ch ươ ng trình ch y trên Server Đây là ph n ch ươ ng trình đưc thi t k đ ph c v cho các nhân viên c a c a hàng. Nhìn chung ch ươ ng trình đáp ng khá đ y đ các yêu c u đ t ra. Giao di n ti ng Vit r t d s d ng. Vi c l ưu tr và x lý d li u di n ra nhanh chĩng. Vi c phân trang trên web cịn h ơi h n ch , m i l n ph i di chuy n đ n trang k ti p ph i load l i tồn b trang web nên m t nhi u th i gian. Dung lưng l ưu tr và x lý trên Server r t l n nên ch ươ ng trình cĩ đo n đã h ơi l m dng và phung phí b nh . Mc dù v y ch ươ ng trình đã ch y demo và ch y mc ch p nh n đ ưc. V n đ b o m t trên Server ch ưa đ ưc chú tr ng nhi u. Đ đ ưa vào ng d ng th c t thì v n đ này c n đ ưc chú tr ng và quan tâm nhi u h ơn. 5.3.2 Ch ươ ng trình ch y trên Client Giao di n này đ ưc thi t k ch y u là cho khách hàng s d ng. Vì là phiên bn demo nên trong lu n văn này chúng em ch ưa th t s chú tr ng đ n giao di n nhi u. Chính vì v y giao di n ch ưa th t s n i b t cho ng ưi dùng. N u mu n ng d ng vào th c t thì c n ph i load nh ng hình nh lên J2ME thì s làm ch ươ ng trình mình n i b t h ơn r t nhi u. Các ch c năng đã đáp ng đ ưc các yêu c u đ t ra, d s d ng. Dung l ưng b nh trên J2ME r t h n ch nên vi c x lý d li u cịn h ơi ch m. Ch ưa gi i quy t đ ưc tri t đ nh ng xung đ t tìm n trên J2ME. Trang 72
  80. CChhCh ươ ng 555:5::: TTTổng k ết – đánh giá 5.4 H ưng phát tri n Th tr ưng thi t b di đ ng h tr J2ME Vi t Nam ngày nay r t ph bi n và đa dng. Đ c bi t là chi c đi n tho i di đ ng tr nên g n bĩ m t thi t v i cu c s ng con ng ưi. Chính vì v y Vi t Nam là mt tìm năng r t l n cho các nhà phát tri n các d án ph n m m trên các thi t b di đ ng này. M c tiêu ban đ u c a chúng em khi xây d ng ch ươ ng trình này là t o đ ưc m t n n mĩng th t v ng ch c đ cĩ th d dàng phát tri n lên và đ ưa vào ng d ng th c t . Sau khĩa lu n này nhĩm em s ti p t c nghiên c u và phát tri n ng d ng này. Đ ng d ng này đ ưc đ ưa vào th c t thì chúng em xin nêu ra m t s ph ươ ng pháp và cách làm c th nh ư sau: - Thi t k l i c ơ s d li u hồn thi n h ơn - V ph n web Server ph i đăng ký m t tên mi n trên Internet. Nhân viên c a ca hàng cĩ th làm vi c t i nhà đ ưc. - Các thi t b h tr J2ME ph i k t n i Internet. - Kh c ph c m t s nh ưc đi m nh ư đã đ c p ph n trên. - Cĩ th thanh tốn ti n online Trang 73
  81. CChhCh ươ ng 555:5::: TTTổng k ết – đánh giá Mơ hình tri n khai th c t H 5.40 Mơ hình phát tri ển Vi vi c xây d ng thành cơng ng d ng này chúng em hy v ng s gĩp ph n làm cho l ĩnh v c th ươ ng m i đi n t c a chúng ta ngày càng phong phú và đa d ng h ơn. T ng d ng này c ũng cĩ th phát tri n thành nhi u ng d ng khác n a nh ư: Đ t mua vé tàu h a, máy bay, xe khách qua mơi tr ưng di đ ng. Trang 74
  82. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 PH L C Hưng d n cài đ t J2ME Wireless Toolkit 2.5 Ti n hành ch y t p tin sun_java_wireless_toolkit-2_5_1-windows.exe Đây là màn hình gi i thi u s ơ v ph n m m. Nh n Next đ ti p t c cài đ t 76
  83. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 Đây là nh ng thơng tin v b n quy n và quy đ nh s d ng ph n m m. Ch n Accept đ ti p t c cài đ t. 77
  84. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 Đ ch ươ ng trình ch y đ ưc thì c n ph i cài đ t file JDK. Trong lu n văn này chúng tơi đã tích h p JDK vào trong Jboss. Nên chúng ta ch c n ch n đ ưng d n đn file JDK trong Jboss là đ ưc. Nh n Next đ ti p t c cài đ t. 78
  85. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 Ch n đ ưng d n đ cài đ t ph n m m. Tên th ư m c WTK2.5.1 là do m c đ nh ph n m m t o ra. Chúng ta nên đ m c đ nh. Nh n Next đ ti p t c cài đ t 79
  86. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 Đ ây là màn hình đt tên cho bi u t ưng c a ph n m m. Chúng ta nên đ m c đnh đ d nh . Nh n Next đ ti p t c 80
  87. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 Nu mu n c p nh t ph n m m t nhà s n xu t thì ta đ ánh d u check vào m c Check for Product Update. Nh n Next đ ti p t c. 81
  88. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 Đ ây là nh ng thơng tin mà mình đã cài đt t b ưc đ u. N u th y ch ưa đ úng chúng ta cĩ th nh n nút Back đ quay l i ch n l i. Nh n Next đ ti p t c 82
  89. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 Đ ây là màn hình cài đt ph n m m. Chúng ta ch vi c đ i trong giây lát 83
  90. PPhhPh ụ lll ụccc:c: Hu ớnnggng dddẫnnn cccàic ààiiài dddặttt J2ME WWWirelessWireless TToooooooolkitlkit 2.5 Đ ây là màn hình thơng báo quá trình cài đt đ ã hồn t t. Nh n Finish đ k t thúc quá trình cài đ t. 84
  91. TTT ààiiài lliili ệu tham kh ảo DANH M ỤC TÀI LI ỆU THAM KH ẢO Webstie: : Trang ch a tài li u v các bài h c v l p trình J2ME : Trang ch Sun Java : Trang ch a các project thu c h th ng mã ngu n m :Trang ch a các đo n ch ươ ng trình ng d ng trên J2ME và J2EE Sách: - Nền t ảng cơng ngh ệ J2ME & MIDP Tác gi : Nguy ễn Th ị Bích Hà Nhà xu ất b ản giao thơng v ận t ải - Giáo trình mơn h ọc Java Server Pages Tác gi : Ph ạm H ữu Khang( huukhang@yahoo.com ) - Java™ 2 Micro Edition Application Development By Michael Kroll & Stefan Haustein - Wireless Java Developing with J2ME, Second Edition By Jonathan Knudsen - Java TM Servlet Specification By Danny Coward (danny.coward@sun.com ) & Yutaka Yoshida (yutaka.yoshida@sun.com ) - Enterprise J2ME: Developing Mobile Java Applications By Michael Juntao Yuan - Core Java™ 2: Volume I–Fundamentals By Cay S. Horstmann & Gary Cornell - Mastering Enterprise JavaBeans 3.0 By - Rima Patel Sriganesh - Gerald Brose - Micah Silverman - Maximizing Your Java Application Development By Rahul Kumar Gupta Trang 75