Giới thiệu Spring MVC (Spring Web MVC)

20 328 9
Giới thiệu Spring MVC (Spring Web MVC)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Spring MVC là một Framework 1 Project mã nguồn mở của Spring. Spring MVC Framewrok cung cấp kiến truc MVC (ModelViewController) và các component được sử dụng để phát triển các ứng dụng web một cách linh hoạt và giảm sư

Spring MVC Mục lục I Spring Framework Giới thiệuSpring Framework, hay ngắn Spring, framework mã nguồn mở viết Java Nó xem giải pháp kiến trúc tốt Java EE • Theo thiết kế, khung hình giải phóng lập trình viên dùng Java, cho phép họ nhiều quyền tự • Đồng thời cung cấp giải pháp tiện lợi, đầy đủ dẫn chứng tài liệu, dễ dàng sử dụng, phù hợp với thực hành thông dụng công nghệ phần mềm Các module − Spring đóng vai trò tầng business − Spring tổ chức thành modules : 2.1 Core Container • Core package phần framework, cung cấp đặc tính IoC (Inversion of Control: Khung chứa đảo ngược khống chế) Dependency Injection • Khái niệm BeanFactory - cài đặt factory pattern cho phép bạn móc nối phụ thuộc 2.2 đối tượng file cấu hình Spring Context/Application Context • Phía Core package Context package - cung • cấp cách để truy cập đối tượng Context package kết thừa đặc tính từ bean package thêm vào chức đa ngôn ngữ (I18N), truyền 2.3 kiện, resource-loading, Spring AOP (Aspect Oriented Programming) • Spring AOP module tích hợp chức lập trình hướng khía cạnh vào Spring framework thơng qua cấu hình Spring AOP module cung cấp dịch vụ quản lý giao dịch cho đối tượng ứng dụng sử dụng Spring Với Spring AOP tích hợp declarative transaction management vào ứng dụng mà khơng cần dựa vào EJB • component Spring AOP module đưa lập trình metadata vào Spring Sử dụng thêm annotation (chú thích) vào source code để hướng dẫn Spring làm để liên hệ với aspect (Khía cạnh 2.4 khác) Spring DAO • DAO package cung cấp cho tầng JDBC, bỏ bớt coding dài dòng JDBC chuyển đổi mã lỗi xác định database vendor JDBC package cung cấp cách lập trình tốt declarative transaction management • Tầng JDBC DAO đưa phân cấp exception để quản lý kết nối đến database, điều khiển exception thông báo lỗi ném vendor database Tầng exception đơn giản điều khiển lỗi giảm khối lượng code mà cần viết mở đóng kết nối Module cung cấp dịch vụ quản lý giao dịch cho đối tượng ứng dụng Spring 2.5 Spring ORM • ORM package cung cấp tầng tích hợp với objectrelational mapping API bao gồm: JDO, Hibernate, iBatis • Sử dụng ORM package bạn sử dụng tất object-relational mapping kết hợp với tất đặc tính Spring declarative transaction 2.6 management Spring Web module • Spring Web package cung cấp đặc tính web như: chức file-upload, khởi tạo IoC container sử dụng trình lắng nghe serlvet web-oriented application • context Nằm application context module, cung cấp context cho ứng dụng web Spring hỗ trợ tích hợp với Struts, JSF Webwork Web module làm giảm bớt công việc điều khiển nhiều request gắn tham số request vào đối tượng 2.7 domain Spring MVC Framework • Spring Framework ứng dụng mã nguồn mở phổ biến cho Java EE phát triển dễ dàng Nó bao gồm container, framework cho thành phần quản lý, snap-in dịch vụ cho giao diện người dùng web, giao dịch,… Một phần Spring Framework Spring Web MVC, mơ hình • MVC mở rộng để tạo ứng dụng web MVC Framework cài đặt đầy đủ đặc tính MVC pattern để xây dựng ứng dụng Web MVC framework cấu hình thông qua giao diện chứa số kỹ thuật view bao gồm: JSP, Velocity, Tiles generation of PDF Excel file Spring MVC framework cung cấp phân biệt rõ ràng domain model web form Lý sử dụng • Tất framework tích hợp tốt vào Spring • Hoạt động tốt áp dụng theo kiến trúc MVC • Sử dụng chế plug-in • II Kết hợp tốt với O/R (object-relational) Mapping frameworks Hibernate • Dễ Testing ứng dụng • Ít phức tạp so với framework khác • Cộng đồng người sử dụng nhiều, nhiều sách xuất Spring Web MVC Mơ hình MVC 1.1 − Model (Mơ hình) Mơ hình gồm lớp java có nhiệm vụ: • Biểu diễn data cho phép truy cập tới để get set data (JAVABEAN), Thường phần layer mơ cách đầy đủ đối tượng từ giới thực Nhận yêu cầu từ khung nhìn Thi hành u cầu (tính tốn, kết nối CSDL …) Trả giá trị tính tốn theo u cầu Controller View (khung nhìn) : • Bao gồm mã tương tự JSP, HTML, CSS, • • • 1.2 XML, Javascript, JSON… để hiển thị giao diện người dùng, 1.3 liệu trả từ Model thông qua Controller… Controller (Bộ điều khiển) : • Đồng hố Khung nhìn Mơ hình Tức với trang JSP tương ứng với lớp java để xử lý ngược lại, kết trả trang jsp nào.Nó đóng vai trò điều tiết View Model • Như vậy, tách biệt mã java khỏi mã html Do vậy, giải khó khăn nêu Mơ hình Người thiết kế giao diện người lập trình java có • thể mang tính chất độc lập tương đối Việc debug hay bảo trì dễ dàng hơn, việc thay đổi theme trang web dễ dàng … Spring MVC • Framework Spring thùng chứa nhẹ hỗ trợ nhiều framework thư viện Nó cho phép nhà phát triển trộn kết hợp nhiều framework phát triển triển khai ứng dụng Các Spring MVC có lợi từ Spring framework cung cấp lần tốt cho framework hiệu cho phát • triển ứng dụng web Các MVC Spring framework phát triển web dựa mẫu thiết kế MVC (Model View Controller) Các tính framework Spring MVC Pluggable công nghệ View Injection dịch vụ vào điều khiển Các khái niệm liên quan 3.1 Inversion of Control Container (IoC container) : IProcess IProcess AProcess AProcess Service Service BProcess BProcess • Hai package: org.springframework.beans org.springframework.context cung cấp IoC container cho Spring framework Giao tiếp BeanFactory cung cấp kỹ thuật cấu hình • nâng cao, có khả quản lý đối tượng Giao tiếp ApplicationContext kế thừa từ BeanFactory thêm vài chức khác tích hợp với đặc tính Spring AOP, truyền kiện, application context WebApplicationContext sử dụng ứng dụng web • Hiệu chỉnh components chương trình quản lý vòng đời (lifecycle) đối tượng Java 3.2 Bean : • Các đối tượng ứng dụng quản lý IoC container gọi bean Một bean đơn giản đối tượng khởi tạo, phân phát quản lý IoC container Sự phụ thuộc chúng phản ánh configuration • metadata sử dụng container Giao tiếp org.springframework.beans.factory.BeanFactory IoC container chịu trách nhiệm chứa, khởi tạo, quản lý móc nối • phụ thuộc bean Một cài đặt (kế thừa) BeanFactory XmlBeanFactory nhận XML configuration metadata sử dụng để cấu hình cho ứng dụng • Configuration metadata có định dạng XML (hoặc properties), sử dụng để viết bean definitions cho bean mà bạn muốn IoC container quản lý • Ở mức cấu hình IoC container phải chứa bean mà container phải quản lý Khi sử dụng XML-based configuration metadata, bean cấu nhiều element bên element Các bean tương ứng 3.3 với đối tượng tạo ứng dụng Dependency Injection (DI) : • • Kiểm sốt ứng dụng, Liên kết đối tượng lại với Tất thơng tin ứng dụng cấu hình file xml dó dễ dàng thay đổi , mở rộng ứng dụng kiến trúc plug-in creates • Đối tượng A tạo đối tượng B,C phụ thuộc vào A không liên kết chặt chẽ với A setC(IC) • Một đối tượng A chứa phương thức setter accept interfaces to objects B and C Điều đạt với hàm đối tượng A chấp nhận đối tượng B C • Là đối tượng định nghĩa phụ thuộc chúng thông qua tham số phương thức khởi tạo (constructor) thuộc tính thiết lập thể (instance) sau khởi tạo trả từ phương thức factory Sau cơng việc container, đảo ngược phụ thuộc tạo bean Do • 3.3.1 • • • có tên Inversion of Control (IoC) Có hai biến thể DI là: Setter Injection Constructor Injection Setter Injection: Cho đoạn code sau : my@email.address Đoạn code tương ứng với đoạn code sau : Person person = new Person(); person.setEmail(“my@email.address”); Khởi tạo đối tượng Person gán giá trị email cho Được nhận phương thức setter bean sau triệu gọi phương thức khởi tạo không tham số phương thức static factory không tham số để khởi tạo bean 3.3.2 Constuctor injection: • Được nhận cách triệu gọi phương thức khởi tạo với số tham số • Một biến thể khác thay cho constructor sử dụng phương thức static factory để trả thể đối tượng 10

Ngày đăng: 10/05/2019, 12:34

Từ khóa liên quan

Mục lục

  • I. Spring Framework.

    • 1. Giới thiệu.

    • 2. Các module chính.

      • 2.1. Core Container.

      • 2.2. Spring Context/Application Context.

      • 2.3. Spring AOP (Aspect Oriented Programming).

      • 2.4. Spring DAO.

      • 2.5. Spring ORM.

      • 2.6. Spring Web module.

      • 2.7. Spring MVC Framework.

      • 3. Lý do sử dụng.

      • II. Spring Web MVC.

        • 1. Mô hình MVC.

          • 1.1. Model (Mô hình).

          • 1.2. View (khung nhìn) :

          • 1.3. Controller (Bộ điều khiển) :

          • 2. Spring MVC.

          • 3. Các khái niệm liên quan.

            • 3.1. Inversion of Control Container (IoC container) :

            • 3.2. Bean : 

            • 3.3. Dependency Injection (DI) : 

              • 3.3.1. Setter Injection:

              • 3.3.2. Constuctor injection: 

              • 3.4.   Application Context : 

                • 3.4.1.1. ClassPathXmlApplicationContext:

                • 3.4.1.2. FileSystemXmlApplicationContext:

                • 3.4.1.3. XmlWebApplicationContext:

Tài liệu cùng người dùng

Tài liệu liên quan