Java Platform Enterprise Edition (Hoặc Java EE) là một bộ sưu tập Java APIs thuộc sở hữu của Oracle mà các lập trình viên phát triển phần mềm có thể sử dụng để lập trình ứng dụng phía máy chủ (có thể gọi nôm là website :D).
Mục lục bài viết:
Trước đây J2EE được gọi là Java 2 Platform Enterprise Edition (Phiên bản Java dành cho doanh nghiệp), hoặc còn gọi là J2EE.
J2EE là gì?
Ban đầu, Sun microsystems (cùng với các đối tác trong ngành như IBM) thiết kế J2EE để đơn giản hóa việc phát triển ứng dụng trong môi trường thin - client - tiered.
Thin Client là một máy tính người dùng có cấu hình tối thiểu, chủ yếu dựa vào sự hỗ trợ của máy tính khác hoặc máy chủ của nó để đáp ứng nhiệm vụ nào đó (Theo Wikipedia)
J2EE đơn giản hóa việc lập trình ứng dụng và giảm nhu cầu lập trình bằng cách tạo các thành phần mô đun được tiêu chuẩn hóa, có thể tái sử dụng và bằng cách cho phép tầng này tự động xử lý nhiều nhiệm vụ của lập trình.
Các ứng dụng J2EE được lưu trữ trên các máy chủ ứng dụng, chẳng hạn như WebSphere của IBM, máy chủ WildFly của Oracle hoặc WildFly của Red Hat. Tất cả đều chạy trên cloud hoặc trong một trung tâm dữ liệu (Data center) của công ty.
Trong khi các ứng dụng J2EE được lưu trữ ở phía máy chủ, các ví dụ về máy khách J2EE bao gồm thiết bị internet (IoT), điện thoại thông minh, RESTful web service, ứng dụng tiêu chuẩn dựa trên web, WebSocket hoặc thậm chí microservice chạy trong Docker container.
Mục đích của kiến trúc J2EE là gì?
Kiến trúc J2EE cung cấp các dịch vụ để đơn giản hóa các khó khăn phổ biến nhất mà các lập trình viên gặp phải khi xây dựng các ứng dụng / website hiện đại.
Trong nhiều trường hợp vấn đề khó khăn sẽ được giải quyết thông qua các API, do đó việc áp dụng các Design pattern phổ biến và các Best pratice trở nên dễ dàng hơn.
Trong lĩnh vực phần mềm, một Design pattern (mẫu thiết kế) là một giải pháp lặp lại chung cho một vấn đề thường xảy ra trong thiết kế phần mềm.
Best practice là một phương pháp hoặc kỹ thuật thường được chấp nhận là vượt trội so với bất kỳ giải pháp thay thế nào vì nó tạo ra kết quả vượt trội so với những phương pháp khác hoặc bởi vì nó đã trở thành một cách làm tiêu chuẩn.
Ví dụ, một khó khăn phổ biến đối với phát triển website là làm thế nào để nhận / xử lý / trả về kết quả theo yêu cầu đến từ khách hàng trên website.
Để đơn giản hóa vấn đề này J2EE cung cấp Servlet và Java Server Page (JSP) APIs, chúng cung cấp các phương thức như tìm xem khách hàng gõ gì vào trường nhập liệu trong from hoặc thực hiện lưu trữ cookie trên trình duyệt của người dùng.
Một nhiệm vụ phổ biến khác là làm thế nào để lưu trữ và truy xuất thông tin trong cơ sở dữ liệu.
Để giải quyết mục tiêu này, Java EE cung cấp Java Persistence API (JPA,) giúp dễ dàng ánh xạ dữ liệu được sử dụng trong một chương trình tới thông tin được lưu trữ trong các bảng và hàng của cơ sở dữ liệu.
Ngoài ra, việc tạo các web service hoặc các thành phần logic có khả năng mở rộng cao được đơn giản hóa thông qua việc sử dụng đặc tả Enterprise JavaBeans (EJB).
Tất cả các API này đều đã được kiểm thử.
Nó giống như một công cụ dễ học, dễ sử dụng để giản hóa rất nhiều công việc khó trong lập trình website của các lập trình viên Java.
Công nghệ lõi của J2EE là gì?
Ngoài 4 API đã nói ở trên, có hơn 30 Java API được bao gồm dưới dạng các công nghệ lõi của Java EE, với con số đó đã gần 50 ở phiên bản J2EE 8.
Các công nghệ lõi Java EE gồm:
-
HTTP client technology: Công nghệ này sử dụng để xử lý các máy khách dựa trên HTTP, J2EE cũng bao gồm API Java cho lập trình WebSocket, API để xử lý JSON, API JSF và Servlet và JSP Standard Tag Library (JSTL).
-
Công nghệ truy cập CSDL và tài nguyên: Các công nghệ này sử dụng để tương tác với các hệ thống bên ngoài và hệ thống Back end. Java EE bao gồm JavaMail, Standard conenctor Architecture, Java Message Service (JMS) API và Java Transaction API (JTA).
-
Công nghệ REST và Web Service: Để giúp lập trình và triển khai các dịch vụ web dựa trên REST-, SOAP-, XML và JSON, các API Java cho Dịch vụ web RESTful (JAX-RS) và các dịch vụ web dựa trên XML (JAX-WS), cùng với các API cho thông báo XML và đăng ký XML (JAXR).
-
Java EE security and container management: Để triển khai bảo mật Java EE tùy chỉnh và quản lý các thùng chứa Java EE, các lập trình viên phần mềm có quyền truy cập vào Java Authorization Contract cho các Container và Java Authentication Service Provider Interface cho các container.
Java khác gì với J2EE?
"Java" vừa là tên của ngôn ngữ lập trình hướng đối tượng Java vừa là thuật ngữ dành cho "Mọi thứ về Java".
Hầu hết mọi người nghĩ đến "Java core" hoặc "JSE" (Phiên bản tiêu chuẩn Java) khi họ sẽ nói "Java".
"J2EE" (hiện nay được gọi là JEE) là Phiên bản Java dành cho doanh nghiệp, bao gồm Java Core cộng với một bộ thư viện mạnh mẽ.
Các thư viện này hầu hết hữu ích nếu các ứng dụng bạn đang phát triển là cần đến tính đa tầng (multi-tier), chịu lỗi và / hoặc phân tán, chạy trên các máy chủ ứng dụng.
-
Xem thêm về thảo luận này trên Qoura
So sánh J2EE với Java SE
Các API được liệt kê ở trên chỉ là một phần của các thành phần J2EE khác nhau có sẵn cho các lập trình viên.
J2EE và JSE
Tất cả các API được định nghĩa trong Phiên bản Java tiêu chuẩn hoặc Java SE, cũng được cung cấp cho các ứng dụng J2EE.
-
Nhiệm vụ chính của Java SE là: Phát triển các ứng dụng Desktop
-
Nhiệm vụ chính của Java EE là: Phát triển website, web service, networking, server side và các ứng dụng dựa trên web.
Java EE không cạnh tranh với Java SE, mà thay vào đó là một siêu API của các API xây dựng trên nền tảng được cung cấp bởi Java SE và Bộ công cụ phát triển Java tiêu chuẩn (JDK).
Các ứng dụng Java EE được xây dựng dựa trên nền tảng do Java SE cung cấp và tất cả các ứng dụng Java EE chạy trên máy ảo Java hỗ trợ tất cả các API được định nghĩa bởi Java SE.
So sánh J2EE với Spring Framework
J2EE được phát hành vào tháng 12 năm 1999 được biết đến như là một tiêu chuẩn Java dành cho doanh nghiệp đầu tiên.
Nó có trọng tâm là phát triển front end Với Servlets và JSP và phát triển back end đang được thực hiện với EJB.
-
Phiên bản J2EE 1.3 bổ sung JSTL
-
Phiên bản J2EE 1.4 bổ sung HTML Framework JSF
Nhưng nhiều lập trình viên đã chê cách tiếp cận của J2EE đối với lập trình ứng dụng doanh nghiệp là quá hàn lâm, quá cồng kềnh và nặng nề.
Vì thế, để thay thế J2EE, với trọng tâm quan trọng là loại bỏ việc sử dụng EJB của J2EE, Rod Johnson đã tạo ra Spring Framework.
-
Đội ngũ duy trì và phát triển Spring Framework độc lập với Sun Microsystems
Spring Framework đã nhanh chóng chứng minh rằng các ứng dụng cấp doanh nghiệp có thể được viết bằng Java mà không cần toàn bộ J2EE stack.
Spring Framework đã sử dụng một cách tiếp cận nhẹ nhàng hơn để phát ứng dụng doanh nghiệp dựa trên ngôn ngữ lập trình Java và các lập trình viên đã bắt đầu chấp nhận cách tiếp cận đơn giản hơn này để tạo ra các website bằng Java ngày nay.
Hiện nay, Spring Framework là cách phổ biến nhất được các lập trình viên sử dụng để lập trình web với Java.
Túm J2EE lại!
Java EE (hay J2EE hay JEE) được sử dụng để lập trình web với sự trợ giúp của Trình duyệt web.
Trong J2EE, bạn có thể Tìm hiểu các chủ đề nâng cao như: Servlet, Java Server Page (JSP), Enterprise Java Beans (EJB), v.v
Sử dụng J2EE để lập trình web được coi là lập trình web với Java thuần túy và hầu như tất cả các lập trình viên đều cần phải học J2EE rồi mới tiến đến các Framework như Sping.
Nếu bạn yêu thích Java và lựa chọn ngôn ngữ này để chinh phục còn đường Lập trình web thì nên tham gia ngay KHÓA HỌC JAVA FULL STACK.
---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Học Lập trình chất lượng cao (Since 2002). Học thực tế + Tuyển dụng ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0383.180086
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
#niit #icthanoi #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp