Giới thiệu Spring Roo, Phần 5: Viết các add-on bao đóng và nâng cao cho Spring Roo
Số trang: 19
Loại file: pdf
Dung lượng: 172.84 KB
Lượt xem: 12
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Giới thiệu về add-on nâng cao Add-on nâng cao cho phép Spring Roo làm mọi thứ mà một add-on đơn giản có thể làm, như cập nhật một tệp POM của Maven với các phụ thuộc hoặc các plug-in, cập nhật hoặc thêm các tệp cấu hình cộng với tăng cường các kiểu Java hiện có và đưa vào các kiểu Java mới bằng cách sử dụng các ITD của AspectJ. Khả năng thêm mã nguồn làm cho các add-on nâng cao rất mạnh mẽ so với tất cả các add-on khác. ...
Nội dung trích xuất từ tài liệu:
Giới thiệu Spring Roo, Phần 5: Viết các add-on bao đóng và nâng cao cho Spring RooGiới thiệu Spring Roo, Phần 5: Viết các add-on bao đóng và nâng cao cho Spring RooGiới thiệu về add-on nâng caoAdd-on nâng cao cho phép Spring Roo làm mọi thứ mà một add-on đơn giản có thể làm, như cậpnhật một tệp POM của Maven với các phụ thuộc hoặc các plug-in, cập nhật hoặc thêm các tệpcấu hình cộng với tăng cường các kiểu Java hiện có và đưa vào các kiểu Java mới bằng cách sửdụng các ITD của AspectJ. Khả năng thêm mã nguồn làm cho các add-on nâng cao rất mạnh mẽso với tất cả các add-on khác. Trước khi bạn tạo một add-on nâng cao Spring Roo, hãy xem xétmột add-on nâng cao hiện có do Spring Roo cung cấp.Về đầu trangHoạt động của Add-on nâng caoMột add-on nâng cao là JPA, thực hiện công việc liên quan đến sự tồn tại lâu bền, có nghĩa là,thêm sự hỗ trợ cho các cơ sở dữ liệu và tạo ra các thực thể mới. Để thấy JPA này đang hoạtđộng, hãy mở trình shell của Roo và thực hiện các lệnh trong Liệt kê 1. Trong bài này, tôi sửdụng phiên bản Spring Roo 1.2.0.M1.Liệt kê 1. Ví dụ JPAproject --topLevelPackage com.dw.demo --projectName entity-demojpa setup --database FIREBIRD --provider HIBERNATEentity --class ~.domain.BookCả hai lệnh jpa setup (thiết lập jpa) và lệnh entity (thực thể) đều tương ứng với một add-onnâng cao được gọi là org.springframework.roo.addon.jpa. Kết quả của lệnh jpa setup vàlệnh entity trên trình shell của Roo cho phép phân biệt rõ giữa các add-on đơn giản và nângcao. Liệt kê 2 cho thấy kết quả của lệnh set JPA.Liệt kê 2. Kết quả của lệnh set JPACreated SRC_MAIN_RESOURCES/META-INF/spring/database.propertiesUpdated ROOT/pom.xml [added dependencies ...]Updated SRC_MAIN_RESOURCES/META-INF/spring/applicationContext.xmlCreated SRC_MAIN_RESOURCES/META-INF/persistence.xmlKết quả của lệnh jpa setup cho thấy nó đang thực hiện các chức năng cấu hình, chẳng hạn nhưthêm các phụ thuộc vào pom.xml, cập nhật Spring applicationContext.xml và tạo ra tệppersistence.xml đặc trưng-tồn tại lâu bền. Ở đây đã giả sử rằng lệnh JPA setup tương ứng vớimột add-on đơn giản vì nó không tạo ra hoặc cập nhật mã nguồn Java. Hãy sử dụng add-on đơngiản cho các kịch bản tương tự như kịch bản thiết lập được hiển thị ở trên.Liệt kê 3 cho thấy kết quả của lệnh entity.Liệt kê 3. Kết quả của lệnhCreated SRC_MAIN_JAVA/com/dw/demo/domainCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book.javaCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book_Roo_Configurable.ajCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book_Roo_Jpa_Entity.ajCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book_Roo_Entity.ajCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book_Roo_ToString.ajKết quả trên cho thấy việc tạo ra một tệp Java gọi là Book.java và 4 tệp *.aj. Quy tắc vàng để xácđịnh một add-on nâng cao là việc tạo ra các tệp Java hoặc các tệp *.aj hoặc cả hai, như trongtrường hợp của lệnh entity. Các tệp *Roo_*.aj này được gọi là các ITD (Inter-type Declarations– Các khai báo giữa các kiểu). Các ITD cho phép một kiểu (một khía cạnh) khai báo cho mộtkiểu khác, có nghĩa là, bạn có thể sửa đổi cấu trúc tĩnh của bất kỳ kiểu nào bằng cách thêm cácphương thức, các trường hoặc thay đổi hệ thống phân cấp kiểu của chúng. Roo sử dụng một ITDlàm một tạo phẩm tạo mã và quản lý chúng trong suốt vòng đời của chúng. Các ITD cho phépRoo tạo mã trong một đơn vị biên dịch riêng biệt, nhưng chúng được kết hợp vào trong cùng mộtlớp đã biên dịch.Sau khi xem kết quả của lệnh entity, hãy xem các tạo phẩm này (các tệp .java và .aj) được SpringRoo tạo ra như thế nào. Xem Liệt kê 4 để biết một ví dụ mẫu của một tệp Book.java.Liệt kê 4. Một tệp Book.javapackage com.dw.demo.domain;import org.springframework.roo.addon.entity.RooEntity;import org.springframework.roo.addon.javabean.RooJavaBean;import org.springframework.roo.addon.tostring.RooToString;@RooJavaBean@RooToString@RooEntitypublic class Book {}Tệp Java này trông bình thường, ngoại trừ các chú thích trên lớp. Khi xem xét các tên của cácchú thích và các tệp .aj, rõ ràng là một số các chú thích tương ứng với chức năng được các tệp .ajthêm vào. Ví dụ, RooToString tương ứng với tệp Book_Roo_ToString.aj và nó thêm phươngthức toString(). RooEntity tương ứng với Book_Roo_Entity aj, Book_Roo_Jpa_Entity vàcác phương thức liên quan đến tồn tại lâu bền. Tạm thời bây giờ bạn có thể để yên phần còn lại.Để hiểu chú thích dẫn đến việc tạo các ITD ra sao, hãy khám phá cách Spring Roo cung cấp cácchức năng của add-on nâng cao. 1. Trong lúc khởi động trình shell của Roo, nó sẽ quét tất cả các lớp và đăng ký tất cả các lớp nào thực hiện giao diện CommandMarker. Giao diện CommandMarker cho Roo biết rằng các lớp này sẽ định nghĩa các lệnh mà add-on này có thể thực hiện. 2. Tất cả các add-on nâng cao đăng ký các dịch vụ của chúng với thời gian chạy OSGi được cung cấp bởi Spring Roo. Các dịch vụ này chỉ rõ các điều kiện ...
Nội dung trích xuất từ tài liệu:
Giới thiệu Spring Roo, Phần 5: Viết các add-on bao đóng và nâng cao cho Spring RooGiới thiệu Spring Roo, Phần 5: Viết các add-on bao đóng và nâng cao cho Spring RooGiới thiệu về add-on nâng caoAdd-on nâng cao cho phép Spring Roo làm mọi thứ mà một add-on đơn giản có thể làm, như cậpnhật một tệp POM của Maven với các phụ thuộc hoặc các plug-in, cập nhật hoặc thêm các tệpcấu hình cộng với tăng cường các kiểu Java hiện có và đưa vào các kiểu Java mới bằng cách sửdụng các ITD của AspectJ. Khả năng thêm mã nguồn làm cho các add-on nâng cao rất mạnh mẽso với tất cả các add-on khác. Trước khi bạn tạo một add-on nâng cao Spring Roo, hãy xem xétmột add-on nâng cao hiện có do Spring Roo cung cấp.Về đầu trangHoạt động của Add-on nâng caoMột add-on nâng cao là JPA, thực hiện công việc liên quan đến sự tồn tại lâu bền, có nghĩa là,thêm sự hỗ trợ cho các cơ sở dữ liệu và tạo ra các thực thể mới. Để thấy JPA này đang hoạtđộng, hãy mở trình shell của Roo và thực hiện các lệnh trong Liệt kê 1. Trong bài này, tôi sửdụng phiên bản Spring Roo 1.2.0.M1.Liệt kê 1. Ví dụ JPAproject --topLevelPackage com.dw.demo --projectName entity-demojpa setup --database FIREBIRD --provider HIBERNATEentity --class ~.domain.BookCả hai lệnh jpa setup (thiết lập jpa) và lệnh entity (thực thể) đều tương ứng với một add-onnâng cao được gọi là org.springframework.roo.addon.jpa. Kết quả của lệnh jpa setup vàlệnh entity trên trình shell của Roo cho phép phân biệt rõ giữa các add-on đơn giản và nângcao. Liệt kê 2 cho thấy kết quả của lệnh set JPA.Liệt kê 2. Kết quả của lệnh set JPACreated SRC_MAIN_RESOURCES/META-INF/spring/database.propertiesUpdated ROOT/pom.xml [added dependencies ...]Updated SRC_MAIN_RESOURCES/META-INF/spring/applicationContext.xmlCreated SRC_MAIN_RESOURCES/META-INF/persistence.xmlKết quả của lệnh jpa setup cho thấy nó đang thực hiện các chức năng cấu hình, chẳng hạn nhưthêm các phụ thuộc vào pom.xml, cập nhật Spring applicationContext.xml và tạo ra tệppersistence.xml đặc trưng-tồn tại lâu bền. Ở đây đã giả sử rằng lệnh JPA setup tương ứng vớimột add-on đơn giản vì nó không tạo ra hoặc cập nhật mã nguồn Java. Hãy sử dụng add-on đơngiản cho các kịch bản tương tự như kịch bản thiết lập được hiển thị ở trên.Liệt kê 3 cho thấy kết quả của lệnh entity.Liệt kê 3. Kết quả của lệnhCreated SRC_MAIN_JAVA/com/dw/demo/domainCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book.javaCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book_Roo_Configurable.ajCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book_Roo_Jpa_Entity.ajCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book_Roo_Entity.ajCreated SRC_MAIN_JAVA/com/dw/demo/domain/Book_Roo_ToString.ajKết quả trên cho thấy việc tạo ra một tệp Java gọi là Book.java và 4 tệp *.aj. Quy tắc vàng để xácđịnh một add-on nâng cao là việc tạo ra các tệp Java hoặc các tệp *.aj hoặc cả hai, như trongtrường hợp của lệnh entity. Các tệp *Roo_*.aj này được gọi là các ITD (Inter-type Declarations– Các khai báo giữa các kiểu). Các ITD cho phép một kiểu (một khía cạnh) khai báo cho mộtkiểu khác, có nghĩa là, bạn có thể sửa đổi cấu trúc tĩnh của bất kỳ kiểu nào bằng cách thêm cácphương thức, các trường hoặc thay đổi hệ thống phân cấp kiểu của chúng. Roo sử dụng một ITDlàm một tạo phẩm tạo mã và quản lý chúng trong suốt vòng đời của chúng. Các ITD cho phépRoo tạo mã trong một đơn vị biên dịch riêng biệt, nhưng chúng được kết hợp vào trong cùng mộtlớp đã biên dịch.Sau khi xem kết quả của lệnh entity, hãy xem các tạo phẩm này (các tệp .java và .aj) được SpringRoo tạo ra như thế nào. Xem Liệt kê 4 để biết một ví dụ mẫu của một tệp Book.java.Liệt kê 4. Một tệp Book.javapackage com.dw.demo.domain;import org.springframework.roo.addon.entity.RooEntity;import org.springframework.roo.addon.javabean.RooJavaBean;import org.springframework.roo.addon.tostring.RooToString;@RooJavaBean@RooToString@RooEntitypublic class Book {}Tệp Java này trông bình thường, ngoại trừ các chú thích trên lớp. Khi xem xét các tên của cácchú thích và các tệp .aj, rõ ràng là một số các chú thích tương ứng với chức năng được các tệp .ajthêm vào. Ví dụ, RooToString tương ứng với tệp Book_Roo_ToString.aj và nó thêm phươngthức toString(). RooEntity tương ứng với Book_Roo_Entity aj, Book_Roo_Jpa_Entity vàcác phương thức liên quan đến tồn tại lâu bền. Tạm thời bây giờ bạn có thể để yên phần còn lại.Để hiểu chú thích dẫn đến việc tạo các ITD ra sao, hãy khám phá cách Spring Roo cung cấp cácchức năng của add-on nâng cao. 1. Trong lúc khởi động trình shell của Roo, nó sẽ quét tất cả các lớp và đăng ký tất cả các lớp nào thực hiện giao diện CommandMarker. Giao diện CommandMarker cho Roo biết rằng các lớp này sẽ định nghĩa các lệnh mà add-on này có thể thực hiện. 2. Tất cả các add-on nâng cao đăng ký các dịch vụ của chúng với thời gian chạy OSGi được cung cấp bởi Spring Roo. Các dịch vụ này chỉ rõ các điều kiện ...
Tìm kiếm theo từ khóa liên quan:
Giới thiệu Spring Roo Viết các add-on bao đóng nâng cao cho Spring Roo hệ quản trị cơ sở dữ liệu lập trình XML cơ sở dữ liệu nâng caoTài liệu có liên quan:
-
Giáo án Tin học lớp 12 (Trọn bộ cả năm)
180 trang 308 0 0 -
Thực hiện truy vấn không gian với WebGIS
8 trang 280 0 0 -
Đề cương chi tiết học phần Quản trị cơ sở dữ liệu (Database Management Systems - DBMS)
14 trang 254 0 0 -
69 trang 151 0 0
-
Tiểu luận môn Cơ sở dữ liệu nâng cao: Mã hóa cơ sở dữ liệu Database Encryption
16 trang 143 0 0 -
57 trang 90 0 0
-
Bài giảng Khái niệm về hệ cơ sở dữ liệu: Bài 2 - Hệ quản trị cơ sở dữ liệu
13 trang 88 0 0 -
34 trang 85 0 0
-
Giáo trình Hệ quản trị cơ sở dữ liệu - Trần Thiên Thành
130 trang 83 0 0 -
Phát triển Java 2.0: Phân tích dữ liệu lớn bằng MapReduce của Hadoop
12 trang 77 0 0