Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Làm chủ Grails: Các dịch vụ Grails và bản đồ Google pps
Nội dung xem thử
Mô tả chi tiết
Làm chủ Grails: Các dịch vụ Grails và bản đồ Google
Hòa trộn công nghệ bên ngoài vào trong một ứng dụng Grails
Scott Davis , Tổng Biên tập, AboutGroovy.com
Tóm tắt: Scott Davis cho bạn biết làm cách nào bạn có thể nhúng các bản đồ vào
một ứng dụng Grails sử dụng những dịch vụ Web và APIs sẵn có miễn phí trong
bộ cài đặt mới nhất này của Làm chủ Grails. Ông sử dụng ứng dụng mẫu lập kế
hoạch-chuyến đi từ những cài đặt trước và đưa nó tới mức tiếp theo bằng mã địa lí,
Các bản đồ Google, và những dịch vụ Grails.
Tôi đã xây dựng một ứng dụng lập kế hoạch-chuyến đi từ bài viết đầu tiên trong
loạt bài này. Giờ khung làm việc Người điều khiển-Khung nhìn-Mô hình (ModelView-Controller (MVC)) cơ bản đó đang ở đây, ta sẵn sàng để hòa trộn với những
kĩ thuật bên ngoài. Cụ thể, ta sẽ thêm một bản đồ. Tôi có thể nói, "Tôi đang đặt
một chuyến đi từ Denver tới Raleigh, với những điểm dừng ở San Jose và Seattle
dọc đường đi," nhưng một bản đồ sẽ giúp mô tả chuyến đi tốt hơn. Bạn có thể biết
rằng Seattle và Raleigh ở những phía đối diện nhau của nước Mỹ, nhưng một bản
đồ giúp bạn hình dung khoảng cách giữa hai thành phố này.
Cho bạn một ý tưởng ban đầu về ứng dụng gì sẽ làm ở phần cuối của bài viết này,
hãy vào trang http://maps.google.com và nhập mã IATA DEN trong hộp tìm kiếm.
Bạn nên kết thúc ở Sân bay Quốc tế Denver, như được biểu diễn trong Hình 1.
(Biết thêm về những mã IATA, xem bài viết của tháng trước.)
Hình 1. Sân bay Denver, nhờ Các bản đồ của Google
Bên cạnh việc hiển thị các sân bay của Mỹ bạn tạo một bảng HTML, lập kế hoạchchuyến đi cũng sẽ vẽ được các sân bay trên một bản đồ. Tôi sẽ sử dụng API Các
bản đồ Google miễn phí trong bài viết này. Bạn có thể sử dụng API Các bản đồ
Yahoo! miễn phí hoặc bất kỳ cái nào khác (xem Tài nguyên). Một khi bạn hiểu
những điều cơ bản về bản đồ Web trực tuyến, bạn sẽ hiểu rằng các API khác nhau
có thể hoán đổi cho nhau một cách hợp lí. Trước khi bạn có thể ánh xạ một phần
của giải pháp, bạn cần hiểu làm thế nào để một chuỗi ba kí tự đơn giản như DEN
biến đổi thành một điểm trên bản đồ
Mã địa lí
Khi bạn nhập DEN vào Các bản đồ Google, ứng dụng thực hiện một phép biến đổi
nhỏ đằng sau. Bạn có thể nghĩ tới những địa phương về mặt địa chỉ đường phố
như Đường 123 Main, nhưng các bản đồ Google cần một điểm vĩ độ/kinh độ để
hiển thị nó trên bản đồ. Hơn nữa bắt buộc bạn cung cấp điểm vĩ độ/kinh độ của
mình, nó dịch các địa chỉ người dùng có thể đọc được vào những vĩ độ/kinh độ
thay cho bạn. Phép biến đổi này được gọi là mã địa lí (geocoding) (xem Tài
nguyên).
Về bài viết này
Grails là một khung làm việc phát triển Web hiện đại mà hòa trộn với các kỹ thuật
Java™ quen thuộc như Spring và Hibernate với các thực hành đương thời như quy
ước qua cấu hình. Ghi vào Groovy, Grails cho bạn sự tích hợp liền một mạch với
mã Java của bạn trong khi việc thêm một cách mềm dẻo và linh động của một
ngôn ngữ tập lệnh. Sau khi bạn học Grails, bạn sẽ không bao giờ nhìn việc phát
triển Web lại theo cách tương tự.
Một phép biến đổi tương tự xảy ra khi bạn lướt Web. Về kỹ thuật, cách duy nhất
để liên lạc với một máy chủ Web từ xa là địa chỉ IP của máy chủ cung cấp. May
thay, bạn không cần nhập địa chỉ IP của mình. Bạn nhập một URL thân thiện vào
trình duyệt Web của bạn, và nó thực hiện việc gọi máy chủ Hệ thống Tên Miền
(Domain Name System (DNS)). Máy chủ DNS đổi URL thành địa chỉ IP tương
ứng, và trình duyệt thực hiện kết nối HTTP tới máy chủ từ xa. Tất cả điều này là
trong suốt với người dùng. DNS thực hiện Web vô cùng dễ dàng để sử dụng.
Những trình sinh mã địa lí (geocoder) thực hiện việc tương tự cho các ứng dụng
bản đồ dựa trên Web.
Tìm kiếm Web nhanh trên trình sinh mã địa kí miễn phí mang lại một số khả năng
phù hợp với nhu cầu mã hóa địa lí của những người lập kế hoạch chuyến đi. Cả
Google và Yahoo! cung cấp các dịch vụ mã địa lý như một phần tiêu chuẩn của