PHẦN I: STRUTS 7 I. Giới thiệu về Struts 8 II. Lịch sử phát triển của Struts 8 III. Tóm tắt về Struts 8 IV. Tóm tắt cấu hình Struts 9 V. Các đặc tính của Struts 10 VI. Các dự án ứng dụng Struts 11 VII. Struts cho người mới 12 PHẦN II: SPRING 13 I. Java EE 14 II. Tổng Quan Về Spring Framework 16 III. Đích Của Spring Framework 17 IV. Lịch Sử Của Spring Framework 17 V. Những Thành Phần Trong Spring 19 VI. Introduction 20 PHẦN III: JAVASERVER FACES 28 I. Giới thiệu 29 II. Đặc điểm của JSF 29 III. Vai trò của Framework 30 IV. Giới thiệu các thành phần của JSF 31 V. Các thành phần chính của JSF 31 VI. Vòng đời của việc xử lý request 32 VII. Managed Beans 33 PHẦN IV: JFX 40 I. Giới thiệu 41 II. Những đặc điểm nổi bật của JavaFX 41 III. JavaFX Platform Components 44 IV. Công Cụ Phát Triển 45 PHẦN V: GROOVY 48 I. Giới thiệu 49 II. Groovy là gì? 49 III. Groovy 50 IV. Lịch Sử phát triển 50 V. Sức mạnh của Groovy 51 VI. Ứng dụng cua Groovy on Grails. 52 VII. Các tính năng 55 PHẦN VI: TOMCAT AND GLASSFISH 57 I. Giới thiệu sơ lược về tomcat và glassfish 58 II. So sánh GlassFish và Tomcat 62 PHẦN VII: HIBERNATE 65 I. Khái Niệm 66 II. Cài Đặt 67 III. Sử Dụng 67
ISAS QUARTER 7 - MMS V2 NIIT CAN THO 2 CLASS B120002 THÔNG TIN BÁO CÁO KĨ NĂNG TÌM KIẾM VÀ PHÂN TÍCH THÔNG TIN Mã lớp: B120002 Ngày bắt đầu: 21/11/2011 Ngày kết thúc: 3/12/2011 Tên giảng viên: Thầy Phạm Tiến Phúc Học viên thực hiện: Nguyễn Đức Cường Huỳnh Văn Sol Huỳnh Thuỷ Ngân Bùi Anh Vũ Trịnh Thành Tài Huỳnh Minh Tính Nguyễn Minh Nhựt Date of Submission: 5/12/2011 ISAS QUARTER 7 - MMS V2 NIIT CAN THO 3 CLASS B120002 CHỨNG NHẬN Đây là chứng nhận bài báo cáo này được hoàn thành bởi nhóm 1 theo yêu cầu trong khóa đào tạo của NIIT. Giảng viên: Phạm Tiến Phúc ISAS QUARTER 7 - MMS V2 NIIT CAN THO 4 CLASS B120002 TÀI LIỆU THAM KHẢO http://www.struts.apache.org/ http://www.springsource.org/documentation http://www.jfxonline.com/ http://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html http://www.tomcat.apache.org/ http://blackbery4a.wordpress.com/2009/11/26/so-sanh-apache-tomcat-va-glassfish/ ISAS QUARTER 7 - MMS V2 NIIT CAN THO 5 CLASS B120002 MỤC LỤC THÔNG TIN BÁO CÁO KĨ NĂNG TÌM KIẾM VÀ PHÂN TÍCH THÔNG TIN 2 CHỨNG NHẬN 3 TÀI LIỆU THAM KHẢO 4 MỤC LỤC 5 PHẦN I: STRUTS 7 I. Giới thiệu về Struts 8 II. Lịch sử phát triển của Struts 8 III. Tóm tắt về Struts 8 IV. Tóm tắt cấu hình Struts 9 V. Các đặc tính của Struts 10 VI. Các dự án ứng dụng Struts 11 VII. Struts cho người mới 12 PHẦN II: SPRING 13 I. Java EE 14 II. Tổng Quan Về Spring Framework 16 III. Đích Của Spring Framework 17 IV. Lịch Sử Của Spring Framework 17 V. Những Thành Phần Trong Spring 19 VI. Introduction 20 PHẦN III: JAVASERVER FACES 28 I. Giới thiệu 29 II. Đặc điểm của JSF 29 III. Vai trò của Framework 30 IV. Giới thiệu các thành phần của JSF 31 V. Các thành phần chính của JSF 31 VI. Vòng đời của việc xử lý request 32 ISAS QUARTER 7 - MMS V2 NIIT CAN THO 6 CLASS B120002 VII. Managed Beans 33 PHẦN IV: JFX 40 I. Giới thiệu 41 II. Những đặc điểm nổi bật của JavaFX 41 III. JavaFX Platform Components 44 IV. Công Cụ Phát Triển 45 PHẦN V: GROOVY 48 I. Giới thiệu 49 II. Groovy là gì? 49 III. Groovy 50 IV. Lịch Sử phát triển 50 V. Sức mạnh của Groovy 51 VI. Ứng dụng cua Groovy on Grails. 52 VII. Các tính năng 55 PHẦN VI: TOMCAT AND GLASSFISH 57 I. Giới thiệu sơ lược về tomcat và glassfish 58 II. So sánh GlassFish và Tomcat 62 PHẦN VII: HIBERNATE 65 I. Khái Niệm 66 II. Cài Đặt 67 III. Sử Dụng 67 NHẬN XÉT CỦA GIẢNG VIÊN 76 ISAS QUARTER 7 - MMS V2 NIIT CAN THO 7 CLASS B120002 PHẦN I: STRUTS I. Giới thiệu về Struts II. Lịch sử phát triển của Struts III. Tóm tắt về Struts IV. Tóm tắt cấu hình Struts V. Các đặc tính của Struts VI. Các dự án ứng dụng Struts VII. Struts cho người mới ISAS QUARTER 7 - MMS V2 NIIT CAN THO 8 CLASS B120002 I. Giới thiệu về Struts Struts là một framework web mã nguồn mở được phát triển cho Java EE web application.Struts sử dụng và mở rộng Java Servlet API theo hướng kiến trúc MVC(model-view-controller). Struts được khởi xướng bởi Craig McClanahan và sau đó được bảo trợ bởi Apache Foundation vào tháng 5 năm 2000. Vào thời gian đầu Struts được biết thông qua Apache Jakarta Project hay còn gọi là Jakarta Struts nhưng dần sau đó chuyển thành project chính của Apache vào năm 2005. Struts có 2 phiên bản là version 1 và version 2. Version 1 là phát triển web theo kiểu truyền thống. Còn version 2 là được Apache Struts tạo ra từ 1 nhánh của webwork. II. Lịch sử phát triển của Struts Apache Struts Project được khởi xướng bởi Craig R. McClanahan vào tháng 5 năm 2000 cung cấp một chuẩn MVC web cho những người phát triển Java. Vào tháng 7 năm 2001 phiên bản Struts1.0 đã ra đời. Struts version 2 ra đời bản đầu tiên vào tháng 12 năm 2006. Hiện tại version mới nhất của Struts 1 và 2 là: Struts 1.3.10 và Struts 2.1.6. III. Tóm tắt về Struts Framework của web này cung cấp điều khiển thành phần của nó và tích hợp với các công nghệ khác để cung cấp các Model và các View. Đối với các Model, framework có thể tương tác với các công nghệ truy cập dữ liệu chuẩn như JDBC và EJB, cũng như hầu hết các gói phần mềm của bên thứ ba, nhưHibernate, iBATIS, hoặc Object Relational Bridge. Đối với View, Framework các hoạt động tốt vớiJavaServer Pages, bao gồm JSTL và JSF, cũng như Velocity Templates, XSLT, và các hệ thống trình diễn khác. Framework là Controller hoạt động như một cầu nối giữa các Model của ứng dụng và các View web. Khi yêu cầu được nhận, điều khiển các gọi phương thức một lớp học Action. Các Action tham vấn class với Model (hoặc, tốt hơn, một Facade đại diện Model của bạn) để kiểm tra hoặc cập nhật trạng thái của ứng dụng. Framework này cung cấp một lớp ActionForm để giúp truyền dữ liệu giữa Model và View. Thông thường, các Model được thể hiện như là một tập hợp các JavaBeans. Thường, các nhà phát triển sẽ sử dụng BeanUtils Commons để truyền dữ liệu giữa các ActionForms và các đối tượng ISAS QUARTER 7 - MMS V2 NIIT CAN THO 9 CLASS B120002 Model (hoặc một Facade). Tốt hơn, mô hình sẽ làm "dỡ bỏ nặng nề", và các Action sẽ hoạt động như một "cảnh sát giao thông" hoặc adapter. IV. Tóm tắt về cấu hình trong Struts Một ứng dụng web sử dụng một mô tả triển khai để khởi tạo tài nguyên như servlets và taglibs. Các mô tả triển khai được định dạng như là một tài liệu XML và đặt tên là "web.xml". Tương tự như vậy, Framework sử dụng một file cấu hình để khởi tạo nguồn lực của mình. Những tài nguyên này bao gồm các ActionForms để thu thập đầu vào từ người dùng, ActionMappings nhập trực tiếp tới hành động phía máy chủ, và ActionForwards để chọn trang đầu ra. Dưới đây là một cấu hình đơn giản (struts-config.xml) cho một công việc đăng nhập: <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd"> <struts-config> <form-beans> <form-bean name="logonForm" type="app.LogonForm"/> </form-beans> <action-mappings> <action path="/Welcome" forward="/pages/Welcome.jsp" /> <action path="/Logon" forward="/pages/Logon.jsp" /> <action path="/LogonSubmit" type="app.LogonAction" name="logonForm" scope="request" validate="true" input="/pages/Logon.jsp" > <forward name="success" path="/pages/Welcome.jsp" /> <forward name="failure" path="/pages/Logon.jsp" /> </action> <action path="/Logoff" type="app.LogoffAction" > <forward name="success" path="/pages/Logoff.jsp" /> </action> </action-mappings> <message-resources parameter="resources.application"/> </struts-config> Có một số tài nguyên khác mà bạn có thể chỉ định trong tập tin cấu hình của Framework. Bạn có thể chỉ định xác nhận cho các ActionForms trong một mô tả XML, bằng cách sử dụng Struts Validator. Một phần mở rộng theo tiêu chuẩn, Tiles, giúp bạn xây dựng các trang từ các mảnh nhỏ hơn. ISAS QUARTER 7 - MMS V2 NIIT CAN THO 10 CLASS B120002 Struts được mở rộng. Mỗi class được triển khai bởi Framework có thể được thay thế bằng các class mặc định của riêng bạn. Các thuộc tính của lớp mặc định của bạn có thể được thiết lập bằng cách sử dụng các tính năng properties này. Đây là một trong những lý do tại sao có phần mở rộng đóng góp rất nhiều. Chúng tôi cung cấp framework cơ bản, nhưng bạn vẫn có thể viết các ứng dụng của bạn theo cách của bạn. Để biết thêm về Framework và các công nghệ cơ bản của nó, hãy xem hướng dẫn sử dụng. V. Các đặc tính của Struts 1. Là một web MCV framework đầu tiên. Trước khi Struts ra đời thì việc phát triển các ứng dụng web cho người lập trình Java là dựa vào công nghệ Jsp/Serverlet do Sun Microsoft System đặt tả. Trong quá trình phát triển bằng Jsp/Servlet thì người lập trình cũng đã mất rất nhiều khó khăn trong việc lấy các dữ liệu theo từng request, giao tiếp giữu các trang, quan hệ giữa các phần xử lý logic và phần hiển thị chưa thật sự phân bố rõ rang khiến cho việc phát triển rất nặng nhọc và khó quản lý. Struts ra đời bằng việc kế thừa và mở rộng các Java Servlet API nhưng theo các hướng đối tượng hơn theo mẫu thiết kế MVC. Struts phân chia việc xử lý theo dạng từng action một và tách biệt phần xử lý và phần hiển thị ra nên việc phát triển tương đối thuận lợi và dễ dàng hơn. Các thành phần của Struts: - Struts Controller Components: đóng vai trò nhận các giá trị input từ client, gọi những phương thức để thực thi nghiệp vụ bussiness, trả dữ liệu về và chọn phần view phù hợp để hiển thị. - Struts Model Components: bao gồm các lớp cần thiết để xử lý những phương thức bussiness, ngoài ra còn có các lớp DTOs(Data Transfer Objects), các lớp truy xuất cơ sở dữ liệu… - Struts View Components: đây là phần hiển thị của ứng dụng web bao gồm các file HTML, các phần data transfer object, JSP, custom tabs, quản lý các tài nguyên…. ISAS QUARTER 7 - MMS V2 NIIT CAN THO 11 CLASS B120002 2. Tính tương thích và kết hợp: Strust có thể tương thích với các framework khác như hibernate, Spring… Đối với struts2 thì việc phát triển ứng dụng web đặt biệt dễ dàng hơn và kết hợp với các framework khác cũng dễ dàng hơn bằng việc viết thêm các plugin. Struts hỗ trợ tốt cho các công nghệ view khác nhau như: Jsp, Velocicty, Freemarker, Tile. 3. Hỗ trợ đa ngôn ngữ Struts framework có hỗ trợ việc đa ngôn ngữ rất tốt thông qua việc cấu hình các tại nguyên trong file struts-config.xml. 4. Hỗ trợ ajax Struts hỗ trợ ajax bằng cách viết hoàn toàn thuần javascript và json hoặc có thể sử dụng các thư viện ajax như: DWR, Prototypes.js, jQuery… 5. Hỗ trợ Annotation validate và intercepter đối với Struts2 Struts2 có hỗ trợ việc validation trực tiếp trong source code Java bằng các cú pháp anotation của Java5. Ngoài ra Struts2 còn được thừa hưởng tính năng hỗ trợ intercepter của Webwork giúp người phát triển có thể dễ dàng thực hiện những công việc phức tạp theo hướng lập trình AOP. VI. Các dự án ứng dụng Struts - Để cung cấp các ứng dụng ví dụ Struts. - Để lưu trữ Struts phần mở rộng và các tiện ích. - Để đưa mã ra nơi mà các cộng đồng có thể sử dụng nó, sửa chữa nó, và duy trì nó. Struts dự án ứng dụng hiện nay bao gồm các tiểu dự án sau đây: - AppFuse - Một ứng dụng cơ bản Struts được sử dụng cho các ứng dụng web trong tương lai. - Thăm dò ý kiến - Một cuộc khảo sát quản lý ứng dụng Struts. [...]... org.springframework.ldap.ldif.support org.springframework.ldap.odm 27 CLASS B120002 ISAS QUARTER 7 - MMS V2 NIIT CAN THO PHẦN III: JAVASERVER FACES I II III IV V VI VII Giới thiệu Đặc điểm của JSF Vai trò của Framework Giới thiệu các thành phần của JSF Các thành phần chính của JSF Vòng đời của việc xử lý request Managed Beans 28 CLASS B120002 ISAS QUARTER 7 - MMS V2 I NIIT CAN THO Giới thiệu - Công nghệ Java Server... xét mồi công nghệ chính, và nghiên cứu bất kỳ chủ đề quen thuộc 12 CLASS B120002 ISAS QUARTER 7 - MMS V2 NIIT CAN THO PHẦN II: SPRING VII VIII IX X XI XII Java EE Tổng Quan Về Spring Framework Đích Của Spring Framework Lịch Sử Của Spring Framework Những Thành Phần Trong Spring Introduction 13 CLASS B120002 ISAS QUARTER 7 - MMS V2 I NIIT CAN THO Java EE : - Java 2 Platform, Enterprise Edition (Nền tảng... ngày, và tiếp theo đó cuộc hội thảo ở Antwerp vào tháng 6 năm 2006, thu hút hơn 400 người V Những Thành Phần Trong Spring : - Spring framework chứa nhiều đặc tính, được tổ chứa thành 7 modules: 19 CLASS B120002 ISAS QUARTER 7 - MMS V2 NIIT CAN THO - Core package : là phần cơ bản nhất của framework, cung cấp những đặc tính IoC và Dependency Injection Khái niệm cơ bản là BeanFactory - cài đặt factory pattern... ApplicationContext context = new FileSystemXmlApplicationContext("bean.xml"); 25 CLASS B120002 ISAS QUARTER 7 - MMS V2 NIIT CAN THO 3 XmlWebApplicationContext: Nó sẽ load các định nghĩa context từ XML file trong ứng dụng web Spring thì nhẹ về cả kích cỡ và chi phí Toàn bộ framework có thể được phân phát trong JAR file chỉ hơn 1.7MB Chi phí được yêu cầu bởi Spring thì không đáng kể Và Spring không ràng buộc, ví... đều do Java Servlet API và Enterprise JavaBean cung cấp Cả hai đều là đặc tả do Sun Microsystems kiến tạo với sự cộng tác của các nhà buôn bán phần mềm và các bên quan tâm, và chúng rất 17 CLASS B120002 ISAS QUARTER 7 - MMS V2 - - - - - - NIIT CAN THO được mến chuộng trong cộng đồng Java Những trình ứng dụng không dùng cho mạng WEB như các ứng dụng trình khách (client-based application) hay các ứng.. .ISAS QUARTER 7 - MMS V2 NIIT CAN THO - Gọi hành động Struts Framework (SAIF) - Thêm các tính năng như hành động đánh chặn và Inversion of Control (IoC) cho Struts - Struts BSF - Một hành động thực hiện Struts... trong 2004, Spring Framework được rất nhiều người hưởng ứng và làm theo và cũng do tự chính nó cống hiến khung hình lập trình định dạng (aspect-oriented programming) (AOP) Spring 18 CLASS B120002 ISAS QUARTER 7 - MMS V2 NIIT CAN THO Framework đã tạo cơ hội cho mẫu hình lập trình này trở nên được ưa thích trong cộng đồng Java - Năm 2005 cho thấy mức độ hưởng ứng nâng cao hơn những năm trước, nguyên do... của nó Điều này có nghĩa là các nhà phát triển có thể tập trung vào các lôgic thương mại của các thành phần thay vì phải quan tâm đến cơ sở hạ tầng và các nhiệm vụ tích hợp khác 14 CLASS B120002 ISAS QUARTER 7 - MMS V2 NIIT CAN THO - Các API của Java EE chứa đựng một số kỹ thuật được mở rộng thêm từ những chức năng trong các API của Java SE javax.ejb.* : API về chủ thể cấp kinh doanh (Enterprise Java... hình nâng cao, có khả năng quản lý các đối tượng Giao tiếp ApplicationContext kế thừa từ BeanFactory và thêm một vài chức năng khác như tích hợp với đặc tính Spring AOP, truyền 20 CLASS B120002 ISAS QUARTER 7 - MMS V2 NIIT CAN THO sự kiện, application context như WebApplicationContext sử dụng trong ứng dụng web - Container và beans: Các đối tượng trong ứng dụng được quản lý bởi IoC container được gọi... id=" " class=" "> 21 CLASS B120002 ISAS QUARTER 7 - MMS V2 NIIT CAN THO - Khởi tạo một container : Khởi tạo IoC container thì rất dễ, sau đây là một ví dụ về cách khởi tạo nó: Resource resource = . GLASSFISH 57 I. Giới thiệu sơ lược về tomcat và glassfish 58 II. So sánh GlassFish và Tomcat 62 PHẦN VII: HIBERNATE 65 I. Khái Niệm 66 II. Cài Đặt 67 III. Sử Dụng 67 NHẬN XÉT CỦA GIẢNG VIÊN 76 . Khái Niệm 66 II. Cài Đặt 67 III. Sử Dụng 67 NHẬN XÉT CỦA GIẢNG VIÊN 76 ISAS QUARTER 7 - MMS V2 NIIT CAN THO 7 CLASS B120002 PHẦN I: STRUTS I. Giới thiệu về Struts II. Lịch sử phát. bản 1.0 đánh dấu mốc thành đạt đầu tiên được xuất bản vào tháng 3 năm 2004. ISAS QUARTER 7 - MMS V2 NIIT CAN THO 17 CLASS B120002 III. Mục Đích Của Spring Framework : - Là một hình thức chủ