MỤC LỤC PHẦN I: XÂY DỰNG CHƯƠNG TRÌNH PHÂN TÁN ĐẢM BẢO GẮN BÓ DỮ LIỆU TRÊN CÁC SERVER NGANG HÀNG. 1 1. Đặt vấn đề 1 2. Nội dung bài toán: 2 PHẦN II: LẬP TRÌNH HỆ THỐNG ĐA SERVER BẰNG NGÔN NGỮ JAVA 5 1. Giới thiệu mô hình đối tượng phân tán RMI 5 2. Cơ chế hoạt động của RMI: 6 3. Kết nối và truy cập cơ sở dữ liệu : 8 4. Xây dựng bài toán bằng Java RMI: 9 PHẦN III: DANH SÁCH DI CHUYỂN 10 1. Khái niệm: 10 2. Nội dung giải thuật danh sách di chuyển 10 PHẦN IV: VIẾT CHƯƠNG TRÌNH CẬP NHẬP CÁC D VÀ MONITORING TRÊN CÁC SERVER NGANG HÀNG KHI CÁC CLIENT NHẬP DỮ LIỆU 13 TÀI LIỆU THAM KHẢO 15 LỜI NÓI ĐẦU Hiện nay, công nghệ thông tin là mối quan tâm hàng đầu của Việt Nam và toàn thế giới. Cùng với sự phát triển nhanh chóng của khoa học máy tính cũng như nhu cầu trao đổi thông tin trong mọi hoạt động của xã hội đòi hỏi sự phát triển đồng bộ các phương tiện truyền thông, cũng như sự gắn bó chặt chẽ của dữ liệu. Các thành tựu của ngành khoa học trí tuệ này đã góp phần quan trọng vào việc thay đổi bộ mặt của thế giới cả về bề mặt lẫn chiều sâu. Việc ứng dụng các thành tựu của nền công nghệ hiện đại này trở thành vấn đề chủ chốt, quan trọng, quyết định sự thành bại của các thành phần tham gia vào lĩnh vực hoạt động trên thế giới từ kinh tế, văn hóa…… Như chúng ta đã biết, đối với các hệ thống thông tin lớn, cơ sở dữ liệu không chỉ được lưu trữ và quản lý bởi các Server độc lập mà thường được phân tán trên nhiều Server và phân bố ở các vị trí địa lý khác nhau. Hệ thống cho phép xử lý đa truy cập đồng thời và cho phép đăng ký từ xa. Một trong những lợi ích của việc phân tán dữ liệu như vậy là nhằm phân chia yêu cầu xử lý dữ liệu cho nhiều máy nhằm làm tăng năng lực xử lý thông tin của hệ thống và đặc biệt, nó đảm bảo yêu cầu toàn dữ liệu vì dữ liệu được lưu trữ dự phòng ở nhiều nơi khác nhau. Hệ thống trình bày như trên là hệ thống đa server và phức tạp. Một trong các yêu cầu đặt ra cho hệ thống là phải đảm bảo gắn bó dữ liệu giữa các server đồng thời không làm ảnh hưởng đến năng lực xử lý của hệ thống. Trong phạm vi tiểu luận của mình, chúng tôi trình bày đề tài: 1. Xây dựng chương trình phân tán đảm bảo gắn bó dữ liệu trên các server ngang hàng 2. Lập trình hệ thống đa server bằng ngôn ngữ java 3. Xây dựng hệ thống cơ sở dữ liệu D với (d1=d2=…dn) 4. Nghiên cứu thuật toán danh sách di chuyển 5. Viết chương trình cập nhật các D trên các server mỗi khi client nhập dữ liệu 6. Viết chương trình monitoring các D trên các server mỗi khi client nhập dữ Được sự giúp đỡ tận tình của PGS.TS Lê Văn Sơn và các bạn chúng tôi đã hoàn thành được bản báo cáo. Tuy nhiên thời gian và kiến thức có hạn nên bản báo cáo này chắc chắn còn nhiều khuyết điểm, chúng tôi rất mong nhận được sự góp ý của Thầy giáo và các bạn. Cho phép chúng tôi được bày tỏ lòng biết ơn đối với PGS.TS Lê Văn Sơn và các bạn đã ủng hộ, giúp đỡ chúng tôi hoàn thành bản báo cáo này. Trân trọng cảm ơn
Trang 1ĐẠI HỌC ĐÀ NẴNG
- -TIỂU LUẬN
Đề tài:
XÂY DỰNG CHƯƠNG TRÌNH PHÂN TÁN ĐẢM BẢO GẮN
BÓ DỮ LIỆU TRÊN CÁC SERVER NGANG HÀNG
Giảng viên: PGS TS Lê Văn Sơn Học viên : Hoàng Như Quỳnh
Trần Nhật Vinh
Lớp : Khoa học máy tính K11
Trang 2GẮN BÓ DỮ LIỆU TRÊN CÁC SERVER NGANG HÀNG Trang 1
ĐÀ NẴNG, 03/2010
Trang 3PHẦN I: XÂY DỰNG CHƯƠNG TRÌNH PHÂN TÁN ĐẢM BẢO GẮN BÓ DỮ LIỆU TRÊN
CÁC SERVER NGANG HÀNG 1
1 Đặt vấn đề 1
2 Nội dung bài toán: 2
PHẦN II: LẬP TRÌNH HỆ THỐNG ĐA SERVER BẰNG NGÔN NGỮ JAVA 5
1 Giới thiệu mô hình đối tượng phân tán RMI 5
2 Cơ chế hoạt động của RMI: 6
3 Kết nối và truy cập cơ sở dữ liệu : 8
4 Xây dựng bài toán bằng Java RMI: 9
PHẦN III: DANH SÁCH DI CHUYỂN 10
1 Khái niệm: 10
2 Nội dung giải thuật danh sách di chuyển 10
PHẦN IV: VIẾT CHƯƠNG TRÌNH CẬP NHẬP CÁC D VÀ MONITORING TRÊN CÁC SERVER NGANG HÀNG KHI CÁC CLIENT NHẬP DỮ LIỆU 13
TÀI LIỆU THAM KHẢO 15
Trang 4LỜI NÓI ĐẦU
Hiện nay, công nghệ thông tin là mối quan tâm hàng đầu của Việt Nam và toàn thế giới Cùng với sự phát triển nhanh chóng của khoa học máy tính cũng như nhu cầu trao đổi thông tin trong mọi hoạt động của xã hội đòi hỏi sự phát triển đồng bộ các phương tiện truyền thông, cũng như sự gắn bó chặt chẽ của dữ liệu Các thành tựu của ngành khoa học trí tuệ này
đã góp phần quan trọng vào việc thay đổi bộ mặt của thế giới cả về bề mặt lẫn chiều sâu Việc ứng dụng các thành tựu của nền công nghệ hiện đại này trở thành vấn đề chủ chốt, quan trọng, quyết định sự thành bại của các thành phần tham gia vào lĩnh vực hoạt động trên thế giới từ kinh tế, văn hóa……
Như chúng ta đã biết, đối với các hệ thống thông tin lớn, cơ sở dữ liệu không chỉ được lưu trữ và quản lý bởi các Server độc lập mà thường được phân tán trên nhiều Server và phân
bố ở các vị trí địa lý khác nhau Hệ thống cho phép xử lý đa truy cập đồng thời và cho phép đăng ký từ xa Một trong những lợi ích của việc phân tán dữ liệu như vậy là nhằm phân chia yêu cầu xử lý dữ liệu cho nhiều máy nhằm làm tăng năng lực xử lý thông tin của hệ thống và đặc biệt, nó đảm bảo yêu cầu toàn dữ liệu vì dữ liệu được lưu trữ dự phòng ở nhiều nơi khác nhau.
Hệ thống trình bày như trên là hệ thống đa server và phức tạp Một trong các yêu cầu đặt ra cho hệ thống là phải đảm bảo gắn bó dữ liệu giữa các server đồng thời không làm ảnh hưởng đến năng lực xử lý của hệ thống.
Trong phạm vi tiểu luận của mình, chúng tôi trình bày đề tài: 1 Xây dựng chương trình phân tán đảm bảo gắn bó dữ liệu trên các server ngang hàng
1 2 Lập trình hệ thống đa server bằng ngôn ngữ java
2 3 Xây dựng hệ thống cơ sở dữ liệu D với (d1=d2=…dn)
3 4 Nghiên cứu thuật toán danh sách di chuyển
4 5 Viết chương trình cập nhật các D trên các server mỗi khi client nhập dữ liệu
6 Viết chương trình monitoring các D trên các server mỗi khi client nhập dữ
Được sự giúp đỡ tận tình của PGS.TS Lê Văn Sơn và các bạn chúng tôi đã hoàn thành được bản báo cáo Tuy nhiên thời gian và kiến thức có hạn nên bản báo cáo này chắc chắn còn nhiều khuyết điểm, chúng tôi rất mong nhận được sự góp ý của Thầy giáo và các bạn Cho phép chúng tôi được bày tỏ lòng biết ơn đối với PGS.TS Lê Văn Sơn và các bạn đã ủng hộ, giúp đỡ chúng tôi hoàn thành bản báo cáo này.
Trang 5Trân trọng cảm ơn!
PHẦN I: XÂY DỰNG CHƯƠNG TRÌNH PHÂN TÁN ĐẢM BẢO GẮN BÓ DỮ
LIỆU TRÊN CÁC SERVER NGANG HÀNG.
1 Đặt vấn đề
Vấn đề gắn bó dữ liệu trong các hệ thống phân tán nói chung và các hệ thống thông tin đăng ký trên mạng nói riêng như việc đăng ký các tua du lịch, mua bán trong các giao dịch thương mại điện tử, đăng ký giữ chỗ trong giao thông vận tải, đăng ký dự thi trong các hệ thống thông tin đào tạo, đã trở thành một lĩnh vực thu hút nhiều sự quan tâm của các nhà nghiên cứu lý thuyết lẫn các nhà sản xuất phần mềm nhằm tìm ra các giải pháp hữu hiệu đảm bảo tính gắn bó thông tin trong các cơ sở dữ liệu truy cập ngẫu nhiên với số lượng truy cập lớn
Ta xét bài toán đảm bảo gắn bó dữ liệu trong các hệ thống thông tin lớn, đa truy cập Hệ thống thông tin được triển khai trên hệ thống gồm nhiều Server kêt nối với nhau qua đường truyền viễn thông Các hệ thống này thông tin này có thể chia thành nhiều cơ sở dữ liệu đặt trên các server khác nhau hay chỉ bao gồm một cơ sở dữ liệu nhưng được cài đặt trên các server khác nhau dưới dạng các bản sao
Hệ thống trình bày ở trên là hệ thống thông tin phức tạp sẽ bao gồm các đặc điểm sau đây:
- Cập nhật thường xuyên để làm tươi cơ sở dữ liệu
- Cho phép truy cập từ xa các thông tin cần thiết
- Cho phép đăng ký từ xa
Trang 6GẮN BÓ DỮ LIỆU TRÊN CÁC SERVER NGANG HÀNG Trang 2
Hệ thống với những đặc điểm trên đòi hỏi phải đảm bảo tính gắn bó dữ liệu bằng những giải pháp kỹ thuật đáng tin cậy Giải thuật danh sách di chuyển được phát triển nhằm giải quyết triệt để các vấn đề gắn bó dữ liệu trình bày ở trên
2 Nội dung bài toán:
Xây dựng hệ thống đa Server (n>2), xây dựng chương trình đảm bảo gắn bó dữ liệu trên các cơ sở dữ liệu phân tán trên các Server đó
Sử dụng ngôn ngữ lập trình Java với sự kết hợp với cơ chế truy cập triệu gọi phương thức từ xa (RMI – Remote Method Invoke)
Ở góc độ mô phỏng chúng ta xây dựng 03 Server chứa các cơ sở dữ liệu phân tán và 01 Client truy cập đến cơ sở dữ liệu phân tán đó và cập nhập Chúng ta quan sát sự thay đổi thông tin cập nhập tại cơ sở dữ liệu phân tán, quan sát và khẳng định tính gắn bó (nhất quán) trong các cơ sử dữ liệu phân tán
Bài toán minh hoạ: Với bài toán cơ sở dữ liệu bán hàng từ xa hệ thống mạng phân tán có
những đặt điểm sau:
1 Hệ thống gồm nhiều server ( 3 Server ) được bố trí tại nhiều nơi khác nhau và các server chứa CSDL giống nhau
2 Cho phép nhiều đại lý cập nhật thông tin khách hàng đồng thời
Trang 73 Hệ thống phải tuyệt đối đảm bảo gắn bó dữ liệu tránh trình trạng hàng hoá cung cấp hết cho khách hàng A tại đại lý A nhưng vẫn được bán cho khách hàng B ở một đại
lý nào đó
Đây là một hệ thống thông tin phức tạp gồm nhiều ứng dụng được thiết kế để giải quyết bài toán một cách tổng thể toàn diện Ở đây với mục đích tìm hiểu và nghiên cứu ta có thể thu nhỏ bài toán cơ sở dữ liệu gồm bảng khách hàng
Sanpham(Masp,Tensp, Soluong,Dongia)
Người sử dụng muốn được cung cấp thông tin về một yêu cầu nào đó qua câu truy vấn trên Server tiếp nhận câu truy vấn và xử lý câu truy vấn rồi chuyển lại cho người yêu cầu
Có một khách hàng ở địa điểm A muốn biết thông tin về giá cả, số lượng của mặt hàng
có tại đại lý B tại địa điểm B ở xa để làm được việc này hệ thống phải xử lý các công việc nhất định
Trước hết khi Client ra yêu cầu hệ thống phải xác định Client đang ở vị trí nào đây chính là vấn đề trỏ thông tin nội dung chủ yếu của việc trỏ thông tin là biến đổi địa điểm B thành tên của hệ thống cục bộ quản lý để hệ thống có thể nhận dang được Tên của hệ thống cục bộ phải duy nhất không được trùng với các hệ thống cục bộ khác và không được phép thay đổi
Sau khi đã trỏ đúng vào địa chỉ chứa thông tin, hệ thống phải có khả năng tiếp nhận và ghi lại những yêu cầu
Biên dịch các yêu cầu thành dạng lệnh để truy tìm thông tin
Thực hiện công việc cục bộ mang tính chất cục bộ của hệ thống cục bộ như kiểm tra quyền truy cập thông tin, thống kê số lượng khách hàng lập hoá đơn bán hàng,…
Nếu tìm được đúng thông tin yêu cầu sau đó gởi thông tin này đến hệ thống có yêu cầu
Đây là mô hình Client / Server ( khách / chủ) Client gởi yêu cầu ( thông điệp) đến server Sự tác động này gọi là sự giao dịch
Client A :
{Goiyeucau(B,yc) // client gởi server B
Nhanyeucau(ketqua)}
Sever B
Trang 8GẮN BÓ DỮ LIỆU TRÊN CÁC SERVER NGANG HÀNG Trang 4
{ Nhanyeucau(s,nh)
Nếu(hợp lệ)
Bắt đầu Tracuucsdl Thongke Traketqua(s,kq) }
Câu truy vấn có thể cài đặt tại Client hoặc tại máy Server Hai giải pháp này khác nhau
ở khối lượng thông tin trao đổi giữa các client với nhau Giả sử rằng ta đang theo tác trên môi trường Web Vậy chương trình có thể triển khai trên Server và trên Client chỉ cần trình duyệt Web mà thôi (các trình duyệt Web như Internet Explorer, Netcape Navigator) Web Server xử
lý các yêu cầu từ Client gởi lên sau khi xử lý xong và trả về kết quả Client Như vậy với mô hình này thì chương chình được cài đặt toàn bộ trên Server
Với mô hình trên ta thấy độ tin cậy của thông tin Thông tin là đúng tại thời điểm Server nhận được thông điệp và đọc nó, có thể không đúng khi khi client nhận được Điều này liên quan đến việc làm tươi dữ liệu
Vì vậy ta phải có giải pháp cho việc truy cập đồng thời vào dữ liệu dùng chung Hiện tại ta có một số hệ quản trị CSDL như SQL Server 2005 hoặc Oracle có tính năng bảo mật và phân quyền rất tốt do đó đảm bảo tính an toàn cho hệ thống thông tin
Có một số hệ quản trị CSDL có tính năng Transaction ( lập phiên giao dịch) cho phép đảm bảo tính thống nhất trong khi lưu trữ dữ liệu đảm bảo không xẩy ra treo hệ khi nhiều Client cùng truy xuất vào một CSDL
Trong thực tế việc treo hệ vẫn có thể xảy ra ví dụ : một khách hàng A mua hàng hoá K tại đại lý B và C khách hàng này nhận được lời chấp nhận với một số lượng cụ thể, nhưng số lượng mặt hàng này không có hoặc có mà không đủ tại đại lý B và C trong khi ra lệnh thì yêu cầu của khách hàng vẫn được chấp nhận vì số lượng vẫn còn ở một địa điểm khác Vì vậy xảy
ra vấn đề khách hàng A nhận được phản hồi chấp nhận mà trên thực tế số lượng hàng hoá tại
vị trí ấy không có
Trang 9PHẦN II: LẬP TRÌNH HỆ THỐNG ĐA SERVER BẰNG NGÔN NGỮ JAVA
1 Giới thiệu mô hình đối tượng phân tán RMI
RMI (Remote Method Invocation) là một công nghệ Java cho phép một máy ảo Java
này tương tác với một máy ảo Java khác và gọi các phương thức đối tượng Ứng dụng phân tán trong Java thông qua cơ chế RMI thực chất là sự kết hợp nhiều đối tượng đang tồn tại trên các máy khác nhau để giải quyết vấn đề Đối tượng này sử dụng hàm của đối tượng khác ở xa
để thực thi công việc Khi đó việc gọi thực thi đối tượng ở xa cũng giống như gọi đối tượng địa phương
Để làm được điều này, ứng dụng phân tán RMI dùng bộ phận đăng ký dịch vụ (registry)
để quản lý hoạt động của các đối tượng trên mạng Khi đó thông qua bộ phận đăng ký này, máy ảo Java đóng vai trò server sẽ liên kết với đối tượng ở xa (remote object)
Client tìm đến đối tượng ở xa thông qua tên đã đăng ký với bộ phận đăng ký server này
Bộ phận đăng ký dịch vụ được thiết lập mặc định ở cổng 1099 thông qua rmiregistry, có trong
bộ công cụ phát triển Java (J2SDK)
Vị trí của hệ thống RMI trong ứng dụng phân tán được mô tả như hình dưới Trong đó các chương trình client và server trao đổi với nhau qua cầu nối của hệ thống RMI
Kiến trúc của hệ thống RMI bao gồm các tầng như sau:
RMI Registry RMI Client
RMI Server
Trang 10GẮN BÓ DỮ LIỆU TRÊN CÁC SERVER NGANG HÀNG Trang 6
Để quá trình truyền tin là trong suốt với người lập trình, truyền tin giữa client và server được cài đặt theo mô hình phân tầng như hình vẽ dưới đây
Các ứng dụng RMI được chia thành hai chương trình độc lập là: chương trình Client và chương trình Server Chương trình Server tạo ra các đối tượng từ xa và cung cấp các tham chiếu đến chúng và chờ các chương trình Client triệu gọi các đối tượng này Chương trình Client nhận tham chiếu đến các đối tượng ở xa (đối tượng do chương trình Server tạo ra) và triệu gọi chúng như các đối tượng cục bộ
2 Cơ chế hoạt động của RMI:
Các hệ thống RMI phục vụ cho việc truyền tin thường được chia thành hai loại: client và server Một server cung cấp dịch vụ RMI, và client gọi các phương thức trên đối tượng của dịch vụ này
Server RMI phải đăng ký với một dịch vụ tra tìm và đăng ký tên Dịch vụ này cho phép các client truy tìm chúng, hoặc chúng có thể tham chiếu tới dịch vụ trong một mô hình khác Một chương trình đóng vai trò như vậy có tên là rmiregistry, chương trình này chạy như một tiến trình độc lập và cho phép các ứng dụng đăng ký dịch vụ RMI hoặc nhận một tham chiếu tới dịch vụ được đặt tên Mỗi khi server đựơc đăng ký, nó sẽ chờ các yêu cầu RMI từ các client Gắn với mỗi đăng ký dịch vụ là một tên được biểu diễn bằng một xâu ký tự để cho phép các client lựa chọn dịch vụ thích hợp Nếu một dịch vụ chuyển từ server này sang một server khác, client chỉ cần tra tìm trình đăng ký để tìm ra vị trí mới Điều này làm cho hệ thống có khả năng dung thứ lỗi-nếu một dịch vụ không khả dụng do một máy bị sập, người quản trị hệ
Đường logic
Chương trình Server Skeleton Tầng tham chiếu từ xa Tầng giao vận
Chương trình Client
Stub Tầng tham chiếu từ xa Tầng giao vận Network
Trang 11thống có thể tạo ra một thể hiện mới của dịch vụ trên một hệ thống khác và đăng ký nó với trình đăng ký RMI
Các client RMI sẽ gửi các thông điệp RMI để gọi một phương thức trên một đối tượng
từ xa Trước khi thực hiện gọi phương thức từ xa, client phải nhận được một tham chiếu từ xa Tham chiếu này thường có được bằng cách tra tìm một dịch vụ trong trình đăng ký RMI Ứng dụng client yêu cầu một tên dịch vụ cụ thể, và nhận một URL trỏ tới tài nguyên từ xa Khuôn dạng dưới đây được sử dụng để biểu diễn một tham chiếu đối tượng từ xa:
rmi://hostname:port/servicename
Trong đó hostname là tên của máy chủ hoặc một địa chỉ IP, port xác định dịch vụ, và
servicename là một xâu ký tự mô tả dịch vụ.
Mỗi khi có được một tham chiếu, client có thể tương tác với dịch vụ từ xa Các chi tiết liên quan đến mạng hoàn toàn được che dấu đối với những người phát triển ứng dụng-làm việc với các đối tượng từ xa đơn giản như làm việc với các đối tượng cục bộ Điều này có thể có được thông qua sự phân chia hệ thống RMI thành hai thành phần, stub và skeleton
Đối tượng stub là một đối tượng ủy quyền, truyền tải yêu cầu đối tượng tới server RMI Cần nhớ rằng mỗi dịch vụ RMI được định nghĩa như là một giao tiếp, chứ không phải là một chương trình cài đặt, các ứng dụng client giống như các chương trình hướng đối tượng khác Tuy nhiên ngoài việc thực hiện công việc của chính nó, stub còn truyền một thông điệp tới một dịch vụ RMI ở xa, chờ đáp ứng, và trả về đáp ứng cho phương thức gọi Người phát triển ứng dụng không cần quan tâm đến tài nguyên RMI nằm ở đâu, nó đang chạy trên nền nào, nó đáp ứng đầy đủ yêu cầu như thế nào Client RMI đơn giản gọi một phương thức trên đối tượng ủy quyền, đối tượng này quản lý tất cả các chi tiết cài đặt
Trang 12GẮN BÓ DỮ LIỆU TRÊN CÁC SERVER NGANG HÀNG Trang 8
Tại phía server, đối tượng skeleton có nhiệm vụ lắng nghe các yêu cầu RMI đến và truyền các yêu cầu này tới dịch vụ RMI Đối tượng skeleton không cung cấp bản cài đặt của dịch vụ RMI Nó chỉ đóng vai trò như là chương trình nhận các yêu cầu, và truyền các yêu cầu Sau khi người phát triển tạo ra một giao tiếp RMI, thì anh ta phải cung cấp một phiên bản cài đặt cụ thể của giao tiếp Đối tượng cài đặt này được gọi là đối tượng skeleton, đối tượng này gọi phương thức tương ứng và truyền các kết quả cho đối tượng stub trong client RMI Mô hình này làm cho việc lập trình trở nên đơn giản, vì skeleton được tách biệt với cài đặt thực tế của dịch vụ Tất cả những gì mà người phát triển dịch vụ cần quan tâm là mã lệnh khởi tạo (để đăng ký dịch vụ và chấp nhận dịch vụ), và cung cấp chương trình cài đặt của giao tiếp dịch vụ RMI
3 Kết nối và truy cập cơ sở dữ liệu :
Ngày nay khi đề cập đến việc xây dựng những chương trình máy tính, người ta thường cài đặt dưới dạng giao diện làm việc trên Web
Các chương trình làm việc không chỉ giới hạn trên một máy đơn lẽ mà còn phân tán trên nhiều máy đặt ở những vị trí địa lý khác nhau
Ví dụ từ client với Web browser, chúng ta có thể truy cập đến những server khác nhau như:
• Server chứa cơ sở dữ liệu (Database server),
• Server quản trị Web (Web server),
• Server chứa chương trình ứng dụng (Application server)
Trong các Server kể trên, Server quản trị cơ sở dữ liệu đóng vai trò hết sức quan trọng Hầu hết các hệ thống thông tin đều cần đến Server này Người ta có con số thống kê chỉ ra rằng có khoảng trên 80% ứng dụng máy tính liên quan đến cơ sở dữ liệu
Với Java, ngôn ngữ được phát triển nhằm hướng về với mạng Internet Việc truy cập đến
cơ sở dữ liệu từ nhiều vị trí khác nhau là một việc không thể thiếu
Sử dụng Java để kết nối với dữ liệu trên các hệ quản trị cơ sở dữ liệu cho phép tạo ra các trang Web mang tính "động" hơn Làm cho các trang văn bản Web không còn là các văn bản với các liên kết như buổi ban đầu mới sáng tạo ra