2010-09-15 37 views
6

Tôi muốn đặt câu hỏi về ứng dụng web java. Khi tôi bắt đầu học JSP, tôi luôn nghe về ứng dụng web Java EE. Nhưng tôi không biết ý nghĩa thực sự của từ đó. Bất cứ ai có thể giải thích từ này cho tôi? Cảm ơn bạn.Ứng dụng web Java EE là gì?

+0

bản sao có thể có của [Sự khác biệt giữa Java SE/EE/ME?] (Http://stackoverflow.com/questions/2857376/difference-between-java-se-ee-me) –

Trả lời

2

Có một hệ thống phân cấp các bản phân phối Java.

Bắt đầu với Java ME - phiên bản vi mô cho các ứng dụng được nhúng trên các máy nhỏ như điện thoại.

Chuyển sang JavaSE là phiên bản tiêu chuẩn mà hầu hết các lập trình viên đều quen thuộc.

Sau đó chuyển lên J2EE - phiên bản doanh nghiệp. Ngoài SE, bản phân phối J2EE phải hỗ trợ một số thư viện cấp doanh nghiệp và API trong loạt giao diện javax .... Điều quan trọng nhất trong số này là các API dịch vụ web "giao dịch", EJB và WS *.

Các giao diện này được các bên thứ ba thêm vào một số nguồn mở như GlassFish và JBOSS nhưng chủ yếu là các sản phẩm độc quyền (kết thúc đắt tiền) như WebLogic hoặc WebSphere.

1

Ứng dụng web đề cập đến loại mô-đun cụ thể có thể được triển khai vào vùng chứa EE như Tomcat, WebLogic hoặc GlassFish. Nó là tập hợp các JSP, JSF và các lớp khác.

Không giống như một ứng dụng Java thông thường, một ứng dụng web EE không thể chỉ được "chạy" bằng cách nhập "java". Phải được triển khai vào máy chủ web của bạn. Khi máy chủ đang chạy, bạn có thể tận dụng nhiều tính năng tích hợp sẵn, trong khi hữu ích, có thể giống như uống rượu từ một từ viết tắt.

Thật không may, không có cách nào dễ dàng để tham gia. Từ những gì tôi nghe, cách tốt nhất để bắt đầu là với hướng dẫn Sun. Ngoài ra còn có một số cuốn sách ngoài kia. Khái niệm quan trọng nhất để có được là ý tưởng của "container" trong đó ứng dụng EE của bạn sẽ chạy. Nó giống như có một máy ảo trong một máy ảo. Đó là một khái niệm kỳ lạ.

Săn bắt thú vị! Jeff

4

Ứng dụng web khác với các loại ứng dụng khác như ứng dụng dành cho máy tính để bàn (ví dụ như Photoshop) trong phần lớn tính toán được thực hiện trên máy tính từ xa và chỉ dữ liệu hiển thị được gửi tới máy của người dùng. Thông thường, giao diện người dùng sẽ được viết bằng một số loại công nghệ "web" - HTML/JavaScript/flash vv, và sẽ được xem bằng trình duyệt web, do đó tên.

Để làm việc đó, máy từ xa (máy chủ) phải chạy một ứng dụng lắng nghe yêu cầu của khách hàng, thực hiện một số tính toán và trả lời trả lời cho người dùng. Ví dụ, khi bạn mua một cuốn sách từ amazon, nút mua sẽ gửi yêu cầu đến một ứng dụng từ xa để xử lý đơn hàng của bạn và trả lại một thông báo xác nhận.

Có nhiều chi tiết liên quan đến quy trình này - ứng dụng phải nghe yêu cầu, ứng dụng phải xử lý lỗi, có thể kết nối với cơ sở dữ liệu và nhiều thứ khác. Vì phần lớn công việc này tương tự như trong mọi ứng dụng web, thực tế phổ biến là sử dụng máy chủ ứng dụng để làm việc đó cho bạn.

Máy chủ ứng dụng là ứng dụng biết cách chạy các ứng dụng khác và thực hiện một số công việc cho chúng.Vì vậy, bây giờ, khi người dùng gửi yêu cầu đến ứng dụng web, máy chủ ứng dụng nhận được nó, có thể trích xuất một số dữ liệu từ nó và xác nhận nó, và sau đó yêu cầu ứng dụng của bạn xử lý logic nghiệp vụ. Bằng cách này bạn không phải lo lắng về những thứ như giao tiếp bất cứ khi nào bạn viết một ứng dụng web.

Có các máy chủ web cho tất cả các loại công nghệ. Ví dụ - IIS là một máy chủ web cho các ứng dụng web .Net.

Java EE thực sự là một tập hợp các thông số kỹ thuật (là một từ ưa thích cho một loạt giao diện và đơn đặt hàng cách triển khai chúng) xác định cách bạn nên viết ứng dụng java và cách nhà cung cấp triển khai máy chủ ứng dụng của mình để họ có thể làm việc cùng nhau. "Vùng chứa" mà ai đó đã đề cập ở đây trước đây là tên Java EE cho máy chủ ứng dụng của nhà cung cấp.

Bạn nói bạn đang học cách viết JSP. Khi bạn viết một JSP, bạn thực sự thực hiện một đặc tả xác định cách viết một thành phần hiển thị Java EE, có thể được dịch sang HTML. Máy chủ ứng dụng của bạn (Tomcat/JBoss/BEA bất cứ điều gì) biết phải làm gì với JSP của bạn để tạo ra HTML mong muốn và sau đó gửi nó cho người dùng.

Các vấn đề liên quan