1. Trang chủ
  2. » Công Nghệ Thông Tin

Máy ứng dụng của Google cho Java: Phần 1: Rồ máy lên!

39 6 0

Đ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

Nội dung

Máy ứng dụng của Google cho Java: Phần 1: Rồ máy lên! Xây dựng các ứng dụng sát thủ dựa trên Java, mở rộng được với Máy ứng dụng cho Java Rick Hightower , Giám đốc, eBlox Tóm tắt: Bạn có nhớ khi mà Máy ứng dụng của Google (Google App Engine) chỉ dành cho những người lập trình Python (Pythonistas) không? Những ngày đen tối. Google Inc đã mở nền tảng điện toán đám mây của mình cho các nhà phát triển Java™ trong tháng 4 năm 2009. Trong loạt bài viết ba phần này, Rick Hightower, một huấn...

Máy ứng dụng Google cho Java: Phần 1: Rồ máy lên! Xây dựng ứng dụng sát thủ dựa Java, mở rộng với Máy ứng dụng cho Java Rick Hightower , Giám đốc, eBlox Tóm tắt: Bạn có nhớ mà Máy ứng dụng Google (Google App Engine) dành cho người lập trình Python (Pythonistas) không? Những ngày đen tối Google Inc mở tảng điện tốn đám mây cho nhà phát triển Java™ tháng năm 2009 Trong loạt viết ba phần này, Rick Hightower, huấn luyện viên tác giả viết công nghệ Java giúp bạn bắt đầu với tảng tin cậy, vững chãi đầy vui thú để phát triển ứng dụng dựa Java Trong này, bạn có tổng quan lý Máy ứng dụng Google cho Java tảng để tiếp tục phát triển ứng dụng sát thủ (N.D: “killer app” tiếng lóng lập trình viên, để ứng dụng viết tài tình, đặc biệt hữu ích, hàm ý giống sát thủ người chơi trò chơi điện tử), có khả mở rộng cao bạn, sau bắt đầu sử dụng trình cắm thêm (Plugin) Google cho Eclipse để xây dựng hai ứng dụng ví dụ: dựa cơng cụ Web Google (Google Web Toolkit - GWT) dựa API Servlet Java Bạn tự tìm hiểu Máy ứng dụng Google cho Java làm nên khác biệt nào, việc xây dựng ứng dụng từ đầu lẫn việc triển khai dành cho số người truy cập lên đến năm triệu (Và phiên miễn phí.) Một ý tưởng giống chỗ ngứa: bạn cần phải gãi cảm thấy thỏa mãn Với vai trò nhà phát triển phần mềm, dành nhiều thời gian nghĩ ý tưởng cho loại ứng dụng khác Thật vui, phải khơng? Nhưng khó tìm cách để làm cho sản phẩm phần mềm đơm hoa kết trái Thật hài lòng tưởng tượng sau tạo Cịn trái lại (một chỗ ngứa khơng gãi) khó chịu thật Một lý làm cho nhiều ứng dụng không phát triển cần có sở hạ tầng Một sở hạ tầng trì tốt thường liên quan đến đội nhà quản trị hệ thống, nhà quản trị sở liệu (DBA) kỹ sư mạng, mà gần đây, hoạt động kinh doanh chủ yếu dành cho người giàu Thậm chí trả tiền cho bên thứ ba lưu trú ứng dụng bạn khơng đơn giản: điều xảy nhiên ứng dụng tiếng tăng vọt có nhiều lượt truy cập? Cái gọi hiệu ứng Slashdot (sự kiện số người truy cập đến trang Web tăng vọt) vứt ý tưởng tốt vào hố rác, đơn giản thật khó dự đoán đột biến tải Tuy nhiên, biết, điều thay đổi Những tiền đề cho dịch vụ Web phát triển lên ngày mang lại cho phương tiện, thơng qua điện tốn đám mây người anh em tráng kiện nó, tảng-như là-một dịch vụ (PAAS - platform-as-a-service), để xây dựng, triển khai phân phối ứng dụng dễ dàng Bây giờ, bạn viết Twitter (dịch vụ mạng xã hội miễn phí) triển khai tảng đám mây, mở rộng, bạn thân mến ạ, mở rộng Trong viết ba phần này, bạn học qua thực hành điện toán đám mây/PAAS bước nhảy tiến hóa quan trọng cho phát triển phần mềm, đồng thời bắt đầu với tảng thú vị để phát triển Java: Máy ứng dụng Google cho Java, sẵn có dạng phiên xem trước Tơi bắt đầu với tổng quan Máy ứng dụng (App Engine) cho Java, bao gồm kiểu dịch vụ ứng dụng mà cung cấp Sau bạn thẳng vào ví dụ ứng dụng — ví dụ hai ví dụ — cách sử dụng trình cắm thêm Google cho Eclipse làm Máy ứng dụng cho Java Ví dụ ứng dụng sử dụng hỗ trợ Máy ứng dụng cho Java giao diện lập trình ứng dụng (API) dành cho Servlet Java ví dụ ứng dụng thứ hai sử dụng hỗ trợ cơng cụ Web Google (GWT) Trong Phần 2, bạn tạo ứng dụng quản lý liên lạc nhỏ cách sử dụng hỗ trợ Máy ứng dụng cho Java servlet GWT, tương ứng Và Phần 3, bạn sử dụng ứng dụng xây dựng tuỳ chỉnh bạn để khám phá hỗ trợ lưu giữ lâu bền dựa Java Máy ứng dụng cho Java, hỗ trợ dựa đối tượng liệu Java (Java Data Objects-JDO) API dành cho lưu giữ lâu bền Java (Java Persistence API - JPA) Thơi, nói đủ: Hãy rồ máy lên! Về Máy ứng dụng Google cho Java Google (tôi tin nhà sản xuất số dạng máy tìm kiếm) phát hành Máy ứng dụng Google tháng năm 2008 Thật thất vọng với nhiều nhà phát triển Java, phát hành túy lĩnh vực lập trình viên Python — người cho khoảng trống nên sử dụng cho khối! (Tôi viết sách Python, tơi biết rõ) Google đáp lại yêu cầu đông đảo người cách phát hành Máy ứng dụng Google cho Java tháng năm 2009 Máy ứng dụng Google cho Java cung cấp giải pháp xuyên suốt từ đầu đến cuối để phát triển ứng dụng Java doanh nghiệp: giao diện người dùng đồ họa (GUI) Ajax dựa trình duyệt cho dễ sử dụng, hỗ trợ công cụ Eclipse Máy ứng dụng Google mặt sau Tính dễ sử dụng có cơng cụ đầy đủ lợi Máy ứng dụng Google cho Java so với giải pháp điện toán đám mây khác Phát triển ứng dụng Máy ứng dụng cho Java có nghĩa sử dụng nguồn tài nguyên Google để lưu trữ lấy đối tượng Java Lưu trữ liệu dựa BigTable, với giao diện JDO JPA cho phép bạn viết mã mà không bị ràng buộc trực tiếp với BigTable Trong thực tế, Google cung cấp hỗ trợ dựa tiêu chuẩn cho nhiều API để bạn viết mã mà không bị ràng buộc 100% với tảng Máy ứng dụng cho Java Máy ứng dụng cho Java dựa Java API tiêu chuẩn sau đây:  java.net.URL để tìm nạp dịch vụ (bằng cách giao tiếp với máy chủ khác, sử dụng giao thức HTTP HTTPS)  JavaMail để gửi thông điệp thư điện tử  Một giao diện JCache (JSR 107) cho nhớ truy cập nhanh (Memcache) để cung cấp lưu trữ phân tán tạm thời, nhanh chóng để lưu trữ nhớ truy cập nhanh (caching) truy vấn tính tốn Triển khai Máy ứng dụng cho Java WebSphere/DB2 Khi thông báo khai trương Máy ứng dụng cho Java, đại diện từ Google IBM® triển khai ứng dụng mẫu DB2®/WebSphere® IIBM làm việc để cung cấp hỗ trợ API Google mức thấp cho Tivoli® LDAP DB2 cho ứng dụng xây dựng với Máy ứng dụng cho Java chạy xếp chồng tảng WebSphere/DB2 IBM Ngoài ra, Máy ứng dụng cho Java cung cấp hỗ trợ cho dịch vụ ứng dụng sau đây:  Xác thực cấp quyền cho người dùng  CRON  Nhập/xuất liệu  Truy cập đến liệu tường lửa Nhập/xuất liệu quan trọng cho việc di chuyển liệu từ nguồn khác vào ứng dụng Máy ứng dụng cho Java bạn Đây cách khác mà bạn không bị ràng buộc với Máy ứng dụng cho Java Hỗ trợ CRON Google dựa URL nội bộ, nhận truy cập theo lịch trình định, làm trở thành dịch vụ tốt đẹp mà khơng có nhiều ràng buộc với Máy ứng dụng cho Java Cơ chế xác thực cấp quyền cho người dùng đặc thù riêng cho Máy ứng dụng cho Java, bạn viết ServletFilter, khía cạnh, trình cắm thêm An ninh Spring để giảm thiểu việc ghép buộc chặt chẽ Tạo ứng dụng bạn Máy ứng dụng cho Java Nếu bạn đọc đến bạn sẵn sàng để bắt đầu xây dựng ứng dụng bạn Máy ứng dụng cho Java Bước bạn cài đặt trình cắm thêm Google (Plugin Google) cho Eclipse cho Máy ứng dụng cho Java; hoàn thành việc này, bạn tiếp tục Mở Eclipse IDE bạn bạn thấy ba nút Eclipse IDE bạn bên cạnh nút Printer (Máy in): chữ G bóng màu xanh, G hộp dụng cụ màu đỏ hình máy bay phản lực nhỏ Máy ứng dụng cho Java, Hình 1: Hình Các nút sáng lên Eclipse IDE bạn Đây nút thực hiện:  Quả bóng màu xanh cho phép bạn truy cập vào trình thủ thuật tạo dự án Máy ứng dụng cho Java  Hộp dụng cụ màu đỏ cho phép bạn biên dịch dự án GWT  Hình máy bay phản lực nhỏ chìa khóa bạn để triển khai dự án Máy ứng dụng Bạn sử dụng trình thủ thuật tạo dự án để tạo hai dự án mới: dựa vào servlet dự án xây dựng cách sử dụng GWT Bạn sử dụng chức hộp công cụ để biên dịch dự án GWT Bạn khởi chạy máy bay phản lực nhỏ bạn sẵn sàng triển khai dự án Máy ứng dụng, làm cho hoạt động Bây bắt đầu cách tạo dự án Máy ứng dụng cho Java Trước tiên, nhấn vào bóng màu xanh để truy cập vào trình thủ thuật tạo dự án Sau đó, tạo ứng dụng gọi SimpleServletApp cách sử dụng gói có tên gaej.example, Hình 2: Hình Bắt đầu dự án Chú ý người ta bỏ đánh dấu chọn hỗ trợ GWT cho ví dụ đơn giản Sau bạn hồn thành bước này, trình thủ thuật tạo dự án tạo ứng dụng đơn giản dựa servlet có servlet kiểu “Xin chào giới” Hình cho thấy ảnh chụp hình dự án đó: Hình Dự án SimpleServletApp Hãy ý tệp JAR tự động bao gồm cho dự án dựa servlet này:  datanucleus-*.jar: Để truy cập vào kho lưu trữ liệu Máy ứng dụng cho Java sử dụng JDO tiêu chuẩn API BigTable mức thấp  appengine-api-sdk.1.2.0.jar: Để sử dụng dịch vụ ứng dụng Máy ứng dụng cho Java chưa chuẩn An ninh (Security) cho Máy ứng dụng cho Java  geronimo-*.jar: Để sử dụng Java API tiêu chuẩn API Quản lý giao dịch Java (JTA- Java Transaction Management API) JPA  jdo2-api-2.3-SNAPSHOT.jar: Để sử dụng API JDO Bạn học cách sử dụng API lưu giữ lâu bền từ Máy ứng dụng cho Java số dịch vụ ứng dụng Máy ứng dụng cho Java bắt đầu Phần viết Cũng cần ý đến tệp cấu hình thùng chứa thời gian chạy cho Máy ứng dụng Google, gọi appengine.xml Trong ví dụ này, appengine.xml sử dụng để đặt cấu hình tệp logging.properties để thực đăng nhập với Máy ứng dụng cho Java Trước tiên xem xét ứng dụng servlet Máy ứng dụng cho Java Một bạn cấu hình tất thứ trình thủ thuật tạo dự án, Máy ứng dụng cho Java đưa cho bạn khung sườn ứng dụng servlet kiểu Xin chào giới (Hello World) Hãy xem mã sau xem cách để chạy ứng dụng sử dụng công cụ Eclipse Máy ứng dụng cho Java Điểm vào ứng dụng SimpleServletAppServlet, Liệt kê 1: Liệt kê SimpleServletAppServlet package gaej.example; import java.io.IOException; import javax.servlet.http.*; @SuppressWarnings("serial") public class SimpleServletAppServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { resp.setContentType("text/plain"); resp.getWriter().println("Hello, world"); } } Servlet ánh xạ với URI /simpleservletapp web.xml, hiển thị Liệt kê 2: Liệt kê web.xml simpleservletapp gaej.example.SimpleServletAppServlet simpleservletapp /simpleservletapp index.html Trình thủ thuật tạo dự án cung cấp tệp index.html có đường liên kết đến servlet mới, Liệt kê 3: Liệt kê Trình thủ thuật tạo dự án tạo tệp index.html > > Web Application Starter Project > > Web Application Starter Project Please enter your name: Với GWT, bạn điều khiển dáng vẻ ứng dụng bạn thông qua CSS, chứng tỏ Liệt kê 11: Liệt kê 11 Bảng định kiểu cho GUI GWT (war/SimpleGWTApp.css) /** Add css rules here for your application */ /** Example rules used by the template application (remove for your app) */ h1 { font-size: 2em; font-weight: bold; color: #777777; margin: 40px 0px 70px; text-align: center; } sendButton { display: block; font-size: 16pt; } /** Most GWT widgets already have a style name defined */ gwt-DialogBox { width: 400px; } dialogVPanel { margin: 5px; } serverResponseLabelError { color: red; } /** Set ids using widget.getElement().setId("idOfElement") */ #closeButton { margin: 15px 6px 6px; } Triển khai Máy ứng dụng Google Một bạn tạo ứng dụng sát thủ giới (vì thực cần ứng dụng lời chào thân thiện với người sử dụng), bạn muốn triển khai Tồn vấn đề sử dụng Máy ứng dụng Google bạn triển khai ứng dụng sở hạ tầng vững Google, làm cho dễ dàng điều chỉnh Máy ứng dụng Google thiết kế để cung cấp tảng cho việc xây dựng ứng dụng mở rộng "để phát triển từ đến hàng triệu người dùng mà không nhức đầu sở hạ tầng" (như nêu trang chủ Máy ứng dụng - App Engine) Để sử dụng sở hạ tầng này, bạn cần tài khoản Máy ứng dụng Google cho Java Giống nhiều thứ đời, thời gian đầu miễn phí Phiên miễn phí Máy ứng dụng cho Java cung cấp cho ứng dụng triển khai đủ CPU, băng thông lượng lưu trữ để phục vụ cho khoảng triệu lượt truy cập trang Sau đó, cần phải trả tiền bạn tiếp tục (Cũng nên nhớ sẵn có viết phát hành xem trước tảng Máy ứng dụng cho Java.) Một bạn nhận tài khoản, bạn thấy danh sách bỏ trống ứng dụng trang Web Máy ứng dụng cho Java Nhấn vào nút Create New Application (Tạo ứng dụng mới) biểu mẫu giống Hình xuất Nhập tên ứng dụng mơ tả, sau bạn thấy thơng báo xác nhận với mã nhận dạng (identifier) ứng dụng bạn Mã nhận dạng thuộc tệp app.yaml ứng dụng bạn Lưu ý thay đổi mã nhận dạng Nếu bạn sử dụng việc xác thực Google cho ứng dụng bạn, "GAEj Article For Rick Part 1" hiển thị trang Sign In (Đăng nhập) bạn truy cập vào ứng dụng Bạn sử dụng gaejarticleforrick để triển khai ứng dụng lên Máy ứng dụng Google trình cắm thêm Eclipse Máy ứng dụng cho Java Hình Tạo ứng dụng Máy ứng dụng cho Java Sau bạn thiết lập mã nhận dạng (ID) ứng dụng, bạn triển khai ứng dụng từ Eclipse Đầu tiên, nhấn vào nút công cụ trông giống biểu tượng Máy ứng dụng Google (một động phản lực có cánh đi), Hình 9: Hình Trình cắm thêm Eclipse Máy ứng dụng cho Java Bạn cần phải bảo đảm chắn dự án Máy ứng dụng cho Java bạn đánh dấu chọn trước nhấn vào Deploy (Triển khai) hộp thoại thấy Hình 10 Bạn nhắc cung cấp mã ủy nhiệm Google bạn, địa tên người dùng thư điện tử bạn Hình 10 Triển khai dự án Hộp thoại Hình 10 có đường liên kết tới "App Engine Project setting" (Thiết lập dự án Máy ứng dụng) Nhấn vào đường liên kết (cũng truy cập từ tệp thiết lập dự án) nhập ID ứng dụng (trong trường hợp gaejarticleforrick), Hình 11 Sau bạn điền vào ID ứng dụng, nhấn OK, nhấn Deploy Hình 11 Thiết lập dự án cho máy ứng dụng Google Sau bạn triển khai ứng dụng mình, có sẵn http://.appspot.com/ Bạn thấy ứng dụng hoạt động http://gaejarticleforrick.appspot.com/ Kết luận Đến kết thúc Phần giới thiệu Máy ứng dụng Google cho Java Cho đến nay, bạn thu tổng quan Máy ứng dụng cho Java thực bước việc sử dụng Trình cắm thêm Google cho Eclipse Máy ứng dụng cho Java Bạn tạo hai ứng dụng khởi động nhỏ (một ứng dụng dựa servlet dựa GWT) sau triển khai ứng dụng GWT cho tảng Máy ứng dụng Google Các ví dụ chứng tỏ việc tạo công cụ chức giúp Máy ứng dụng dễ dàng tạo triển khai ứng dụng Java mở rộng — tiềm lên đến quy mô YouTube Facebook Trong Phần 2, bạn tiếp tục khám phá hội sẵn có cho nhà phát triển Java làm việc Máy ứng dụng cho Java Rời khỏi ví dụ ứng dụng trình bày viết này, bạn xây dựng ứng dụng quản lý mối liên hệ tùy chỉnh Ứng dụng trọng tâm tập Phần 3, chúng sâu vào kho lưu trữ liệu Máy ứng dụng cho Java mặt tiền GUI Mục lục  Về Máy ứng dụng Google cho Java  Tạo ứng dụng bạn Máy ứng dụng cho Java  Tạo Máy ứng dụng cho ứng dụng Java/GWT  Triển khai Máy ứng dụng Google  Kết luận ... ứng dụng cho Java mặt tiền GUI Mục lục  Về Máy ứng dụng Google cho Java  Tạo ứng dụng bạn Máy ứng dụng cho Java  Tạo Máy ứng dụng cho ứng dụng Java/GWT  Triển khai Máy ứng dụng Google  Kết... viết Tạo Máy ứng dụng cho ứng dụng Java/GWT Bạn có ý tưởng cách ứng dụng servlet đơn giản Máy ứng dụng cho Java làm việc nào, khám phá công cụ Eclipse Máy ứng dụng cho Java dành cho ứng dụng GWT... việc sử dụng Trình cắm thêm Google cho Eclipse Máy ứng dụng cho Java Bạn tạo hai ứng dụng khởi động nhỏ (một ứng dụng dựa servlet dựa GWT) sau triển khai ứng dụng GWT cho tảng Máy ứng dụng Google

Ngày đăng: 11/05/2021, 00:58

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w