Giáo trình Lập trình Java - Bài 1: Giới thiệu Spring MVC

Giới thiệu Spring Framework Xử lý request trong Spring MVC Thiết lập hệ thống phát triển ứng dụng web Tích hợp tomcat vào eclipse IDE Tạo dự án web Dự án Spring MVC Cấu hình ứng dụng Tạo Controller Tạo JSP Làm việc với các đối tượng web Truyền dữ liệu từ Controller sang View

pdf49 trang | Chia sẻ: huongthu9 | Lượt xem: 811 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Giáo trình Lập trình Java - Bài 1: Giới thiệu Spring MVC, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
LẬP TRÌNH JAVA 5 BÀI 1: GIỚI THIỆU SPRING MVC MỤC TIÊU Hiểu Spring Framework Nắm mô hình hoạt động Spring MVC Thiết lập môi trường Tạo dự án Spring MVC Tạo Controller Tạo View Cấu hình ứng dụng Làm việc với các đối tượng web Truyền dữ liệu từ Controller sang View GIỚI THIỆU SPRING FRAMEWORK Spring framework là nền tảng mã nguồn mở. Nó cung cấp cơ sở hạ tầng toàn diện để phát triển ứng dụng Java một cách mạnh mẽ, rất dễ dàng và nhanh chóng. Spring framework được tạo bởi Rod Johnson và được giới thiệu vào tháng 6 năm 2003. Spring là framework phát triển ứng dụng Java phổ biến nhất đối với doanh nghiệp. Spring Framework được hàng triệu nhà phát triển ứng dụng trên toàn thế giới sử dụng để tạo ra các sản phẩm phần mềm với hiệu suất cao, dễ dàng kiểm chứng, tái sử dụng mã. KIẾN TRÚC SPRING FRAMEWORK THÀNH PHẦN SPRING FRAMEWORK Spring Core Cung cấp nền tảng cơ bản của hệ thống ứng dụng Spring Spring AOP Cung cấp nền tảng cho lập trình hướng khía cạnh Spring DAO Cung cấp dụng vụ đối tượng truy xuất dữ liệu Spring Context Cung cấp dịch vụ truy cập từ xa như JNDI, EJB Spring MVC Nền tảng ứng dụng web theo mô hình MVC Spring ORM Cung cấp dịch vụ ánh xạ đối tượng quan hệ dự liệu Spring Web Cung cấp dịch vụ tích hợp các framework web khác XỬ LÝ REQUEST TRONG SPRING MVC DIỄN GIẢI QUI TRÌNH XỬ LÝ REQUEST DispatcherServlet tiếp nhận mọi yêu cầu từ người dùng và thực hiện điều phối qua 4 bước sau 1. Chuyển URL cho bộ phận Handler Mapping để lấy action method muốn gọi 2. Gọi action method trong Controller và nhận kết quả 3. Chuyển kết quả cho bộ phận ViewResolver để lấy đường dẫn View 4. Gọi View để kết xuất kết quả cho client THIẾT LẬP MÔI TRƯỜNG PHÁT TRIỂN Môi trường cần thiết cho khóa học JDK 7+ là nền tảng bắt buộc cho việc phát triển và chạy ứng dụng Java Eclipse for JavaEE developer là một IDE được sử dụng phổ biến nhất ở các doanh nghiệp sản xuất phần mềm để phát triển ứng dụng web với Java Tomcat 8x là web server được sử dụng để triển khai ứng dụng web SQL Server 2008+ là hệ quản trị CSDL quan hệ được sử dụng để lưu trữ và quản lý dữ liệu THIẾT LẬP MÔI TRƯỜNG Download JDK và cài đặt  b15/jdk-8u112-windows-x64.exe Download SQL Server Express và cài đặt  A-CEF7-4D8E-8C16- D9F69527F909/ENU/x64/SQLManagementStudio_x64_ENU. exe Download Eclipse và giải nén vào thư mục thích hợp  nology/epp/downloads/release/mars/R/eclipse-jee-mars-R- win32-x86_64.zip&mirror_id=448 Download Tomcat và giải nén vào thư mục thích hợp  8/v8.5.8/bin/apache-tomcat-8.5.8-windows-x64.zip TÍCH HỢP TOMCAT VÀO ECLIPSE IDE (1) Chạy eclipse và tắt cửa sổ chào TÍCH HỢP TOMCAT VÀO ECLIPSE IDE (2) Thêm mới web server vào eclipse TÍCH HỢP TOMCAT VÀO ECLIPSE IDE (3) TÍCH HỢP TOMCAT VÀO ECLIPSE IDE (4) Thay thế port tomcat tránh đụng port khi chạy Nhấp đúp TÍCH HỢP TOMCAT VÀO ECLIPSE IDE (5) Start Tomcat TẠO DỰ ÁN WEB (1) TẠO DỰ ÁN WEB (2) TỔ CHỨC DỰ ÁN WEB Các file mã nguồn Java đặt ở thư mục src Các file jsp, ảnh, scripts, styles đặt ở WebContent Các file thư viện (*.jar) đặt tại thư mục lib File web.xml là file cấu hình ứng dụng web CHỌN TRÌNH DUYỆT NGOÀI Mặc định eclipse sử dụng trình duyệt nội bộ (không đủ mạnh để xử lý css và javascript) TẠO TRANG JSP CHẠY TRANG JSP Có thể chạy jsp bằng cách nhấp phải chuột lên trang jsp sau đó chọn Run as > Run on server Hiệu chỉnh mã jsp theo chuẩn HTML5 DEMOTạo dự án web Tạo trang JSP, chuẩn HTML5 Chạy trang JSP Chọn trình duyệt ngoài Chạy JSP DỰ ÁN SPRING MVC Để dự án hoạt động theo Spring MVC cần Các thư viện liên quan (*.jar) Cấu hình đúng (*.xml) Viết mã theo đúng qui ước TỔ CHỨC DỰ ÁN SPRING MVC View Thư viện Cấu hình Spring MVC Cấu hình web Controller THƯ VIỆN SPRING MVC Thư viện cần thiết cho ứng dụng web nói chung và Spring MVC nói riêng phải được đặt trong thư mục /WEB-INF/lib CẤU HÌNH DỰ ÁN SPRING MVC web.xml là file cấu hình ứng dụng web Khai báo DispatcherServlet Tiếp nhận và điều phối yêu cầu từ người dùng Khai báo CharacterEncodingFilter Xử lý chế độ mã hóa ký tự Khai báo spring-config-mvc.xml Cấu hình Spring MVC spring-config-mvc.xml là file cấu hình Spring MVC Cấu hình ứng dụng Spring MVC Khai báo Controller Khai báo ViewResolver web.xml spring-config-mvc.xml Controllers Views CẤU HÌNH ỨNG DỤNG WEB Khai báo DispatcherServlet Khai báo CharacterEncodingFilter KHAI BÁO DISPATCHERSERVLET Sử dụng dấu * để chỉ ra rằng tất cả các file xml đặt vào thư mục /WEB- INF/configs đều được xem như là file cấu hình Spring và được nạp vào ứng dụng Tất cả các URL kết thúc bởi .htm đều được DispatcherServlet tiếp nhận và xử lý KHAI BÁO CHARACTERENCODINGFILTER CharacterEncodingFilter cho phép ứng dụng web làm việc với utf-8 (tiếng Việt) CẤU TRÚC FILE CẤU HÌNH SPRING Các namespace và schema qui định cú pháp thẻ trong file cấu hình SPRING-CONFIG-MVC.XML Cho phép sử dụng Annotation trong ứng dụng Spring View = prefix + viewname + suffix Chỉ rõ gói chứa các Controller. Sử dụng dấu phẩy để phân cách các gói HELLOCONTROLLER Tên giao dịch Tên view Chú thích lớp Controller HELLO.JSP CHẠY Chạy index.jsp sau đó nhập lại url như sau  Sau đây là kết quả phản hồi Xem mã nguồn QUI TRÌNH XỬ LÝ SAY-HELLO.HTM say-h e llo .h tm say-h ello .h tm H ello C o n tro ller sayH ello () H ello C o n tro ller sayH ello () h e llo h e llo /view s/h e llo .jsp /view s/h ello .jsp h tm l h tm l LƯU Ý VIEWRESOLVER prefix + view + suffix /WEB-INF/views/hello.jsp DEMO Chạy và giới thiệu dự án Spring MVC + Thư viện + Cấu hình + Controller + View QUI TRÌNH XỬ LÝ SAY-HELLO.HTM DispatcherServlet sẽ nhận request với URL kết thúc .htm 1. Chuyển say-hello.htm cho Handler Mapping và sẽ nhận được sayHello() của HelloController (do phương thức này được map với tên say-hello) 2. Gọi sayHello() của HelloController và nhận được “hello” (do phương thức này return “hello”) 3. Chuyển “hello” cho ViewResolver và nhận được “/WEB-INF/views/hello.jsp” (do ghép nối prefix + hello + suffix) 4. Gọi hello.jsp và nhận kết quả HTML sau cùng là phản hội cho người dùng LẬP TRÌNH JAVA 5 PHẦN 2 ĐỐI TƯỢNG WEB Trong lập trình Servlet/JSP chúng ta đã được làm việc với các thành phần web sau HttpServletRequest Gói dữ liệu gửi từ client và chia sẽ cho nhiều Servlet/JSP hoạt động trên một request HttpServletResponse Gói dữ liệu chuyển về client HttpSession Phạm vi chia sẽ dữ liệu theo từng phiên làm việc khác nhau ServletContext Phạm vi chia sẽ dữ liệu trên toàn ứng dụng LÀM VIỆC VỚI CÁC ĐỐI TƯỢNG WEB TRONG SPRING MVC Trong Spring MVC bạn có thể truy xuất các đối tượng web một cách dễ dàng bằng cách định nghĩa chúng như những đối số của action method hoặc sử dụng @Autowire. Khi bạn muốn làm việc với đối tượng nào bạn chỉ việc khai báo đối tượng đó như đối số của action method. Đối với ServletContext bạn sử dụng @Autowired để tham chiếu đến TÌNH HUỐNG ĐĂNG NHẬP XÂY DỰNG USERCONTROLLER Sử dụng request để nhận tham số và chia sẽ dữ liệu Nhận tham số Chia sẽ dữ liệu View này chứa form View này hiển thị thông tin user XÂY DỰNG CÁC VIEW Hiển thì dữ liệu truyền từ action Hiển thì dữ liệu truyền từ action user/login.jsp user/info.jsp DEMO Chạy và giải thích user/form.htm TRUYỀN DỮ LIỆU TỪ CONTROLLER SANG VIEW Bạn có thể sử dụng request.setAttribute(name, value) để truyền dữ liệu cho View Trong Spring MVC bạn có phương án khác chuẩn tắc hơn là sử dụng ModelMap làm đối số action method thay vì sử dụng HttpServletRequest Trong JSP bạn có thể sử dụng để truy xuất hoặc có thể sử dụng biểu thức EL ${name} để truy xuất TRUYỀN DỮ LIỆU CHO VIEW DEMO Hiệu chỉnh action login theo hướng dẫn sau Thêm đối số ModelMap model Thay request.setAttribute() bằng model.addAttribute() TỔNG KẾT NỘI DUNG BÀI HỌC Giới thiệu Spring Framework Xử lý request trong Spring MVC Thiết lập hệ thống phát triển ứng dụng web Tích hợp tomcat vào eclipse IDE Tạo dự án web Dự án Spring MVC Cấu hình ứng dụng Tạo Controller Tạo JSP Làm việc với các đối tượng web Truyền dữ liệu từ Controller sang View

Các file đính kèm theo tài liệu này:

  • pdfgiao_trinh_lap_trinh_java_bai_1_gioi_thieu_spring_mvc.pdf