5 MỞ ĐẦU Oracle luôn tự hào là thương hiệu phần mềm hàng đầu trên thế giới, chuyên cung cấp các giải pháp quản lý dữ liệu cũng như các hệ thống quản lý được thiết kế trên đám mây cho do
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN MÔN HỌC
ĐỀ TÀI: Tìm hiểu Oracle và xây dựng ứng dụng minh họa
Giảng viên hướng dẫn : Trần Như Ý Sinh viên thực hiện :
1 <2033180168> – <Nguyễn Bảo Kha>
2 <2033181104> – <Đoàn Thị Thu Hà>
TP HỒ CHÍ MINH – 2021
Trang 2LỜI CẢM ƠN
Lời đầu tiên, chúng em xin gửi lời cảm ơn đến Trường Đại học Công nghiệp Thực phẩm TP.Hồ Chí Minh, đây là ngôi nhà thứ hai - nơi mà chúng em gắn bó trong suốt thời gian vừa qua Cảm ơn Ban giám hiệu nhà trường cùng toàn thể các quý thầy, cô đã luôn tạo cho chúng em một môi trường học tập và rèn luyện tốt nhất Bằng sự nhiệt huyết với nghề, với các thế hệ tương lai, các thầy cô đã truyền đạt những kiến thức quý báu và trao cho chúng
em những hành trang bổ ích để chúng em tự tin hơn trong chặn đường của mình sắp tới Lời thứ hai, chúng em xin cảm ơn cô Trần Như Ý đã tận tình hướng dẫn đồ án cho chúng
em trong thời gian vừa qua Tuy chúng em chưa học môn học nào của cô nhưng chúng em cảm nhận cô là một giảng viên rất tận tâm với nghề, với sinh viên của mình Chúng em chúc cô có nhiều sức khỏe và nhiều thành công hơn trong tương lai
Cuối cùng, do chưa có nhiều kinh nghiệm cũng như hạn chế về mặt kiến thức trong đồ án lần này chắc chắn sẽ không tránh khỏi những thiếu sót Chúng em rất mong nhận được sự nhận xét, đánh giá và đóng góp ý kiến từ quý thầy cô để đồ án của chúng em được hoàn thiện hơn
Chúng em xin chân thành cảm ơn !
Trang 33
MỤC LỤC
LỜI CẢM ƠN 2
MỞ ĐẦU 5
CHƯƠNG 1 :TỔNG QUAN 6
1.1 GIỚI THIỆU 6
1.2 MỤC TIÊU VÀ PHẠM VI ĐỀ TÀI 6
1.2.1 Mục tiêu đề tài: 6
1.2.2 Phạm vi đề tài: 7
CHƯƠNG 2 : CƠ SỞ LÝ THUYẾT 8
2.1 TÌM HIỂU ORACLE : 8
2.1.1 Hướng dẫn cài đặt : 8
2.1.2 Các thành phần kiến trúc của Oracle : 18
2.2 TÌM HIỂU CÔNG CỤ JAVA: 23
2.2.1 Giới thiệu về công cụ Netbean IDE 8.2 : 23
2.2.2 Cài đặt Netbean IDE: 23
2.2.3 Hướng dẫn tạo một Project Java Swing đơn giản: 25
CHƯƠNG 3 : XÂY DỰNG HỆ THỐNG 31
3.1 MÔ HÌNH QUAN HỆ: 31
3.2 MÔ HÌNH PHÂN CẤP CHỨC NĂNG: 34
3.3 THIẾT KẾ CÁC GIAO DIỆN: 34
3.5 THIẾT KẾ CÁC CHỨC NĂNG: 39
CHƯƠNG 4 : KẾT LUẬN 54
TÀI LIỆU THAM KHẢO 55
Trang 4DANH MỤC CÁC HÌNH VẼ
Bảng 3.1 Mô hình cơ sở dữ liệu
Bảng 3.2 Mô hình phân cấp chức năng
Trang 55
MỞ ĐẦU
Oracle luôn tự hào là thương hiệu phần mềm hàng đầu trên thế giới, chuyên cung cấp các giải pháp quản lý dữ liệu cũng như các hệ thống quản lý được thiết kế trên đám mây cho doanh nghiệp Khi nhận thấy thị trường chưa được khai thác tại Việt Nam, Oracle đã từng bước thâm nhập và đứng vững trên thị trường khá non trẻ này Với một số giải pháp mà Oracle đưa ra đã giúp chúng ta giải quyết được rất nhiều bài toán về sự hạn chế về chi phí cũng như về chất lượng cơ sở hạ tầng công nghệ thông tin Oracle nắm giữ một vai trò cực
kì quan trọng trong mảng công nghệ thông tin cho các doanh nghiệp, tổ chức
Đối với việc xây dựng một hệ thống quản lý cho một cửa hàng nào đó thì không thể bỏ qua
sự góp mặt đáng tin cậy của oracle Việc xây dựng hệ thống quản lý là vô cùng cần thiết, chúng ta không thể vừa bán hàng vừa phải ghi chép, theo dõi hay thống kê một khối dữ liệu quá lớn như vậy được Đó là điểm hạn chế của cách thức quản lý truyền thống, nó gây rất nhiều khó khăn cho người quản lý, hoặc thậm chí là gây ra những sự cố không đáng có nếu không biết cách quản lý phù hợp Nhận thấy những trở ngại trong quá trình quản lý, chúng
em đã quyết định tìm hiểu và nghiên cứu một ứng dụng khắc phục được những hạn chế của quản lý theo cách truyền thống, giúp cho việc quản lý trở nên đơn giản và hiệu quả hơn
Trang 6CHƯƠNG 1 :TỔNG QUAN
1.1 GIỚI THIỆU
Như chúng ta đã biết, Oracle được biết đến với thương hiệu là nhà cung cấp công nghệ lớn nhất trên thị trường hiện nay, phục vụ cho mục đích quản lý cơ sở dữ liệu quan hệ, nó có thể hỗ trợ đa dạng nhiệm vụ như xử lý các giao dịch, ứng dụng phân tích và hệ thống business intelligence (BI) Oracle nắm giữ vai trò quan trọng trong mảng công nghệ thông tin của các doanh nghiệp
Trong thời đại công nghệ ngày càng phát triển hiện nay, nhu cầu thay đổi các thiết
bị công nghệ thông minh của con người ngày càng nhiều, đặc biệt là điện thoại di động Khi nhu cầu tăng cao thì cùng với đó kéo theo nhu sản xuất cũng tăng cao, với nhiều nhà cung cấp cùng nhiều mẫu mã sản phẩm đa dạng Việc quản lý một cửa hàng theo cách thủ công sẽ gặp nhiều hạn chế, gây khó khăn cho người quản lý Vì vậy, việc xây dựng một phần mềm “Quản lý cửa hàng điện thoại” là điều cần thiết
Với bất cứ mô hình kinh doanh nào nói chung và mô hình kinh doanh cửa hàng điện thoại nói riêng, thì tiêu chí doanh thu và sự hài lòng của khách hàng luôn được đặt lên hàng đầu Công việc quản lý một cửa hàng không phải là điều đơn giản, và nếu chọn cách thức quản lý không phù hợp thì có thể xảy ra những sự thất thoát không đáng có Do đó, để giúp cho người quản lý dễ dàng kiểm soát các hoạt động trao đổi, mua bán diễn ra trong cửa hàng để mang lại lợi nhuận và sự phục vụ khách hàng một cách tốt nhất nên nhóm em đã thực hiện đề tài này
Trang 77
các hoạt động kinh doanh cửa hàng Hỗ trợ tối đa trong việc kinh doanh và quản
lí nhiều loại dữ liệu phát sinh , phù hợp với doanh nghiệp và cả những cửa hàng nhỏ lẻ , tiết kiệm được chi phí và thời gian để xử lý các loại dữ liệu
1.2.2 Phạm vi đề tài:
Đề tài được xây dựng cho cửa hàng quản lý bán điện thoại với quy mô vừa và nhỏ Đồ án được thực hiện dựa trên cơ sở của ngôn ngữ Java, công nghệ Oracle cùng phần mềm hỗ trợ như Netbean 8.0.2, Oracle Database 19c
Trang 8CHƯƠNG 2 : CƠ SỞ LÝ THUYẾT 2.1 TÌM HIỂU ORACLE :
2.1.1 Hướng dẫn cài đặt :
Hướng dẫn cài đặt Phần mềm Oracle 19c
Download phần mềm trên trang Oracle.com:
Sau khi download file cài đặt Oracle về máy tính
- Giải nén tới thư mục root của ổ địa của bạn
- Chạy file setup.exe
Trang 99
Chọn “Create and configure a single instance database” : cài đặt và khởi tạo
database
Chọn “Server class”
Trang 10• Chọn “Advanced install”
• Chọn “Enterprise Edition”: chọn phiên bản database
Trang 1111
• Chọn “Create New Windows User”
• Chọn nơi để install Oracle base:
Trang 12• Chọn “General Purpose/Transaction Processing”
• Tạo tên Database
Trang 1313
• Cấu hình bộ nhớ, check “Enable Automatic Memory Management” để chọn
tổng bộ nhớ theo kiểu version 11g (Không cần thiết nếu máy trên 4GB RAM)
• Kiểm tra “ Install sample schemas in the database” để cài đặt Sample
Schemas
Trang 14• Chọn nơi lưu trữ dữ liệu:
• Nhấn Next để tiếp tục
Trang 1515
• Check “ Enable Recovery”
• Chọn “Use the same password for all accounts” để đặt password cho system
Trang 16• Kiểm tra thông số cài đặt có phù hợp để cài Database hay không
• Nhấn Install để bắt đầu quá trình cài đặt
Trang 1717
• Đợi quá trình cài đặt hoàn tất
• Nhấn Close để kết thúc
Trang 182.1.2 Các thành phần kiến trúc của Oracle :
a Một số khái niệm chính:
• Oracle Instance: bao gồm một cấu trúc bộ nhớ System Global Area (SGA), Program Global Area (PGA) và các background process (tiến trình nền) được sử dụng để quản trị cơ sở dữ liệu Oracle instance được xác định qua tham số ORACLE_SID của hệ điều hành
System Global Area – SGA:
– Là vùng bộ nhớ được chỉ định cho Oracle Instance, và các Oracle process sẽ sử dụng vùng nhớ này để lưu giữ các thông tin (thông tin input, hoặc các thông tin control) sẽ được sử dụng bởi database
– Bao gồm một vài cấu trúc bộ nhớ chính:
▪ Shared pool: là một phần của SGA lưu các cấu trúc bộ nhớ chia sẻ
▪ Database buffer cache: Lưu trữ các dữ liệu được sử dụng gần nhất
▪ Redo log buffer: Được sử dụng cho việc dò tìm lại các thay đổi trong cơ sở dữ liệu và được thực hiện bởi các backgroud process [1]
Program Global Area (PGA):
– Là một phần bộ nhớ lưu trữ dành cho 1 User process kết nối tới một Instance bao gồm dữ liệu và thông tin điều khiển cho một server hoặc một Background process Được chỉ định khi một Server Process khởi động
– Bao gồm:
▪ Session information
▪ Cursor information
▪ SQL execution work area [4]
Background process (tiến trình nền):
– Thực hiện các chức năng thay cho lời gọi tiến trình xử lý tương ứng Nó điều khiển vào ra, cung cấp các cơ chế xử lý song song nâng cao hiệu quả và độ tin cậy
– Oracle database: là tập hợp các dữ liệu được xem như một đơn vị thành phần, database có nhiệm vụ lưu trữ và trả về các thông tin liên quan Bao gồm cấu trúc vật lý và cấu trúc logic.[1]
Trang 1919
• Oracle Database: bao gồm cấu trúc vật lý và cấu trúc logic
Về mặt cấu trúc vật lý: bao gồm tập hợp các control file, online redo log file và các datafile
– Control file:
Mỗi oracle có ít nhất một control file, nó chứa các mục thông tin quy định cấu trúc vật lý của database như: tên của database, tên và nơi lưu trữ các datafiles hay Redo log files, Time stamp(mốc thời gian) tạo lập database,…
– Redo log files:
Mỗi oracle database đều có một tập hợp từ 2 redo log files trở lên Chức năng chính của redo log files là ghi lại tất cả các thay đổi đối với dữ liệu trong database – Datafiles:
Mỗi một Oracle database đều có thể có một hay nhiều datafiles Dữ liệu trong một datafiles tạo nên có thể đọc ra và lưu vào vùng nhớ bộ đệm của Oracle.[1]
Về mặt cấu trúc logic: Bao gồm các đối tượng Tablespace, schema objects, data blocks, extents và segment
– Tablespace:Một database có thể phân nhỏ thành nhiều phần gọi là các tablespaces Tablespace thường bao gồm một nhóm các thành phần có quan hệ logic với nhau – Schema object:
Schema là tập hợp các đối tượng (object) có trong database
Schema object là các cấu trúc logic cho phép tham chiếu trực tiếp tới dữ liệu trong database Bao gồm các cấu trúc: tables, sequences, stored procedures, synonyms, indexes, clusters và database links
– Data blocks, extents và segment:
Oracle điều khiển không gian lưu trữ trên đĩa cứng theo các cấu trúc logic bao gồm các data blocks, extents, và segments.[1]
b Một số khái niệm liên quan đến kết nối:
– Connection (liên kết):
Liên kết là đường liên lạc giữa một user process và một Oracle server
– Session (phiên):
Trang 20Một phiên tương ứng với một liên kết cụ thể của một user tới một Oracle server Phiên bắt đầu khi user kết nối đến Oracle server đã được kiểm tra hợp lệ và kết thúc khi user log out khỏi Oracle server hoặc user kết thúc một cách bất thường Một user có thể cùng lúc có thể có nhiều tool làm việc.[1]
c Một số lệnh hướng dẫn xem thông tin trên Oracle:
• Xem thông tin PGA: SELECT * FROM V$PGASTAT
• Xem thông tin SGA: SELECT * FROM V$SGAINFO
Trang 22• Xem một số thông tin về Instance: SELECT INSTANCE_NUMBER, INSTANCE_NAME, HOST_NAME, STATUS, PARALLEL FROM V$INSTANCE
d Tạo User và phân quyền:
• Tạo User:
• Thay đổi User:
• Phân quyền user:
Trang 2323
2.2 TÌM HIỂU CÔNG CỤ JAVA:
2.2.1 Giới thiệu về công cụ Netbean IDE 8.2 :
Netbean IDE 8.2 là một trong những trình soạn thảo dành cho các lập trình viên lập trình java tạo ra các chương trình ứng dụng dành cho web doanh nghiệp, desktop và các thiết bị di động khác, nó hỗ trợ trên nền tảng nhiều hệ điều hành khác nhau Ưu điểm của nó là cung cấp một môi trường làm việc thân thiện, khả năng tự động biên dịch khi lưu.[5]
2.2.2 Cài đặt Netbean IDE:
- Trước khi cài đặt Netbean IDE, chúng ta cần phải cài đặt Java SE Development Kit (JDK), lưu ý cần chọn đúng phiên bản JDK phù hợp hợp với hệ điều hành bạn đang sử dụng
- Download Netbean IDE 8.2:
Trang 24- Tiến hành cài đặt :
- Màn hình chính của Netbean IDE 8.2:
Trang 2525
2.2.3 Hướng dẫn tạo một Project Java Swing đơn giản:
Bước 1:
• Mở ứng dụng Netbean, chọn File -> New Project, xuất hiện hộp thoại New Project
• Chọn Java -> Java Application, nhấn Next
• Điền tên project vào Project Name, và chọn nơi lưu trữ ở Project Location, nhấn Finish
Bước 2: Tạo JFrame
Trang 26• Sau khi tạo project thành công, nhấn phải chuột vào project vừa tạo, chọn New -> JFrame Form…
• Hộp thoại New JFrame Form xuất hiện, đặt tên ở Class Name, nhấn Finish
Trang 2727
• Đây là giao diện chính khi tạo một JFrame:
Chúng ta chỉ việc nắm và kéo thả các thành phần giao diện trong Swing vào
JFrame
Khi chọn vào mỗi thành phần trên giao diện lập tức các thuộc tính của nó như màu sắc, font chữ, tên etc sẽ được hiển thị ở phần Properties Ngoài ra nó còn có tab Events chứa các sự kiện và dẫn đến code xử lý của chúng ta
Mẫu đăng ký trên mình kéo thả các thành phần:
JLabel: dùng để hiển thị các tên User name, Password
JTextField: cho phép người dùng nhập các thông tin tương ứng
JButton: cho phép người dùng submit dữ liệu đã nhập
Trang 28• Đây là giao diện sau khi thực hiện kéo thả:
Bước 3: Xử lý sự kiện
• Mặc định thì tên các biến đại diện cho các thành phần trong JFrame rất khó hiểu như JTextField1, JButton1 etc Chúng ta có thể thay đổi chúng trong Tab
Properties ở mục Code
• Ở đây mình đổi tên của các TextField và Button để dễ sử dụng hơn:
userNameText, passwordText và btnLogin
Trang 29Bước 4 : Khởi chạy chương trình
• Nhấn phải chuột, chọn Run File
Trang 30• Nhập username và password đã tạo:
Trang 3131
CHƯƠNG 3 : XÂY DỰNG HỆ THỐNG
3.1 MÔ HÌNH QUAN HỆ:
– Mô hình cơ sở dữ liệu:
Bảng 3.1 Mô hình cơ sở dữ liệu
Trang 343.2 MÔ HÌNH PHÂN CẤP CHỨC NĂNG:
Bảng 3.2 Mô hình phân cấp chức năng
3.3 THIẾT KẾ CÁC GIAO DIỆN:
Thiết kế tất cả các màn hình trong hệ thống
- Đăng nhập : dùng để đăng nhập tài khoản mà bạn đã đăng ký
Trang 3535
- Đăng ký tài khoản: dùng để đăng ký mới một tài khoản người dùng
Trang 36- Nhà cung cấp: quản lý một số thông tin của nhà cung cấp như mã nhà cung cấp, tên,
số điện thoại, email của nhà cung cấp
- Khách hàng: quản lý một số thông tin của khách hàng như mã khách hàng, tên, số
điện thoại, giới tính, ngày sinh của khách hàng
Trang 3737
- Sản phẩm: quản lý một số thông tin của sản phẩm như mã sản phẩm, tên, đơn vị
tính, số lượng, đơn giá,… của sản phẩm
- Nhân viên: quản lý một số thông tin của nhân viên như mã nhân viên, tên, giới tính,
số điện thoại, email của nhân viên
Trang 38- Hệ thống: quản lý một số thông tin của hệ thống như database, Instance, PGA, SGA,
Datafile,…
- Hóa đơn: Quản lý một số thông tin của hóa đơn mã hóa đơn, sản phẩm mua, nhân viên bán , số lượng, đơn giá,…
Trang 40a Quản lý thông tin nhà cung cấp : thêm, xóa, sửa
• Thêm thành công nhà cung cấp: để thêm nhà cũng cấp bạn hãy điền thông tin như mã nhà cung cấp, tên, số điện thoại, email vào ô trống và nhấn nút Thêm
• Sửa thành công nhà cung cấp: bạn muốn sửa đổi thông tin của nhà cung cấp thì chọn nhà cung cấp bạn muốn sửa, sửa thông tin và nhấn nút Sửa để cập nhật
Trang 42b Quản lý thông tin Nhân Viên : thêm, xóa, sửa
• Thêm thành công nhân viên: nhập thông tin nhân viên vào bảng vào nhấn Thêm để thêm nhân viên
Trang 44c Quản lý sản phẩm:
Tìm kiếm sản phẩm: tìm kiếm sản phẩm theo tên nhà cung cấp
Kiểm tra nhập trùng : Khi bạn nhập mã sản phẩm bị trùng với mã sản phẩm đã có hoặc bỏ trống thì hệ thống sẽ hiện ra một thông báo , bạn vui lòng nhập lại mã sản phẩm khác
Trang 46 Xóa thành công sản phẩm: để xóa sản phẩm, bạn chọn sản phẩm cần xóa và nhấn nút Xóa
d Quản lý khách hàng:
Thêm thành công khách hàng: nhập thông tin khách hàng vào bảng và nhấn Thêm để thêm khách hàng