PDA

View Full Version : Hibernate Framework, Spring Framework và Struts Framework trong Java



SmileeTran
12-01-2016, 04:15 PM
Công nghệ thông tin ngày càng phát triển yêu cầu ngành lập trình cần phải đổi mới phù hợp với các ứng dụng hiện tại và có nhiều phương thức ưu việt hơn so với phiên bản trước.


Cả 3 Framework trong các chuyên đề mà BKACAD đưa ra này đều là những framework có tính ưu việt hơn khi phát triển ứng dụng, phần mềm trên Java trong thực tế.
1. Hibernate Framework
Hiberate Framework là gì?
Hibernate Framework là một công cụ mã nguồn mở, dung lượng nhỏ (lightweight) và ORM (Object Relational Mapping) giúp đơn giản hóa việc phát triển ứng dụng Java để tương tác với cơ sở dữ liệu. Do Hibernate Framework là một ORM framework cho persistence layer nên khi phát triển ứng dụng, lập trình viên chỉ cần tập trung vào những layer khác mà không cần xem xét nhiều về persistence layer.

Trong khi lập trình viên gặp nhiều khó khăn khi sử dụng ngôn ngữ SQL thuần túy trong việc quản lí CSDL, quản lí transaction, thay đổi truy vấn SQL hay tìm và sửa lỗi thì Hibernate Framework lại có nhiều ưu điểm vượt trội hơn hẳn.

Ưu điểm khi dùng Hibernate Framework
- Mã nguồn mở và nhẹ: Hibernate Framework là mã nguồn mở theo LGPL licence và dung lượng nhỏ.
- Thao tác nhanh chóng: Các thao tác thực hiện trong Hibernate Framework rất nhanh vì sử dụng bộ nhớ cache như một bộ nhớ nội bộ. Có hai loại bộ nhớ cache trong Hibernate Framework là Cache cấp độ 1 và Cache cấp độ 2. Bộ nhớ cache cấp độ đầu tiên được kích hoạt mặc định.
- Truy vấn cơ sở dữ liệu độc lập: HQL (Hibernate Query Language) là phiên bản mở rộng theo Hibernate của SQL, giúp tạo ra các truy vấn CSDL độc lập. Vì vậy, lập trình viên không cần phải viết những truy vấn CSDL độc lập.
- Tạo bảng tự động: Hibernate Framework cung cấp các thiết bị để tạo ra các bảng CSDL tự động. Như vậy lập trình viên không cần phải tự tạo ra các bảng CSDL bằng tay.
- Đơn giản hóa việc truy nhập, kết nối: Trong Hibernate Framework, lập trình viên có khả năng lấy dữ liệu từ rất nhiều bảng một cách dễ dàng.
- Cung cấp số liệu thống kê truy vấn và tình trạng CSDL: Hibernate hỗ trợ bộ nhớ Cache truy vấn và cung cấp các số liệu thống kê về việc truy vấn CSDL và tình trạng CSDL.

2. Spring Framework
Spring Framework là gì?
Spring Framework là một framework dung lượng nhỏ. Spring được coi là framework k+hung cho mọi framework vì lí do Spring Framework cung cấp hỗ trợ cho nhiều framework như Struts, Hibernate, EJB, JSF, v.v.
Các tính năng cốt lõi của Spring Framework có thể được sử dụng trong việc phát triển ứng dụng Java nhưng có phần mở rộng hơn trong việc xây dựng ứng dụng Web trên nền tảng EE.
Mục tiêu của Spring Framework là làm cho việc phát triển J2EE dễ dàng hơn và thúc đẩy lập trình tốt hơn bằng việc áp dụng mô hình lập trình dựa trên POJO.

Ưu điểm khi dùng Spring Framework:
- Xác định Tempale trước: Spring Framework cung cấp những template cho Hibernate, Struts, JDBC, v.v. Vì vậy, lập trình viên không cần phải viết quá nhiều code và có thể bỏ qua những bước cơ bản.
- Dễ dàng kiểm thử: Dependency Injection làm cho việc kiểm thử phần mềm, ứng dụng được tiến hành dễ dàng hơn. Nếu như ứng dụng EJB yêu cầu máy chủ phải chạy lại ứng dụng thì Spring Framework thì không.
- Dung lương nhỏ: Spring Framework có dung lượng nhỏ nhờ vào mô hình POJO. Spring Framework không bắt lập trình viên phải kế thừa các lớp hay thực hiện qua bất kì giao diện nào. Đó là lí do Spring Framework được coi là bất khả xâm phạm.
- Phát triển nhanh: Dependency Injection tạo nên tính năng đặc biệt của Spring Framework giúp hỗ trợ các framework khác và giúp cho việc phát triển ứng dụng JavaEE dễ dàng hơn.
- Hỗ trợ khai báo: Spring Framework cung cấp những hỗ trợ khai báo về bộ nhớ đệm, xác nhận, giao dịch và định dạng.
- Tính trừu tượng: Nó cung cấp sự trừu tượng hóa cao cho các chi tiết JavaEE như JMS, JDBC, JPA và JTA.

3. Struts Framework
Struts Framework là gì?
Struts là một framework phục vụ việc phát triển các ứng dụng Web trên Java. Sử dụng mẫu thiết kế Model-View-Controller (MVC), Struts giải quyết rất nhiều các vấn đề liên quan đến các ứng dụng Web hướng doanh nghiệp đòi hỏi hiệu năng cao sử dụng Java servlet và JSP. Struts cơ bản định hình lại cách mà các lập trình viên Web nghĩ và xây dựng cấu trúc một ứng dụng Web.

Ưu điểm khi dùng Struts Framework:
- Struts 2 được xây dựng và phát triển dựa trên nền tảng mô hình MVC nên nó thừa hưởng được đầy đủ các ưu điểm mà mô hình MVC đem lại.
- Dễ dàng tùy chỉnh (customize) chu kỳ xử lý (request lifecycles) cho từng bước.
- Giải quyết hiệu quả vấn đề quốc tế hóa và địa phương hóa (internationlization và localization) trong các ứng dụng web.
- Tự động chuyển đổi kiểu dữ liệu chuỗi truyền thống trong tham số request parameter thành các đối tượng lớp dữ liệu java nên có thể tiết kiệm được thời gian và công sức cho các lập trình viên.
- Cung cấp các thẻ tag, các themes và templates giúp cho việc làm giao diện GUI trở nên dễ dàng,nhanh lẹ và tăng tính tái sử dụng.
- Tính mở rộng cao thông qua việc hỗ trợ các plug-in.
- Hỗ trợ portal.
- Hỗ trợ AJAX.
- Dễ dàng tích hợp với Spring framework và Hibernate.

Để kiểm tra kiến thức về Lập trình nói chung, Bạn có thể làm bài Kiểm tra năng lực tại Website chính thức của Học viện CNTT Bách Khoa (BKACAD)

Nguồn: BKACAD