Để xây dựng chương trình chúng em đã sử dụng ngôn ngữ lập trình Java để lập trình và hệ quản trị cơ sở dữ liệu MySQL để quản lí cơ sở dữ liệu.Chúng kết nối với nhau thông qua trình điều khiển JDBC. Dưới đây là giới thiệu công nghệ mà chúng em đã sử dụng.
1.Ngôn ngữ lập trình Java:
1.1 Giới thiệu về Java:
Java là một ngôn ngữ lập trình hướng đối tượng (OOP). Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi chạy. Bằng cách này, Java thường chạy nhanh hơn ngôn ngữ lập trình thông dịch khác như Pythorn, Perl, PHP ,…
Cú pháp Java được vay mượn nhiều từ C và C++ nhưng có cú pháp hướng đối tượng đơn giản hơn và ít tính năng xứ lý cấp thấp hơn.
Một số đặc điểm nổi bật của ngôn ngữ lập trình Java:
Thông dịch :
Java là ngôn ngữ vừa lập trình biên dịch vừa thông dịch. Chương trình nguồn viết băng ngôn ngữ lập trình Java có đuổi *.java đầu tiên được biên dịch thành tập tin có đuôi *.class và sau đó sẽ được trình thông dịch mã máy.
Độc lập nền:
Một chương trình viết bằng ngôn ngữ Java có thể chạy trên nhiều máy tính có hệ điều hành khác nhau (Windows, Unix, Linux,..) miễn sao ở đó có cái đặt máy ảo java. Viết một lần chạy mọi nơi.
Hướng đối tượng:
Hướng đối tượng trong Java tương tự trong C++ nhưng Java là một ngôn ngữ lập trình hướng đối tượng hoàn toàn. Tất cả mọi thứ trong java đều liên quan đến các đối được định nghĩa trước, thậm chí hàm chính của chương trình viết bằng Java cũng phải đặt trong một lớp. Hướng đối tượng trong Java không có tính đa kế thừa nhưng trong C ++ mà thay vào đó Java đưa ra khái niệm interface để hỗ trợ tính đa kế thừa.
Đa nhiệm- đa luồng:
Java hỗ trợ lập trình đa nhiệm, đa luồng cho phép nhiều tiến trình , tiểu trình có thể chạy song song cùng một thời điểm và tương tác với nhau.
Khả chuyển :
Chương trình ứng dụng viết bằng ngôn ngữ Java chỉ cần chạy được trên máy ảo Java là có thể chạy được trên bất kì máy tính, hệ điều hành nào có máy ảo.
Hỗ trợ mạnh cho việc phát triển ứng dụng :
Công nghệ Java phát triển mạnh mẽ nhờ vào Sun Microsystem cung cấp nhiều công cụ, thư viện lập trình phong phú hỗ trợ cho việc phát triển nhiều loại ứng dụng khác nhau cụ thể : J2SE hỗ trợ phát triển ứng dụng đơn, ứng dụng client- sever, J2EE hỗ trợ phát triển các ứng dụng thương mại, J2ME hỗ trợ phát triển ứng dụng trển các thiết bị di động không dây.
1.2. Công cụ sử dụng :
Quá trình hoàn thành bài tập lớn, chúng em đã sử dụng chương trình NetBean để viết chương trình với ngôn ngữ Java. Chương trình hỗ trợ cho việc lập trình với chức năng gợi ý các phương thức của các lớp có sẵn cũng như lớp mới xây dựng. Chương trình cũng hỗ trợ bắt các ngoại lên trong quá trình xây dựng chương trình. Tuy nhiên, ưu điểm lớn nhất của NetBean là có thế xây dựng giao diện bằng kéo thả, hỗ trợ tối đa về giao diện cho người lập trình.
2. Hệ quản trị cơ sở dữ liệu MySQL:
MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất trên thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các tiện ích rất mạnh. Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL miễn phí hoàn toàn. MySQL có nhiều phiên bản chạy cho các hệ điều hành khác nhau : Win32 cho các hệ điều hành dòng windows, linux, Mac OS X,
….
3. Trình điều khiển JDBC – kết nối ngôn ngữ Java và MySQL:
3.1 Giới thiệu về JDBC:
JDBC là API Java cơ sở, mà nó cung cấp một các lớp và giao diện được viết bằng Java để truy xuất và thao tác với nhiều loại hệ cơ sở dữ liệu khác nhau.JDBC tồn tại là để giúp các nhà phát triển Java tạo nên các ứng dụng truy xuất cơ sở dữ liệu mà không cần phải học và sử dụng các API độc quyền do các công ty sản xuất phần mềm khác nhau bên thứ ba cung cấp.
3.2 Kiến trúc JDBC:
Trong Java có 2 lớp chủ yếu chịu trách nhiệm kết nối đến một cơ sở dữ liệu.
o Lớp đầu tiên là DriverManager. Đó là một trong rất ít các lớp thực sự do JDBC API cung cấp. DriverManager chịu trách nhiệm quản lý một nhóm các driver đã đăng kí, mà thực chất là trừu tượng hóa các chi tiết về việc sử dụng một driver, cho nên chúng ta không cần phải làm việc trực tiếp với driver đó.
o Lớp thứ 2 đó là một lớp JDBC Driver thực sự. Nó được cung cấp bởi các nhà sản xuất phần mềm độc lập. Lớp JDBC Driver chịu trách nhiệm thiết lập đường kết nối dữ liệu và xử lý tất cả các giao tiếp với cơ sở dữ liệu đó. Các JDBC Driver chia thành 2 phần:
JDBC API ( các gói java.sql và javax.sql)
Các kiểu JDBC Driver JDBC API, JDBC API có sẵn trong các gói java.sql và javax.sql.
3.3 Một số lớp JDBC quan trọng:
Một số lớp JDBC, các giao diện và ngoại lệ quan trọng:
DriverManager : nạp các JDBC Driver vào trong bộ nhớ. Có thể sử dụng nó để mở các kết nối tới một nguồn dữ liệu.
Connection : biểu thị một kết nối đến một nguồn dữ liệu. Được dùng để tạo ra ác đối tượng Statement, PreparedStatement và CallableStatement. ( Statement biểu diễn môt lệnh SQL tĩnh, có thể sử dụng để thu về đối tượng ResultSet)
PreparedStatement : một giải pháp thay thế hoạt động tốt hơn đối tượng Statement, thực thi một câu lênh SQL đã được biên dịch trước.
CallableStatement : biểu diễn một thủ tục được lưu trữ. Có thể được sử dụng để thực thi các thủ tục được lưu trữ trong một cơ sở dữ liệu có hỗ trợ chúng.
ResultSet : biểu diễn một tập kết quả trong cơ sở dữ liệu tạo ra bởi việc sử dụng một câu lênh SQL là SELECT.
SQLExeption : một lớp xử lí ngoại lệ chứa các lỗi truy cập cơ sở dữ liệu.
DataSourse : trừu tượng hóa một nguồn dữ liệu. Đối tượng này có thể sử dụng thế cho DriverManager để tạo ra một cách có hiệu quả các kết nối cơ sở dữ liệu.
Trong bài tập lớn, chúng em sử dụng trình điều khiển JDBC để kết nối từ chương trình của mình vào cơ sở dữ liệu MySQL để có thế truy xuất dữ liêu từ cơ sở dữ liệu MySQL. Trên cơ sở đó chung em xây dựng nên các chức năng của hệ thống.
CHƯƠNG IV : KẾT QUẢ CHƯƠNG TRÌNH MINH HỌA