Báo cáo Chương trình quản lý nhân viên - Công nghệ thông tin | Trường Đại học Kiến trúc Hà Nội

Trước đây việc quản lý nguồn nhân lực đều được làm chủ yếu trên giấy tờ bằng hình thức thủ công rất mất thời gian, độ chính xác không cao. Tài liệu được sưu tầm giúp bạn tham khảo, ôn tập và đạt kết quả cao trong kì thi sắp tới. Mời bạn đọc đón xem !

BÀI TẬP CUỐI MÔ
N:Công
KHOA CÔNG NGHỆ THÔNG TIN
TRƯỜNG ĐẠI HỌC KIẾN TRÚC NỘI
KHOA CÔNG NGHỆ THÔNG TIN
N
MÔ va
Lớp :20CN3
BÁO CÁO CUỐI N
NHÓM 9
Bộ MÔN:CÔNG NGHỆ JAVA
ĐỀ
T
T
À
h
I
à
:
n
C
h
H
v
Ư
Ơ
n
N
n
G
T
m
NH
Nguyễ
Q
n
U
N
g
N
ọc
Qu
N
â
H
n
Â
(2
N
05
V
5
0
N
10219)
Nguyễn Văn Hợp (205501105)
GVHD : N
G
g
iả
u
n
y
g
ễn
vi
H
ê
n
n
:
g
Thanh
L
N
g
p
u
:
yễ
2
n
0C
H
N
3
ng
Thanh
Thực hiện bởi : Nhóm 9
Thành viên nhóm :
Nguyễn Ngọc Quân
msv:205501029
Nguyễn Văn Hợp
msv:2055010105
0
Mục lục :
Mở đu.............................................................................................2
do chọn đề tài.......................................................................2
I. TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN QUẢN NHÂN
S........3
1.Tìm hiều lược về hệ thống quản lý..................3
II. NGÔN NGỮ LẬP TRÌNH JAVA JAVA SWING.....................4
1. Ngôn ngữ lập trình java...............................................4
2. Đặc điểm của ngôn ngữ lập trình java................5
3. Java swing............................................................................5
I. CHƯƠNG TRÌNH QUẢN NHÂN SỰ BẰNG JAVA SWING
.............................................................................................................9
1. Giới thiu..............................................................................9
2. Chi tiết chương trình
......................................................................
10
3. Chạy chương trình
......................................................................
12
4. Kết thúc
......................................................................
14
1
ĐỀ I
Chương Trình Quản Nhân Viên
Mở đầu
Trước đây việc quản nguồn nhân lực đều được làm chủ yếu
trên giấy tờ bằng hình thức thủ công rất mất thời gian, độ chính xác
không cao. Ngày nay, các chủ kinh doanh bắt đầu biết đến các
chương trình quản nhân viên thông qua các ứng dụng thông minh
trên hệ thống máy tính.
thể nói chương trình quản nhân viên không đơn thuần chấm
công, tính lương nếu biết cách khai thác, mang lại lợi ích trên
rất nhiều khía cạnh.
Một chương trình quản nhân viên bài bản, chuyên nghiệp mang
đến rất nhiều lợi ích cho các doanh nghiệp nếu biết cách lựa chọn
sử dụng hợp lý.
Thứ nhất, người lãnh đạo thể quản doanh nghiệp chặt chẽ
mọi lúc mọi nơi thông qua hệ thống máy tính kết nối Internet.
Việc này giúp họ kiểm soát được mọi hoạt động, điều hành hiệu quả
các bộ phận tránh xảy ra sai phạm.
Thứ hai, quản lý, điều động khai thác đúng tiềm năng của nguồn
nhân lực giúp nâng cao năng suất làm việc, cải thiện doanh thu
hàng năm. Bên cạnh đó, việc đánh giá năng lựa khen thưởng
chính xác cũng giúp các nhân viên tinh thần làm việc tốt hơn.
Thứ ba, thay quản thủ công như trước đây mất thời gian, công
sức, lại hay sai sót thì chương trình quản thông minh giúp tiết
kiệm về mọi mặt.
do chọn đề i
Mỗi lần muốn tìm hồ của một nhân viên nào đótrong công ty
người quản nhân sự lại phải tìm lần lượt trong kho chứa xem hồ
nhân viên đó nằm đâu. Như vậy mất rất nhiều thời gian khi
không
tìm
ra
do
hồ nhân viên quá nhiều. Công việc lưu trữ hồ
rất thủ công hầu hết các khâu làm
chosố lượng nhân
viên
tham
gia
vào
việc lưu trữ hồ sẽ
nhiều lên.Việc thống
báo
cáo hàng tháng, hàng năm sẽ gặp rất nhiều khó khăn nếu thông tin
nhân viên ngày càng nhiều.Khi nhân viên trong công ty thôi
việc người quản nhân viên công ty phải tìm trong kho xem hồ
đó đâu để chuyển sang kho lưu trữ thôi việc. Nếu hàng ngày cứ
2
lặp đi lặp lại nhiều lần như vậy người quản nhân sự sẽ gặp rất
nhiều khó khăn trong công tác lưu trữ quản lý.Quản nhân sựlà
một trong những vấn đề then chốttrong mọi công ty. Quản nhân
sự không tốt sẽ dẫn đến nhiều vấn đề bất cập trong công ty. Chúng
ta luôn thấy những tình trạng chấm nhầm công hoặc lưu trữ sai
thông tin nhân viên, như vậy sẽ dẫn đến những những xáo trộn khi
phát lương.... vậy yêu cầu đặt ra đây làm thế nào để thể
lưu trữ hồ lương của nhân viên một cách hiệu quả nhất, giúp
cho nhân viên trong công ty thể yên tâm thoải mái làm
việc đạt kết quả cao.Ngoài những do trên còn một do
khiếnem quyết định chọn đềtài tốt nghiệp là“phần mềm quản
nhân sự”là em mong muốn phần mềm quản
nhân sự sẽ người hỗtrợđắc lực cho việc quản nhân sựcủa công
ty. Bạn không cần thiết phải biết nhiều vềtin học, bạn vẫn
thểsửdụng phần mềm quản nhân sựmột cách hiệu quả. Giao diện
thuận tiện dễsửdụng của chương trình sẽluôn khiến bạn cảm thấy
thật thoải mái khi sửdụng phần mềm này
I. TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN QUẢN NHÂN
S
1. Tìm hiểu lược về hệ thống thông tin quản
Tìm hiểu lược về thông tin Thông tin sự phản ánh sự vật, sự
việc, hiện tượng của thế giới khách quan các hoạt động của con
người trong đời sống hội. Điều bản con người thông qua việc
cảm nhận thông tin làm tăng hiểu biết cho mình tiến hành những
hoạt động ích cho cộng đồng.Môi trường vận động thông tin
môi trường truyền tin, bao gồm các kênh liên lạc tự nhiên hoặc
nhân tạo. Kênh liên lạc thường nối các thiết bị của máy móc với
nhau hay nối với con người. Con người hình thức liên lạc tự nhiên
cao cấp tiếng nói, từ đó nghĩ ra chữ viết. Ngày nay nhiều công
cụ phổ biến thông tin đã xuất hiện : máy in, điện tín, điện thoại, phát
thanh truyền hình, phim ảnh.... Khái niệm thông tin Thông tin tin
tức con người trao đổi với nhau,hay nói rộng hơn thông tin bao
gồm những tri thức về đối tượng.Theo quan điểm của nhà quản thì
thông tin những thông báo,số liệu dùng làm sở cho việc ra các
quyết định. Các tài liệu này chia làm 4 loại :-Tài liệu, số liệu ích
cho việc ra quyết định : thông tin về năng suất,giá thành,doanh
thu...-Tài liệu số liệu dùng ra quyết định sau này : thông tin dự trữ
3
-Tài liệu, số liệu không liên quan đến việc ra quyết định : liệu,số
liệu thừa...-Tài liệu, số liệu giả do các đối thủ tung ra gây nhiễu.Có
nhiều cách phân loại thông tin. Chúng ta quan tâm đến cách phân
loại dựa vào đặc tính liên tục hay rời rạc của tín hiệu vật lý.* Các loại
thông tin quản -Thông tin quản những dữ liệu được xử sẵn
sàng phục vụ công tác quản của tổ chức. 3 loại thông tin
quản trong 1 tổ chức, đó thông tin chiến lược,thông tin chiến
thuật thông tin điều hành.-Thông tin chiến lược : thông tin sử
dụng cho chính sách dài hạn của tổ chức, chủ yếu phục vụ cho các
nhà quản cao cấp khi dự đoán tương lai.Loại thông tin này đòi hỏi
tính khái quát, tổng hợp cao. Dữ liệu để xử ra loại thông tin này
thường từ bên ngoài tổ chức. Đây loại thông tin được cung cấp
trong những trường hợp đặc biệt.-Thông tin chiến thuật : thông
tin sử dụng cho chính sách ngắn hạn, chủ yếu phục vụ cho các nhà
quản phòng ban trong tổ chức. Loại thông tin này trong khi cần
mang tính tổng hợp vẫn đòi hỏi phải mức độ chi tiết nhất định
dạng thống kê. Đây loại thông tin cần được cung cấp định kỳ.-
Thông tin điều hành : (thông tin tác nghiệp) sử dụng cho công tác
điều hành tổ chức hàng ngày chủ yếu phục vụ cho người giám sát
hoạt động tác nghịêp của tổ chức. Loại thông tin này cần chi tiết,
được rút ra từ quá trình xử các dữ liệu trong tổ chức. Đây loại
thông tincần được cung cấp thường xuyên* Vai trò của thông tin
trong tổ chứcThông
tin
vai
trò
rất quan trọng đối với người
lãnh đạo, quản trong mọi tổ chức hoạt động để hoàn thành các
mục tiêu ngắn hạn, trung hạn dài hạn. Công việc lãnh đạo
quản đòi hỏi thông tin phải chính xác kịp thời đề ra các quyết
định đúng đắn, đem lại hiệu quả trong các hoạt động.Chất lượng
tính kịp thời của thông tin yếu tố rất quan trọng chỉ sau yếu tố con
người trong công việc lãnh đạo quản lí. Vấn đề chủ yếu hiện nay
đang đặt ra cho những người làm công tác lãnh đạo vả quản
thường xuyên phải xử khối lượng thông tin rất lớn để đề ra được
các quyết định đúng
đắn.Với khối lượng thông tin càng lớn càng đa dạng thì việc xử
quản thông tincàng khó khăn.
Khái niệm hệ thống -hệ thống thông tin –hệ thống thông tin quản
* Khái niệm hệ thống.-Hệ thống:là tổng thể gồm các bộ phận hoặc
các phần tử khác nhau mối quan hệ tác động qua lại với nhau
được sắp xếp theo một trình tựnhằm tạo thành một chỉnh thể
thống nhất, những tính chất mới, khả năng thực hiện một số
chức năng hoặc mục tiêu nhất định.* Các yếu tố bản của hệ
thống:-Môi trường: tất cả các yếu tố, điều kiện nằm bên ngoài
4
hệ thống ảnh hưởng đến kết quả hoạt động của hệ thống.-Yếu tố
đầu vào, ra : + Đầu vào : Tập hợp các tác động thể của môi
trường lên hệ thống+ Đầu ra : Tập hợp các tác động ngược lại của
hệ thống lên môi trường.-Cấu trúc hệ thống : sự sắp xếp các bộ
phận hoặc phần tử bêntrong của một hệ thống mối quan hệ qua
lại giữa chúng.-Mục tiêu của hệ thống : trạng thái mong muốn
của hệ thống sau một thời gian nhất định.* Hệ thống thông tin Hệ
thống thông tin một tập hợp nhiều thành phần chức năng thu
thập, lưu trữ,xử phân phối thông tin để hỗ trợ cho việc làm
quyết định điều hành trong một tổ chứcHệthống thông tintối thiểu
bao gồm con người, quy trình, dữliệu. Con người tuân theo quy
trình đểxửlý dữliệu tạo ra thông tin.* Hệ thống thông tin quản Hệ
thống thông tin quản hệ thống nhiệm vụ cung cấp các thông
tin cần thiết phục vụ cho việc quản điều hành một tổ chức. Thành
phần chiếm vị trí quan trọng trong hệ thống thông tin quản
một sở dữ liệu hợp nhất chứa các thông tin phản ánh cấu trúc nội
tạng của hệ thống các thông tin về các hoạt động diễn ra trong
hệ thống. Với hạt nhân sở dữ liệu hợp nhất, hệ thống thông tin
quản thể hỗ trợ cho nhiều lĩnh vực chức năng khác nhau
thể cung cấp cho các nhà quản lícông cụ khả năng dễ dàng truy
cập thông tin, hệ thống thông tin quản các chức năng chính : +
Thu nhập, phân tích lưu trữ các thông tin một cách hệ thống,
những thông tin ích được cấu trúc hoá để thể lưu trữ khai
thác trên các phươngtiện tin học.+ Thay đổi, sửa chữa, tiến hành
tính toán trên các nhóm chỉ tiêu, tạo ra thông tin mới.+ Phân phối
cung cấp thông tinHệ thống thông tin thường được cấu thành bởi :-
Các phần cứng-Phần mềm.-Các hệ mạng-Dữ liệu -Con người trong hệ
thống thông tin
II . NGÔN NGỮ LẬP TRÌNH JAVA JAVA
SWING
1. Ngôn ngữ lập trình Java
Java một trong những ngôn ngữ lập trình hướng đối tượng.
được sử dụng trong phát triển phần mềm, trang web, game hay ứng
dụng trên các thiết bị di động.
2. Đặc điểm của ngôn ngữ lập trình Java
Độc lập nền (Write Once, Run Anywhere): Không giống như nhiều
ngôn ngữ lập trình khác như C C ++, khi Java được biên dịch,
không được biên dịch sang máy cụ thể, thay vào đó
bytecode chạy trên máy ảo Java (JVM). Điều này đồng nghĩa với việc
5
bất cứ thiết bị nào cài đặt JVM sẽ thể thực thi được các chương
trình Java.
Đơn giản: Học Java thật sự dễ hơn nhiều so với C/C++, nếu bạn đã
quen với các ngôn ngữ lập trình hướng đối tượng thì việc học Java sẽ
dễ dàng hơn. Java trở nên đơn giản hơn so với C/C++ do đã loại bỏ
tính đa kế thừa phép toán con trỏ từ C/C++.
Bảo mật: Java hỗ trợ bảo mật rất tốt bởi các thuật toán hóa như
hóa một chiều (one way hashing) hoặc mã hóa công cộng (public
key)…
Thông dịch: Java một ngôn ngữ lập trình vừa 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 đuôi
*.java được biên dịch thành tập tin đuôi *.class sau đó được
trình thông dịch thôngĐa luồng: Với tính năng đa luồng Java thể
viết chương trình thể thực thi nhiều task cùng một lúc. Tính năng
này thường được sử dụng rất nhiều trong lập trình game.
Hướng đối tượng: Hướng đối tượng trong Java tương tự như C++
nhưng Java một ngôn ngữ lập trình hướng đối tượng hoàn toàn.
Tất cả mọi thứ đề cập đến trong Java đều liên quan đến các đối
tượng được định nghĩa trước, thậm chí hàm chính của một chương
trình viết bằng Java (đó hàm main) cũng phải đặt bên trong một
lớp. Hướng đối tượng trong Java không tính đa kế thừa (multi
inheritance) như trong C++ thay vào đó Java đưa ra khái niệm
interface để hỗ trợ tính đa kế thừa.
Hiệu suất cao: Nhờ vào trình thu gom rác (garbage collection), giải
phóng bộ nhớ đối với các đối tượng không được dùng đến.
Linh hoạt: Java được xem linh hoạt hơn C/C ++ được thiết
kế để thích ứng với nhiều môi trường phát triển. dịch thành máy.
3. JAVA SWING
Swing một bộ công cụ tiện ích GUI cho Java . [1] một phần
của Lớp nền tảng Java (JFC) của Oracle - một API để cung cấp giao
diện người dùng đồ họa (GUI) cho các chương trình Java.
Swing được phát triển để cung cấp một tập hợp các thành phần
GUI phức tạp hơn so với Bộ công cụ Cửa sổ Tóm tắt (AWT) trước đó .
Swing cung cấp giao diện phỏng giao diện của một số nền tảng
cũng hỗ trợ giao diện thể cắm được cho phép các ứng dụng
giao diện không liên quan đến nền tảng bên dưới. nhiều thành
6
phần mạnh mẽ linh hoạt hơn AWT. Ngoài các thành phần quen
thuộc như nút, hộp kiểm nhãn, Swing cung cấp một số thành
phần nâng cao như bảng điều khiển theo thẻ, ngăn cuộn, cây, bảng
danh sách. [2]
Không giống như các thành phần AWT, các thành phần Swing không
được triển khai bằng dành riêng cho nền tảng. Thay vào đó,
chúng được viết hoàn toàn bằng Java do đó độc lập với nền tảng.
Swing một khung GUI " model view controller " độc lập với nền
tảng cho Java, tuân theo một hình lập trình đơn luồng . [11]
Ngoài ra, khung công tác này cung cấp một lớp trừu tượng giữa cấu
trúc trình bày đồ họa của GUI dựa trên Swing.
sở
Swing độc lập với nền tảng được viết hoàn toàn bằng Java. Bạn
thể tìm thấy tài liệu đầy đủ cho tất cả các lớp Swing trong Hướng
dẫn API Java cho Phiên bản 6 hoặc Đặc tả API Nền tảng Java phiên
bản 8 tiêu chuẩn cho Phiên bản 8.
thể mở rộng
Swing một kiến trúc dựa trên mô-đun cao, cho phép "cắm" các
triển khai tùy chỉnh khác nhau của các giao diện khung cụ thể:
Người dùng thể cung cấp (các) triển khai tùy chỉnh của riêng họ
đối với các thành phần này để ghi đè các triển khai mặc định bằng
cách sử dụng chế kế thừa của Java thông qua LookAndFeel.
Swing một khung công tác dựa trên thành phần, các thành
phần của cuối cùng đều bắt nguồn từ JComponentlớp. Các đối
tượng Swing kích hoạt các s kiện một cách không đồng bộ, các
thuộc tính bị ràng buộc phản hồi với một tập hợp các phương
thức được lập thành văn bản cụ thể cho thành phần. Các thành phần
Swing các thành phần JavaBeans , tuân theo đặc tả JavaBeans .
thể định cấu nh
7
Sự phụ thuộc nhiều của Swing vào các chế thời gian chạy các
mẫu thành phần gián tiếp cho phép phản ứng tại thời điểm chạy
với những thay đổi bản trong cài đặt của nó. dụ, một ứng dụng
dựa trên Swing khả năng hoán đổi nóng giao diện người dùng của
trong thời gian chạy. Hơn nữa, người dùng thể cung cấp cách
triển khai giao diện của riêng họ, cho phép thay đổi đồng nhất về
giao diện của các ứng dụng Swing hiện không bất kỳ thay
đổi lập trình nào đối với ứng dụng.
Giao diện người dùng nh
Mức độ linh hoạt cao của Swing được phản ánh trong khả năng vốn
của trong việc ghi đè các điều khiển GUI của hệ điều hành
máy chủ lưu trữ gốc (OS) để hiển thị chính nó. Swing "sơn" các điều
khiển của bằng cách sử dụng các API Java 2D, thay gọi một bộ
công cụ giao diện người dùng gốc. Do đó, thành phần Swing không
thành phần GUI hệ điều hành gốc tương ứng thể tự do kết
xuất theo bất kỳ cách nào thể với các GUI đồ họa bên dưới.
Tuy nhiên, về cốt lõi của nó, mọi thành phần Swing đều dựa trên
một vùng chứa AWT , (Swing's) JComponentmở rộng Vùng chứa
(AWT's). Điều này cho phép Swing cắm vào khung quản GUI của
hệ điều hành chủ, bao gồm ánh xạ màn hình / thiết bị quan trọng
các tương tác của người dùng, chẳng hạn như nhấn phím hoặc di
chuyển chuột. Swing chỉ đơn giản "chuyển đổi" ngữ nghĩa (bất khả
tri đối với hệ điều hành) của chính qua các thành phần bên dưới
(dành riêng cho hệ điều hành). vậy, dụ: mọi thành phần Swing
vẽ biểu hiện của trên thiết bị đồ họa để phản hồi lại lệnh gọi tới
component.paint (), được định nghĩa trong (AWT) Container. Nhưng
không giống như các thành phần AWT, đã ủy thác bức tranh cho tiện
ích con "nặng ký" gốc hệ điều hành của chúng, các thành phần
Swing chịu trách nhiệm hiển thị của chính chúng.
Sự chuyển vị tách rời này không chỉ đơn thuần trực quan
còn mở rộng đến việc quản áp dụng ngữ nghĩa độc lập với hệ
điều hành của Swing cho các sự kiện được kích hoạt trong phân cấp
ngăn chặn thành phần của nó. Nói chung, kiến trúc Swing ủy nhiệm
nhiệm vụ ánh xạ các hương vị khác nhau của ngữ nghĩa OS GUI vào
một mẫu đơn giản, nhưng tổng quát, cho vùng chứa AWT. Xây dựng
8
trên nền tảng tổng quát đó, thiết lập ngữ nghĩa GUI phong phú
phức tạp của riêng mình dưới dạng JComponentmô hình.
Được ghép nối lỏng lẻo MVC
Thư viện Swing sử dụng nhiều hình thiết kế phần mềm model
view controller , [12] phân tách dữ liệu được xem một cách khái
niệm khỏi các điều khiển giao diện người dùng được xem qua
đó. Bởi điều này, hầu hết các thành phần Swing đều các
hình liên kết (được chỉ định theo các giao diện Java), các lập trình
viên thể sử dụng các triển khai mặc định khác nhau hoặc cung
cấp các cài đặt của riêng họ. Khung cung cấp các triển khai mặc
định của các giao diện hình cho tất cả các thành phần cụ thể của
nó. Việc sử dụng điển hình của khung Swing không yêu cầu tạo các
hình tùy chỉnh, khung cung cấp một tập hợp các triển khai
mặc định, theo mặc định, được liên kết với JComponentlớp con tương
ứng trong thư viện Swing. Nói chung, chỉ các thành phần phức tạp,
chẳng hạn như bảng, cây đôi khi danh sách, mới thể yêu
cầu triển khai hình tùy chỉnh xung quanh cấu trúc d liệu dành
riêng cho ứng dụng. Để hiểu về tiềm năng kiến trúc Swing
thể tạo ra, hãy xem xét tình huống giả định trong đó các hình
tùy chỉnh cho bảng danh sách được bao bọc trên DAO /
hoặcDịch vụ EJB .
Thông thường, các đối tượng hình thành phần Swing chịu trách
nhiệm cung cấp một giao diện ngắn gọn xác định các sự kiện được
kích hoạt các thuộc tính thể truy cập cho hình dữ liệu (khái
niệm) đ JComponent được liên kết sử dụng. Cho rằng mẫu MVC
tổng thể một mẫu quan hệ đối tượng cộng tác được kết hợp lỏng
lẻo, hình cung cấp phương tiện lập trình để gắn trình nghe sự
kiện vào đối tượng hình d liệu. Thông thường, các sự kiện này
trung tâm của hình (ví dụ: sự kiện "hàng được chèn" trong
hình bảng) được chuyên môn hóa JComponent ánh xạ thành một
sự kiện ý nghĩa cho thành phần GUI.
dụ, JTablecó một hình được gọi TableModelmô tả một giao
diện cho cách một bảng sẽ truy cập vào dữ liệu dạng bảng. Việc
triển khai mặc định của điều này hoạt động trên một mảng hai chiều
.
9
Thành phần khung nhìn của Swing JComponent đối tượng được sử
dụng để biểu diễn đồ họa điều khiển GUI khái niệm. Điểm khác biệt
của Swing, với cách một khung GUI, sự phụ thuộc của vào
các điều khiển GUI được hiển thị theo chương trình (trái ngược với
việc sử dụng các điều khiển GUI của hệ điều hành máy chủ gốc).
Trước Java 6 Update 10 , s khác biệt này một nguồn phức tạp khi
trộn các điều khiển AWT, sử dụng các điều khiển gốc, với các điều
khiển Swing trong GUI (xem Kết hợp các thành phần AWT
Swing ).
Cuối cùng, về bố cục quản trực quan, Swing ủng hộ bố cục
tương đối (chỉ định mối quan hệ vị trí giữa các thành phần) thay
bố cục tuyệt đối (chỉ định vị trí kích thước chính xác của các
thành phần). Sự thiên vị này đối với thứ tự trực quan "linh hoạt"
do nguồn gốc của trong môi trường điều hành applet đã đóng
khung thiết kế phát triển của bộ công cụ Java GUI ban đầu. (Về
mặt khái niệm, chế độ quản bố cục này khá giống với chế độ
thông báo việc hiển thị nội dung HTML trong các trình duyệt giải
quyết cùng một nhóm các mối quan tâm đã thúc đẩy trước đây.)
Mối quan hệ với AWT
Hệ thống phân cấp lớp AWT Swing
Kể từ các phiên bản đầu tiên của Java, một phần của Bộ công cụ cửa
sổ trừu tượng (AWT) đã cung cấp các API độc lập với nền tảng cho
các thành phần giao diện người dùng. Trong AWT, mỗi thành phần
được hiển thị kiểm soát bởi một thành phần ngang hàng gốc
dành riêng cho hệ thống cửa sổ bên dưới.
Ngược lại, các thành phần Swing thường được tả nhẹ chúng
không yêu cầu phân bổ tài nguyên gốc trong bộ công cụ tạo cửa sổ
của hệ điều hành. Các thành phần AWT được gọi các thành phần
nặng . [13]
10
Phần lớn API Swing nói chung một phần mở rộng bổ sung của AWT
chứ không phải một sự thay thế trực tiếp. Trên thực tế, mọi giao
diện nhẹ của Swing cuối cùng đều tồn tại trong một thành phần
nặng AWT tất cả các thành phần cấp cao nhất trong Swing
( JApplet, ) JDialogđều mở rộng một vùng chứa cấp cao nhất AWT.
Trước Java 6 Update 10 , việc s dụng cả các thành phần nhẹ
nặng trong cùng một cửa sổ thường không được khuyến khích do
không tương thích thứ tự Z. Tuy nhiên, các phiên bản Java sau này
đã khắc phục những vấn đề này cả hai thành phần Swing AWT
hiện thể được sử dụng trong một GUI không gặp s cố Z-
order. JFrameJWindow
Chức năng kết xuất cốt lõi được Swing sử dụng để vẽ các thành
phần nhẹ của được cung cấp bởi Java 2D , một phần khác của
JFC.
III. CHƯƠNG TRÌNH QUẢN NHÂN SỰ
BẰNG JAVA SWING
1. Giới thiệu
Đây chương trinh quản nhân viên sử dụng công cụ Java swing
để thực hiện.
Dưới đây giao diện chính của chương trinh
11
2. Chi tiết chương trình
Chương trình quản nhân viên giúp ta thể quản được thông
tin của 1 hoặc nhiều nhân viên.Thông tin của 1 nhân viên gồm:
-Mã nhân viên (ID)
-Họ tên nhân viên(Tên)
-Số điện thoại (STD)
-Email
-Vị trí(nhânviên, trưởng phòng)
-Mức lương
Để nhập thông tin nhân viên ta sử dụng các chức năng sau:
12
Để nhập thông tin nhân viên ta sử dụng các chức năng sau:
1) Phần nhập thông tin nhân vn
2) Add: Thêm thông tin nhân viên vào bảng sau khi nhập thông tin
nhân viên
3) Edit: Chỉnh sửa thông tin nhân viên
4) Delete: Xóa thông tin nhân viên
5) Clear: Làm mới phần nhập
thông tin nhân vn
6) Exit: Thoát chương trình
13
3. Chạy Chương Trình
- Nhập đầy đủ thông tin của một nhân viên vào lần lượt các mục .
-Nhấn Add để thêm nhân viên vào danh sách . Thông tin nhân
viên được hiện thị tại bảng ( table ).
Nhấn OK đ xuất ra thông tin nhân viên
Click vào nhân viên trong danh sách tại bảng ( table ) muốn chỉnh
sửa thông tin .
Thay đổi thông tin tại mục nhập thông tin nhân viên .
Click vào Edit để xác nhận sửa thông tin nhân viên .
Thay đổi thông tin tại mục nhập thông tin nhân viên .
Click vào Edit để xác nhận sửa thông tin nhân viên
14
clear” giúp người quản làm mới mục nhập thông tinh nhân viên
để thể dễ dàng nhập lại .
Thông báo sẽ được hiện lên ngay khi click Clear” .
Nhấn save lưu lại thông tin trước khi tiến hành đóng chương trình
để đảm bảo thông tin nhân viên sẽ được tải lên chương trình trong
lần mở tiếp theo
15
Click vào Exit đ thoát chương trình quản nhân viên .
Nhấn yes để xác nhận nếu muốn thoát chương trình , “no để
tiếp tục chương trình quản nhân viên .
3. Kết Thúc
Trên đây toàn bộ các thông số, chức năng quá trình vận hành
của chương trình quản nhân viên được lập trình bằng Java swing
được thực hiện bởi nhóm 9. Cảm ơn mọi người đã theo dõi.
16
| 1/18

Preview text:

KHOA CÔNG NGHỆ THÔNG TIN

TRƯỜNG ĐẠI HỌC KIẾN TRÚC NỘI KHOA CÔNG NGHỆ THÔNG TIN

N

BÀI TẬP CUỐI

N:Công nghệ Ja

va

Lớp :20CN3

BÁO CÁO CUỐI MÔN

NHÓM 9

Bộ MÔN:CÔNG NGHỆ JAVA

ĐỀ TTÀhIà:nChHvƯiêƠnNnGhóTmRÌNH

NguyễQnUNẢgNọcLÝQuNâHnÂ(2N05V5IÊ0N10219)

Nguyễn Văn Hợp (205501105) GVHD : NGgiảunygễnviHêồnn: g Thanh LNớgpu:yễ2n0CHNồ3ng Thanh

Thực hiện bởi : Nhóm 9

Thành viên nhóm :

  • Nguyễn Ngọc Quân msv:205501029
  • Nguyễn Văn Hợp msv:2055010105

0

Mục lục :

Mở đầu 2

Lý do chọn đề tài 2

  1. TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN QUẢN LÍ NHÂN SỰ 3
    1. Tìm hiều sơ lược về hệ thống quản lý 3
  2. NGÔN NGỮ LẬP TRÌNH JAVA VÀ JAVA SWING 4
    1. Ngôn ngữ lập trình java 4
    2. Đặc điểm của ngôn ngữ lập trình java 5
    3. Java swing 5
  3. CHƯƠNG TRÌNH QUẢN LÝ NHÂN SỰ BẰNG JAVA SWING

. 9

Chi tiết chương trình

......................................................................

10

    1. Chạy chương trình

......................................................................

12

    1. Kết thúc

......................................................................

14

1

ĐỀ TÀI

Chương Trình Quản Lý Nhân Viên
Mở đầu

Trước đây việc quản lý nguồn nhân lực đều được làm chủ yếu trên giấy tờ bằng hình thức thủ công rất mất thời gian, độ chính xác không cao. Ngày nay, các chủ kinh doanh bắt đầu biết đến các chương trình quản lý nhân viên thông qua các ứng dụng thông minh trên hệ thống máy tính.

Có thể nói chương trình quản lý nhân viên không đơn thuần là chấm công, tính lương mà nếu biết cách khai thác, nó mang lại lợi ích trên rất nhiều khía cạnh.

Một chương trình quản lý nhân viên bài bản, chuyên nghiệp mang đến rất nhiều lợi ích cho các doanh nghiệp nếu biết cách lựa chọn và sử dụng hợp lý.

Thứ nhất, người lãnh đạo có thể quản lý doanh nghiệp chặt chẽ và mọi lúc mọi nơi thông qua hệ thống máy tính và kết nối Internet. Việc này giúp họ kiểm soát được mọi hoạt động, điều hành hiệu quả các bộ phận và tránh xảy ra sai phạm.

Thứ hai, quản lý, điều động và khai thác đúng tiềm năng của nguồn nhân lực giúp nâng cao năng suất làm việc, cải thiện doanh thu hàng năm. Bên cạnh đó, việc đánh giá năng lựa và khen thưởng chính xác cũng giúp các nhân viên có tinh thần làm việc tốt hơn.

Thứ ba, thay vì quản lý thủ công như trước đây mất thời gian, công sức, lại hay sai sót thì chương trình quản lý thông minh giúp tiết kiệm về mọi mặt.

do chọn đề tài

Mỗi lần muốn tìm hồ sơ của một nhân viên nào đótrong công ty người quản lý nhân sự lại phải tìm lần lượt trong kho chứa xem hồ sơ nhân viên đó nằm ở đâu. Như vậy mất rất nhiều thời gian mà có khi không tìm ra do hồ sơ nhân viên quá nhiều. Công việc lưu trữ hồ sơ rất thủ công hầu hết ở các khâu làm chosố lượng nhân viên tham gia vào việc lưu trữ hồ sơ sẽ nhiều lên.Việc thống kê báo cáo hàng tháng, hàng năm sẽ gặp rất nhiều khó khăn nếu thông tin nhân viên ngày càng nhiều.Khi có nhân viên trong công ty thôi việc người quản lý nhân viên công ty phải tìm trong kho xem hồ sơ đó ở đâu để chuyển sang kho lưu trữ thôi việc. Nếu hàng ngày cứ

2

lặp đi lặp lại nhiều lần như vậy người quản lý nhân sự sẽ gặp rất nhiều khó khăn trong công tác lưu trữ và quản lý.Quản lý nhân sựlà một trong những vấn đề then chốttrong mọi công ty. Quản lý nhân sự không tốt sẽ dẫn đến nhiều vấn đề bất cập trong công ty. Chúng ta luôn thấy những tình trạng chấm nhầm công hoặc lưu trữ sai thông tin nhân viên, như vậy sẽ dẫn đến những những xáo trộn khi phát lương.... Vì vậy yêu cầu đặt ra ở đây là làm thế nào để có thể lưu trữ hồ sơ và lương của nhân viên một cách hiệu quả nhất, giúp cho nhân viên trong công ty có thể yên tâm và thoải mái làm việc đạt kết quả cao.Ngoài những lý do trên còn có một lý do khiếnem quyết định chọn đềtài tốt nghiệp là“phần mềm quản lý nhân sự”là em mong muốn phần mềm quản lý

nhân sự sẽ là người hỗtrợđắc lực cho việc quản lý nhân sựcủa công ty. Bạn không cần thiết phải biết nhiều vềtin học, bạn vẫn có thểsửdụng phần mềm quản lý nhân sựmột cách hiệu quả. Giao diện thuận tiện dễsửdụng của chương trình sẽluôn khiến bạn cảm thấy thật thoải mái khi sửdụng phần mềm này

  1. TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN QUẢN NHÂN SỰ

1. Tìm hiểu lược về hệ thống thông tin quản

Tìm hiểu sơ lược về thông tin Thông tin là sự phản ánh sự vật, sự việc, hiện tượng của thế giới khách quan và các hoạt động của con người trong đời sống xã hội. Điều cơ bản là con người thông qua việc cảm nhận thông tin làm tăng hiểu biết cho mình và tiến hành những hoạt động có ích cho cộng đồng.Môi trường vận động thông tin là môi trường truyền tin, nó bao gồm các kênh liên lạc tự nhiên hoặc nhân tạo. Kênh liên lạc thường nối các thiết bị của máy móc với nhau hay nối với con người. Con người có hình thức liên lạc tự nhiên và cao cấp là tiếng nói, từ đó nghĩ ra chữ viết. Ngày nay nhiều công cụ phổ biến thông tin đã xuất hiện : máy in, điện tín, điện thoại, phát thanh truyền hình, phim ảnh.... Khái niệm thông tin Thông tin là tin tức mà con người trao đổi với nhau,hay nói rộng hơn thông tin bao gồm những tri thức về đối tượng.Theo quan điểm của nhà quản lí thì thông tin là những thông báo,số liệu dùng làm cơ sở cho việc ra các quyết định. Các tài liệu này chia làm 4 loại :-Tài liệu, số liệu có ích cho việc ra quyết định : thông tin về năng suất,giá thành,doanh thu...-Tài liệu số liệu dùng ra quyết định sau này : thông tin dự trữ

3

-Tài liệu, số liệu không liên quan đến việc ra quyết định : tư liệu,số liệu thừa...-Tài liệu, số liệu giả do các đối thủ tung ra gây nhiễu.Có nhiều cách phân loại thông tin. Chúng ta quan tâm đến cách phân loại dựa vào đặc tính liên tục hay rời rạc của tín hiệu vật lý.* Các loại thông tin quản lí -Thông tin quản lí là những dữ liệu được xử lí và sẵn sàng phục vụ công tác quản lí của tổ chức. Có 3 loại thông tin

quản lí trong 1 tổ chức, đó là thông tin chiến lược,thông tin chiến thuật và thông tin điều hành.-Thông tin chiến lược là : thông tin sử dụng cho chính sách dài hạn của tổ chức, chủ yếu phục vụ cho các nhà quản lí cao cấp khi dự đoán tương lai.Loại thông tin này đòi hỏi tính khái quát, tổng hợp cao. Dữ liệu để xử lý ra loại thông tin này thường là từ bên ngoài tổ chức. Đây là loại thông tin được cung cấp trong những trường hợp đặc biệt.-Thông tin chiến thuật : là thông tin sử dụng cho chính sách ngắn hạn, chủ yếu phục vụ cho các nhà quản lí phòng ban trong tổ chức. Loại thông tin này trong khi cần mang tính tổng hợp vẫn đòi hỏi phải có mức độ chi tiết nhất định dạng thống kê. Đây là loại thông tin cần được cung cấp định kỳ.- Thông tin điều hành : (thông tin tác nghiệp) sử dụng cho công tác điều hành tổ chức hàng ngày và chủ yếu phục vụ cho người giám sát hoạt động tác nghịêp của tổ chức. Loại thông tin này cần chi tiết, được rút ra từ quá trình xử lý các dữ liệu trong tổ chức. Đây là loại thông tincần được cung cấp thường xuyên* Vai trò của thông tin trong tổ chứcThông tin có vai trò rất quan trọng đối với người lãnh đạo, quản lí trong mọi tổ chức hoạt động để hoàn thành các mục tiêu ngắn hạn, trung hạn và dài hạn. Công việc lãnh đạo và quản lí đòi hỏi thông tin phải chính xác và kịp thời đề ra các quyết định đúng đắn, đem lại hiệu quả trong các hoạt động.Chất lượng và tính kịp thời của thông tin là yếu tố rất quan trọng chỉ sau yếu tố con người trong công việc lãnh đạo và quản lí. Vấn đề chủ yếu hiện nay đang đặt ra cho những người làm công tác lãnh đạo vả quản lí là thường xuyên phải xử lý khối lượng thông tin rất lớn để đề ra được các quyết định đúng

đắn.Với khối lượng thông tin càng lớn và càng đa dạng thì việc xử lý và quản lí thông tincàng khó khăn.

Khái niệm hệ thống -hệ thống thông tin –hệ thống thông tin quản lí

* Khái niệm hệ thống.-Hệ thống:là tổng thể gồm các bộ phận hoặc các phần tử khác nhau có mối quan hệ tác động qua lại với nhau và được sắp xếp theo một trình tựnhằm tạo thành một chỉnh thể thống nhất, có những tính chất mới, có khả năng thực hiện một số chức năng hoặc mục tiêu nhất định.* Các yếu tố cơ bản của hệ thống:-Môi trường: là tất cả các yếu tố, điều kiện nằm bên ngoài

4

hệ thống có ảnh hưởng đến kết quả hoạt động của hệ thống.-Yếu tố đầu vào, ra : + Đầu vào : Tập hợp các tác động có thể của môi trường lên hệ thống+ Đầu ra : Tập hợp các tác động ngược lại của hệ thống lên môi trường.-Cấu trúc hệ thống : Là sự sắp xếp các bộ phận hoặc phần tử bêntrong của một hệ thống và mối quan hệ qua lại giữa chúng.-Mục tiêu của hệ thống : Là trạng thái mong muốn của hệ thống sau một thời gian nhất định.* Hệ thống thông tin Hệ thống thông tin là một tập hợp nhiều thành phần có chức năng thu thập, lưu trữ,xử lý và phân phối thông tin để hỗ trợ cho việc làm quyết định điều hành trong một tổ chứcHệthống thông tintối thiểu bao gồm con người, quy trình, và dữliệu. Con người tuân theo quy trình đểxửlý dữliệu tạo ra thông tin.* Hệ thống thông tin quản lí Hệ thống thông tin quản lí là hệ thống có nhiệm vụ cung cấp các thông tin cần thiết phục vụ cho việc quản lí điều hành một tổ chức. Thành phần chiếm vị trí quan trọng trong hệ thống thông tin quản lí là

một cơ sở dữ liệu hợp nhất chứa các thông tin phản ánh cấu trúc nội tạng của hệ thống và các thông tin về các hoạt động diễn ra trong hệ thống. Với hạt nhân là cơ sở dữ liệu hợp nhất, hệ thống thông tin quản lí có thể hỗ trợ cho nhiều lĩnh vực chức năng khác nhau và có thể cung cấp cho các nhà quản lícông cụ và khả năng dễ dàng truy cập thông tin, hệ thống thông tin quản lí có các chức năng chính : + Thu nhập, phân tích và lưu trữ các thông tin một cách hệ thống, những thông tin có ích được cấu trúc hoá để có thể lưu trữ và khai thác trên các phươngtiện tin học.+ Thay đổi, sửa chữa, tiến hành tính toán trên các nhóm chỉ tiêu, tạo ra thông tin mới.+ Phân phối và cung cấp thông tinHệ thống thông tin thường được cấu thành bởi :- Các phần cứng-Phần mềm.-Các hệ mạng-Dữ liệu -Con người trong hệ thống thông tin

II . NGÔN NGỮ LẬP TRÌNH JAVA JAVA SWING

Ngôn ngữ lập trình Java

Java là một trong những ngôn ngữ lập trình hướng đối tượng. Nó được sử dụng trong phát triển phần mềm, trang web, game hay ứng dụng trên các thiết bị di động.

Đặc điểm của ngôn ngữ lập trình Java

Độc lập nền (Write Once, Run Anywhere): Không giống như nhiều ngôn ngữ lập trình khác như C và C ++, khi Java được biên dịch, nó không được biên dịch sang mã máy cụ thể, mà thay vào đó là mã bytecode chạy trên máy ảo Java (JVM). Điều này đồng nghĩa với việc

5

bất cứ thiết bị nào có cài đặt JVM sẽ có thể thực thi được các chương trình Java.

Đơn giản: Học Java thật sự dễ hơn nhiều so với C/C++, nếu bạn đã quen với các ngôn ngữ lập trình hướng đối tượng thì việc học Java sẽ dễ dàng hơn. Java trở nên đơn giản hơn so với C/C++ do đã loại bỏ tính đa kế thừa và phép toán con trỏ từ C/C++.

Bảo mật: Java hỗ trợ bảo mật rất tốt bởi các thuật toán mã hóa như mã hóa một chiều (one way hashing) hoặc mã hóa công cộng (public key)…

Thông dịch: Java là một ngôn ngữ lập trình vừa 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 và được biên dịch thành tập tin có đuôi *.class sau đó được trình thông dịch thôngĐa luồng: Với tính năng đa luồng Java có thể viết chương trình có thể thực thi nhiều task cùng một lúc. Tính năng này thường được sử dụng rất nhiều trong lập trình game.

Hướng đối tượng: Hướng đối tượng trong Java tương tự như 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ứ đề cập đến trong Java đều liên quan đến các đối tượng được định nghĩa trước, thậm chí hàm chính của một chương trình viết bằng Java (đó là hàm main) cũng phải đặt bên trong một lớp. Hướng đối tượng trong Java không có tính đa kế thừa (multi inheritance) như trong C++ mà thay vào đó Java đưa ra khái niệm interface để hỗ trợ tính đa kế thừa.

Hiệu suất cao: Nhờ vào trình thu gom rác (garbage collection), giải phóng bộ nhớ đối với các đối tượng không được dùng đến.

Linh hoạt: Java được xem là linh hoạt hơn C/C ++ vì nó được thiết kế để thích ứng với nhiều môi trường phát triển. dịch thành mã máy.

JAVA SWING

Swing là một bộ công cụ tiện ích GUI cho Java . [1] Nó là một phần của Lớp nền tảng Java (JFC) của Oracle - một API để cung cấp giao diện người dùng đồ họa (GUI) cho các chương trình Java.

Swing được phát triển để cung cấp một tập hợp các thành phần GUI phức tạp hơn so với Bộ công cụ Cửa sổ Tóm tắt (AWT) trước đó . Swing cung cấp giao diện mô phỏng giao diện của một số nền tảng và cũng hỗ trợ giao diện có thể cắm được cho phép các ứng dụng có giao diện không liên quan đến nền tảng bên dưới. Nó có nhiều thành

6

phần mạnh mẽ và linh hoạt hơn AWT. Ngoài các thành phần quen thuộc như nút, hộp kiểm và nhãn, Swing cung cấp một số thành phần nâng cao như bảng điều khiển theo thẻ, ngăn cuộn, cây, bảng và danh sách. [2]

Không giống như các thành phần AWT, các thành phần Swing không được triển khai bằng mã dành riêng cho nền tảng. Thay vào đó, chúng được viết hoàn toàn bằng Java và do đó độc lập với nền tảng.

Swing là một khung GUI " model – view – controller " độc lập với nền tảng cho Java, tuân theo một mô hình lập trình đơn luồng . [11] Ngoài ra, khung công tác này cung cấp một lớp trừu tượng giữa cấu trúc mã và trình bày đồ họa của GUI dựa trên Swing.

Cơ sở

Swing độc lập với nền tảng vì nó được viết hoàn toàn bằng Java. Bạn có thể tìm thấy tài liệu đầy đủ cho tất cả các lớp Swing trong Hướng dẫn API Java cho Phiên bản 6 hoặc Đặc tả API Nền tảng Java phiên bản 8 tiêu chuẩn cho Phiên bản 8.

Có thể mở rộng

Swing là một kiến trúc dựa trên mô-đun cao, cho phép "cắm" các triển khai tùy chỉnh khác nhau của các giao diện khung cụ thể: Người dùng có thể cung cấp (các) triển khai tùy chỉnh của riêng họ đối với các thành phần này để ghi đè các triển khai mặc định bằng cách sử dụng cơ chế kế thừa của Java thông qua LookAndFeel.

Swing là một khung công tác dựa trên thành phần, mà các thành phần của nó cuối cùng đều bắt nguồn từ JComponentlớp. Các đối tượng Swing kích hoạt các sự kiện một cách không đồng bộ, có các thuộc tính bị ràng buộc và phản hồi với một tập hợp các phương thức được lập thành văn bản cụ thể cho thành phần. Các thành phần Swing là các thành phần JavaBeans , tuân theo đặc tả JavaBeans .

Có thể định cấu hình

7

Sự phụ thuộc nhiều của Swing vào các cơ chế thời gian chạy và các mẫu thành phần gián tiếp cho phép nó phản ứng tại thời điểm chạy với những thay đổi cơ bản trong cài đặt của nó. Ví dụ, một ứng dụng dựa trên Swing có khả năng hoán đổi nóng giao diện người dùng của nó trong thời gian chạy. Hơn nữa, người dùng có thể cung cấp cách triển khai giao diện của riêng họ, cho phép thay đổi đồng nhất về giao diện của các ứng dụng Swing hiện có mà không có bất kỳ thay đổi lập trình nào đối với mã ứng dụng.

Giao diện người dùng nhẹ

Mức độ linh hoạt cao của Swing được phản ánh trong khả năng vốn có của nó trong việc ghi đè các điều khiển GUI của hệ điều hành máy chủ lưu trữ gốc (OS) để hiển thị chính nó. Swing "sơn" các điều khiển của nó bằng cách sử dụng các API Java 2D, thay vì gọi một bộ công cụ giao diện người dùng gốc. Do đó, thành phần Swing không có thành phần GUI hệ điều hành gốc tương ứng và có thể tự do kết xuất theo bất kỳ cách nào có thể với các GUI đồ họa bên dưới.

Tuy nhiên, về cốt lõi của nó, mọi thành phần Swing đều dựa trên một vùng chứa AWT , vì (Swing's) JComponentmở rộng Vùng chứa (AWT's). Điều này cho phép Swing cắm vào khung quản lý GUI của hệ điều hành chủ, bao gồm ánh xạ màn hình / thiết bị quan trọng và các tương tác của người dùng, chẳng hạn như nhấn phím hoặc di chuyển chuột. Swing chỉ đơn giản là "chuyển đổi" ngữ nghĩa (bất khả tri đối với hệ điều hành) của chính nó qua các thành phần bên dưới (dành riêng cho hệ điều hành). Vì vậy, ví dụ: mọi thành phần Swing vẽ biểu hiện của nó trên thiết bị đồ họa để phản hồi lại lệnh gọi tới component.paint (), được định nghĩa trong (AWT) Container. Nhưng không giống như các thành phần AWT, đã ủy thác bức tranh cho tiện ích con "nặng ký" gốc hệ điều hành của chúng, các thành phần Swing chịu trách nhiệm hiển thị của chính chúng.

Sự chuyển vị và tách rời này không chỉ đơn thuần là trực quan mà còn mở rộng đến việc quản lý và áp dụng ngữ nghĩa độc lập với hệ điều hành của Swing cho các sự kiện được kích hoạt trong phân cấp ngăn chặn thành phần của nó. Nói chung, kiến trúc Swing ủy nhiệm nhiệm vụ ánh xạ các hương vị khác nhau của ngữ nghĩa OS GUI vào một mẫu đơn giản, nhưng tổng quát, cho vùng chứa AWT. Xây dựng

8

trên nền tảng tổng quát đó, nó thiết lập ngữ nghĩa GUI phong phú và phức tạp của riêng mình dưới dạng JComponentmô hình.

Được ghép nối lỏng lẻo và MVC

Thư viện Swing sử dụng nhiều mô hình thiết kế phần mềm model – view – controller , [12] phân tách dữ liệu được xem một cách khái niệm khỏi các điều khiển giao diện người dùng mà nó được xem qua đó. Bởi vì điều này, hầu hết các thành phần Swing đều có các mô hình liên kết (được chỉ định theo các giao diện Java), và các lập trình viên có thể sử dụng các triển khai mặc định khác nhau hoặc cung cấp các cài đặt của riêng họ. Khung cung cấp các triển khai mặc định của các giao diện mô hình cho tất cả các thành phần cụ thể của nó. Việc sử dụng điển hình của khung Swing không yêu cầu tạo các mô hình tùy chỉnh, vì khung cung cấp một tập hợp các triển khai mặc định, theo mặc định, được liên kết với JComponentlớp con tương ứng trong thư viện Swing. Nói chung, chỉ các thành phần phức tạp, chẳng hạn như bảng, cây và đôi khi là danh sách, mới có thể yêu cầu triển khai mô hình tùy chỉnh xung quanh cấu trúc dữ liệu dành riêng cho ứng dụng. Để hiểu rõ về tiềm năng mà kiến trúc Swing có thể tạo ra, hãy xem xét tình huống giả định trong đó các mô hình tùy chỉnh cho bảng và danh sách được bao bọc trên DAO và / hoặcDịch vụ EJB .

Thông thường, các đối tượng mô hình thành phần Swing chịu trách nhiệm cung cấp một giao diện ngắn gọn xác định các sự kiện được kích hoạt và các thuộc tính có thể truy cập cho mô hình dữ liệu (khái niệm) để JComponent được liên kết sử dụng. Cho rằng mẫu MVC tổng thể là một mẫu quan hệ đối tượng cộng tác được kết hợp lỏng lẻo, mô hình cung cấp phương tiện lập trình để gắn trình nghe sự kiện vào đối tượng mô hình dữ liệu. Thông thường, các sự kiện này là trung tâm của mô hình (ví dụ: sự kiện "hàng được chèn" trong mô hình bảng) và được chuyên môn hóa JComponent ánh xạ thành một sự kiện có ý nghĩa cho thành phần GUI.

Ví dụ, JTablecó một mô hình được gọi là TableModelmô tả một giao diện cho cách một bảng sẽ truy cập vào dữ liệu dạng bảng. Việc triển khai mặc định của điều này hoạt động trên một mảng hai chiều

.

9

Thành phần khung nhìn của Swing JComponent là đối tượng được sử dụng để biểu diễn đồ họa điều khiển GUI khái niệm. Điểm khác biệt của Swing, với tư cách là một khung GUI, là sự phụ thuộc của nó vào các điều khiển GUI được hiển thị theo chương trình (trái ngược với việc sử dụng các điều khiển GUI của hệ điều hành máy chủ gốc).

Trước Java 6 Update 10 , sự khác biệt này là một nguồn phức tạp khi trộn các điều khiển AWT, sử dụng các điều khiển gốc, với các điều khiển Swing trong GUI (xem Kết hợp các thành phần AWT và

Swing ).

Cuối cùng, về bố cục và quản lý trực quan, Swing ủng hộ bố cục tương đối (chỉ định mối quan hệ vị trí giữa các thành phần) thay vì bố cục tuyệt đối (chỉ định vị trí và kích thước chính xác của các thành phần). Sự thiên vị này đối với thứ tự trực quan "linh hoạt" là do nguồn gốc của nó trong môi trường điều hành applet đã đóng khung thiết kế và phát triển của bộ công cụ Java GUI ban đầu. (Về mặt khái niệm, chế độ quản lý bố cục này khá giống với chế độ thông báo việc hiển thị nội dung HTML trong các trình duyệt và giải quyết cùng một nhóm các mối quan tâm đã thúc đẩy trước đây.)

Mối quan hệ với AWT

Hệ thống phân cấp lớp AWT và Swing

Kể từ các phiên bản đầu tiên của Java, một phần của Bộ công cụ cửa sổ trừu tượng (AWT) đã cung cấp các API độc lập với nền tảng cho các thành phần giao diện người dùng. Trong AWT, mỗi thành phần được hiển thị và kiểm soát bởi một thành phần ngang hàng gốc dành riêng cho hệ thống cửa sổ bên dưới.

Ngược lại, các thành phần Swing thường được mô tả là nhẹ vì chúng không yêu cầu phân bổ tài nguyên gốc trong bộ công cụ tạo cửa sổ của hệ điều hành. Các thành phần AWT được gọi là các thành phần nặng . [13]

10

Phần lớn API Swing nói chung là một phần mở rộng bổ sung của AWT chứ không phải là một sự thay thế trực tiếp. Trên thực tế, mọi giao diện nhẹ của Swing cuối cùng đều tồn tại trong một thành phần nặng AWT vì tất cả các thành phần cấp cao nhất trong Swing

( JApplet, và ) JDialogđều mở rộng một vùng chứa cấp cao nhất AWT. Trước Java 6 Update 10 , việc sử dụng cả các thành phần nhẹ và nặng trong cùng một cửa sổ thường không được khuyến khích do không tương thích thứ tự Z. Tuy nhiên, các phiên bản Java sau này đã khắc phục những vấn đề này và cả hai thành phần Swing và AWT hiện có thể được sử dụng trong một GUI mà không gặp sự cố Z- order. JFrameJWindow

Chức năng kết xuất cốt lõi được Swing sử dụng để vẽ các thành phần nhẹ của nó được cung cấp bởi Java 2D , một phần khác của JFC.

III. CHƯƠNG TRÌNH QUẢN LÝ NHÂN SỰ BẰNG JAVA SWING

Giới thiệu

Đây là chương trinh quản lý nhân viên sử dụng công cụ Java swing để thực hiện.

Dưới đây là giao diện chính của chương trinh

11

Chi tiết chương trình

Chương trình quản lý nhân viên giúp ta có thể quản lý được thông tin của 1 hoặc nhiều nhân viên.Thông tin của 1 nhân viên gồm:

-Mã nhân viên (ID)

-Họ tên nhân viên(Tên)

-Số điện thoại (STD)

-Email

-Vị trí(nhânviên, trưởng phòng)

-Mức lương

Để nhập thông tin nhân viên ta sử dụng các chức năng sau:

12

Để nhập thông tin nhân viên ta sử dụng các chức năng sau:

  1. Phần nhập thông tin nhân viên
  2. Add: Thêm thông tin nhân viên vào bảng sau khi nhập thông tin nhân viên
  3. Edit: Chỉnh sửa thông tin nhân viên
  4. Delete: Xóa thông tin nhân viên
  5. Clear: Làm mới phần nhập thông tin nhân viên
  6. Exit: Thoát chương trình

13

Chạy Chương Trình

- Nhập đầy đủ thông tin của một nhân viên vào lần lượt các mục .

-Nhấn “ Add ” để thêm nhân viên vào danh sách . Thông tin nhân viên được hiện thị tại bảng ( table ).

Nhấn OK để xuất ra thông tin nhân viên

Click vào nhân viên trong danh sách tại bảng ( table ) muốn chỉnh sửa thông tin .

Thay đổi thông tin tại mục nhập thông tin nhân viên . Click vào “ Edit ” để xác nhận sửa thông tin nhân viên . Thay đổi thông tin tại mục nhập thông tin nhân viên .

Click vào “ Edit ” để xác nhận sửa thông tin nhân viên

14

“ clear” giúp người quản lý làm mới mục nhập thông tinh nhân viên để có thể dễ dàng nhập lại .

Thông báo sẽ được hiện lên ngay khi click “ Clear” .

Nhấn “ save ” lưu lại thông tin trước khi tiến hành đóng chương trình để đảm bảo thông tin nhân viên sẽ được tải lên chương trình trong lần mở tiếp theo

15

Click vào “ Exit ” để thoát chương trình quản lý nhân viên .

Nhấn “ yes ” để xác nhận nếu muốn thoát chương trình , “no “ để tiếp tục chương trình quản lý nhân viên .

3. Kết Thúc

Trên đây là toàn bộ các thông số, chức năng và quá trình vận hành của chương trình quản lý nhân viên được lập trình bằng Java swing được thực hiện bởi nhóm 9. Cảm ơn mọi người đã theo dõi.

16