Áp dụng kiến trúc MVC xây dựng ứng dụng triển khai thực tế.
MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Trang 1 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM YZ Xây Dựng Phần Mềm Hướng Đối Tượng ĐỀ ÁN MÔN Tên Đề Án : MVC Architecture & Struts Framework In Java(J2EE) GVHD : Trần Minh Triết SV thực hiện : • Võ Đức Thiện (06hc418) • Nguyễn Trí Toàn (06hc425) • Nguyễn Thành Trực (06hc437) Tháng 10/2007 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Mục Lục Phần I : Tổng quan ngôn ngữ java .4 1. Lịch sử phát triển của Java .4 2. Mục đích của Java .4 3. Đặc điểm của Java 4 4. Các loại chương trình trong java .5 5. Các thành phần của Java Environment 5 6. Các loại ứng dụng java .5 Phần II : Môi Trường Phát Triển Ứng Dụng Java 6 1. Khái niệm 6 2. Kiến trúc Eclipse 6 3. The Platform runtime .7 4. The workspace .7 5. The Workbench 7 6. Team support .7 7. Help .7 Phần III : Giới thiệu J2EE và các thành phần liên quan .8 1. Applet .8 2. JavaBean 9 3. JSP . 10 4. Servlets .11 Phần IV : Kiến trúc MVC (Model _View_Controller) .13 1. Khái niệm .13 2. Mối quan hệ giữa View và controller 14 3. Mối quan hệ giữa Model và view 14 4. Các lợi điểm của MVC 15 5. Hạn chế của MVC 15 Phần V : Áp dụng kiến trúc MVC xây dựng ứng dụng triển khai thực tế .16 1. Qui trình thực hiện 16 1.1. View .16 1.2. Controller .17 1.3. Model 20 2. Triển khai ứng dụng 23 2.1. Cơ sở dữ liệu .23 2.2. Bố trí các tập tin trên Eclipse 23 2.3. Kết quả 24 Phần VI : Struts Framework .25 1. Struts 1.0 25 1.1. Khái niệm 25 1.2. Cấu trúc của Struts 26 1.3. Các thành phần chính của một ứng dụng Struts .27 1.4. Các file cấu hình cần thiết để xây dựng một ứng dụng Struts 27 1.5. Ưu điểm của Struts (so với MVC sử dụng RequestDispatcher) .28 1.6. Nhược điểm của Struts 28 2. Struts 2.0 29 Trang 2 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Phần VI: Áp dụng kiến trúc MVC xây dựng ứng dụng triển khai thực tế 30 1. Qui trình thực hiện .30 1.1. Các trang hiển thị(View) 30 1.2.Action 37 1.3.Bean 40 1.4.Utils 46 1.5.Struts.xml 47 1.6.Build.xml 49 2 . Triển Khai Ứng Dụng .50 2.1.Cơ sở dữ liệu .50 2.2. Bố trí các tập tin trên Eclipse 50 Website Tham Khảo www.vietcore.net¾ www.javavietnam.org ¾ www.sun.java.com ¾ www.apache.com ¾ www.manguon.com ¾ Trang 3 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Phần I Tổng quan ngôn ngữ java 1. Lịch sử phát triển của Java • Ra đời tại Sun Microsystems bởi James Gosling • 1991: Version đầu tiên với tên “Oak” • 1995: Tên chính thức là Java 2. Mục đích của Java: • Dùng để phát triển ứng dụng cho các thiết bị điện tử “thông minh” • Tạo các trang web có nội dung động (web applet) • Hiện nay, Java được sử dụng để phát triển nhiều loại ứng dụng khác nhau: cơ sở dữ liệu, mạng, Internet, viễn thông . 3. Đặc điểm của Java : • Giống C/C++ • Đơn giản • Object-oriented, hướng đối tượng • Platform-independent, không phụ thuộc nền • Mạnh • Secure, bảo mật • Distributed, phân bố • Multithreaded, xử lý đa luồng • Dynamic, động Chương trình dịch cổ điển Trang 4 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Chương trình dịch trong java 4. Các loại chương trình trong java : • Applets • Command Line Applications • GUI Applications • Servlets • Database Applications 5. Các thành phần của Java Environment • Java language • Bytecode definitions • Java/Sun class libraries • Java Virtual Machine • Structure of .class files 6. Các loại ứng dụng java : • J2SE : Java 2 Standard Edition (Dùng để phát triển các ứng dụng vừa và nhỏ) • J2EE : Java 2 Enterprise Edition (Dùng để phát triển các ứng dụng lớn) • J2ME : Java 2 Micro Edition (Dụng để phát triển các ứng dụng trên đtdd) Trang 5 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Phần II Môi Trường Phát Triển Ứng Dụng Java 1. Khái niệm : Eclipse là phần mềm miễn phí, được các nhà phát triển sử dụng để xây dựng những ứng dụng J2EE, sử dụng Eclipse nhà phát triển có thể tích hợp với nhiều công cụ hỗ trợ khác để có được một bộ công cụ hòan chỉnh mà không cần dùng đến phần mềm riêng nào khác.Eclipse SDK bao gồm 3 phần chính : Platform, Java Development Toolkit (JDT), Plug-in Development Environment (PDE). Với JDT, Eclipse được xem như là một môi trường hỗ trợ phát triển Java mạnh mẽ. PDE hỗ trợ việc mở rộng Eclipse, tích hợp các Plug-in vào Eclipse Platform. Eclipse Platform là nền tảng của toàn bộ phần mềm Eclipse, mục đích của nó là cung cấp những dịch vụ cần thiết cho việc tích hợp những bộ công cụ phát triển phần mếm khách dưới dạng Plug-in, bản thân JDT cũng có thể được coi như là một Plug-in làm cho Eclipse như là một Java IDE (Integrated Development Enviroment). 2. Kiến trúc Eclipse : Trang 6 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 3. The Platform runtime : • Công việc chính của Platform runtime là phát xem plug-in nào đang có trong thư mục plug-in của Eclipse.Mỗi Plug-in đều có 1 tập tin Manifest liệt kê những kết nối mà plug-in cần.Pug-in chỉ được tải vào Eclipse mỗi khi thực sự cần thiết để giảm lượng tài nguyên yêu cầu và thời gian khởi tạo. 4. The workspace : • Workspace chịu trách nhiệm quản lý tài nguyên người dùng được tồ chức dưới dạng Project. Mỗi Project là một thư mục con trong thư mục Workspace. • Workspace bảo quản cấp thấp lịch sử những sự thay đổi tài nguyên, tránh thất thoát tài nguyên người dùng. • Workspace đồng thời chịu trách nhiệm thông bào những công cụ cấn thiết cho việc thay đổi tài nguyên. 5. The Workbench : • Workbench là giao diện đồ họa người dùng của Eclipse, gồm có Standard Widget Toolkit (SWT) và JFace. Eclipse không hòan toàn bắt buộc phải sử dụng SWT hay Jface để lập trình giao diện, bạn vẫn có thể sử dụng AWT hay SWING của Java thông qua việc cài đặt các Plug-ins. 6. Team support : • Trang bị hệ thống quản trị để quản lý dự án của người dùng : Concurrent Versions System (CVS). 7. Help : • Cung cấp hệ thống tài liệu mở rộng, có thể là định dạng HTML hay XML. Cửa sổ chính của eclipse3.2 Trang 7 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Phần III Giới thiệu J2EE và các thành phần liên quan (Applet , JavaBean , JSP , Servlet , EJB) Là 1 thành phần rất quan trọng và rộng lớn trong lĩnh vực java , J2EE được dùng để phát triển các ứng dụng lớn mang tính chất phân tán rộng 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ế. Sơ đồ các thành phần trong J2EE 1. Applet : • là một chương trình Java chạy trên web browser • Tất cả các applets phải là lớp con của lớp Applet hoặc JApplet • Để tạo ra một applet, ta phải import: ¾ java.applet ¾ java.awt • Một applet có 4 phương thức. Mỗi phương thức được tự động gọi khi có event tương ứng. • Methods: • init( ) • start( ) • stop( ) • destroy( ) Trang 8 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Sự khác nhau giữa Applet và Application • Applications chạy bằng Java interpreter, còn applets chạy trên browser có hổ trợ Java, hoặc dùng ‘AppletViewer’ có trong JDK. • Việc thực hiện một applications bắt đầu trong hàm ‘main()’. Còn applet thì không cần hàm main. • Applications dùng ‘System.out.println()’ để xuất, trong khi applets dùng hàm ‘drawString()’ để hiển thị. • Các hạn chế về Security trên Applets • Không thể đọc hoặc viết các file trên hệ thống file của user. • Không thể trao đổi với một site trên. • Không thể chạy được các chương trình trên hệ thống hiện hành • Không thể tải bất kỳ chương trình được lưu trữ trên hệ thống của user. 2. JavaBean: JavaBeans là software component model Nó có thể tương tác với các đối tượng của các software khác và có thể được dùng lại Các software components mà có thể dùng lại này được gọi là ‘beans’ Components được dùng trong distributed environments. JavaBeans được thiết kế để dùng khi cần. Java thường xây dựng các software thông qua các JavaBeans. Khi mà Java Beans được tạo ra, thì chúng có thể được dùng như một thư viện không phụ thuộc nền Trang 9 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Các qui tắc để tạo ra một Beans Là một class. phải có một default constructor. Có ít nhất một thuộc tính và là non-public Các thuộc tính được truy xuất từ bên ngoài thông qua các hàm getXXX và setXXX. 3. JSP : (Java Server Pages) JSP technology đươc xây dựng trên ngôn ngư lap trình Java No thừa ke tat ca cac ưu điem cũng như cac đac tính cua ngôn ngư Java. JSP co the dung trên tat ca cac platforms Cách làm việc của JSP Các bước xử lý của 1 request Trang 10 [...]... tập tin trên Eclipse : Trang 23 10/2007 MVC Architecture & Struts Framework in J2EE (Java) 2.3 Kết quả: Trang 24 10/2007 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Phần VI Struts Framework 1 Struts 1.0: 1.1 Khái niệm : • Struts là một MVC Framework: Struts cung cấp một framework thống nhất để deploy các ứng dụng Servlet và JSP sử dụng kiến trúc MVC • Struts là một tập các Utilities: Struts. .. Spring, Ajax…) Sử dụng các Interceptor Tích hợp Inversion of Control Trang 29 MVC Architecture & Struts Framework in J2EE (Java) 10/2007 Phần VI Áp dụng Struts 2.0 Framework xây dựng ứng dụng triển khai thực tế Chương trình: Quản Lý Nhân Viên Minh họa chức năng cập nhật tài khoản I Qui trình thực hiện : 1 Các trang hiển thị (View) Index.jsp