Lý thuyết: – Tìm hiểu công nghệ JSP, với các phần chính phục vụ cho chương trình như: nhúng, chuyển hướng, chuyển tham số, … – Xây dựng một cơ sở dữ liệu có khả năng kết nối và làm việc
Trang 1TÌM HIỂU CÔNG NGHỆ JSP
BÁO CÁO TỐT NGHIỆP
GVHD: NGUYỄN HỒNG QUANG SVTH : PHAN VĂN ĐẤU
ỨNG DỤNG XÂY DỰNG WEBSITE QUẢN LÍ NHÂN
VIÊN CÔNG TY XOAI
Trang 2GIỚI THIỆU ĐỀ TÀI
Yêu cầu về nội dung đề tài:
1 Lý thuyết:
– Tìm hiểu công nghệ JSP, với các phần chính phục vụ cho chương trình như: nhúng, chuyển hướng, chuyển tham số,
…
– Xây dựng một cơ sở dữ liệu có khả năng kết nối và làm việc trên trang web
2 Thiết kế chương trình:
Thiết kế chương trình với các chức năng chính, thêm cập nhật, sửa chữa thông tin nhân viên.
Trang 3LÝ THUYẾT
I Khái niệm JSP
• JavaServer Pages (JSP) là một kỹ thuật xử
lý các yêu cầu của client ở máy chủ (server-side), do đó chúng ta không thể thực hiện bất kỳ hành động nào ở client JSP cho
phép chúng ta tách thành phần động của trang ra khỏi thành phần tĩnh HTML.
Trang 4II Các thành phần script của JSP
Để đơn giản hoá mã trong các biểu thức hay scriptlets trong JSP, người ta cung cấp cho chúng ta 9 đối tượng đã được định
nghĩa trước Đó là: request, response, out, session, application, config, pagContext,
page, exception.
- request: cho phép chúng ta truy cập vào các tham số của request như loại
request (GET, POST, …)
Trang 5response:
javax.servlet.http.HttpServletResponse, có phạm
vi toàn trang (page)
session:
có phạm vi trong một phiên truyền (session) và kiểu tương ứng là javax.servlet.http.HttpSession Gọi về các phiên truyền được tạo tự động
II.2 Biểu thức trong JSP
Biểu thức trong JSP được dùng để chèn các giá trị trực tiếp vào luồng xuất Nó có dạng sau:
<%= Java expressions %>
Trang 6III Xử lý nhúng và chuyển hướng giữa các trang
Trong quá trình xử lý và chuyển dữ liệu cho form chúng ta có thể nhúng và triệu gọi những trang JSP khác với trang hiện hành.
III.1 Nhúng file vào trang với chỉ thị include
Chỉ thị <%include %> thường dùng để đem một nội dung file html hay jsp bên ngoài vào trang hiện hành
III.2 Sử dụng thẻ <jsp:include>
Chỉ thị < %@include % > chỉ dùng để nhúng các mã nguồn tĩnh Nếu muốn nhúng kết quả kết xuất từ các trang jsp, servlet hay html khác vào trang hiện hành chúng ta sử dụng thẻ <jsp:include> với cú pháp như sau:
<jsp:include page = “filename” flush = “true”/>
Trang 7III.2 Sử dụng thẻ <jsp:include>
nhúng kết quả kết xuất từ các trang jsp, servlet hay html khác vào trang hiện hành chúng ta sử dụng thẻ <jsp:include> với cú pháp như sau:
<jsp:include page = “filename” flush = “true”/>
III.3 Chuyển tham số bằng thẻ <jsp:param>
Khi nhúng trang bằng thẻ <jsp:include> bạn có thể chuyển tham số cho trang được nhúng để nhận được kết xuất linh động hơn bằng cách sử dụng thẻ con <jsp:param>.
III.4 Chuyển hướng sang trang mới với sendRedirect()
Ngoài việc chuyển tiếp chúng ta có thể sử dụng phương thức sendRedirect() để
chuyển hướng và triệu gọi trang JSP khác xử lý Sự khác nhau giữa chuyển tiếp (forward) và chuyển hướng (redirect) đó là lệnh sendRedirect () chỉ thực hiện triệu gọi trang mà không chuyển tham số của trang hiện hành cho trang chuyển hướng.
IV SERVLET
IV.1 Khái niệm
Servlet là các thành phần đối tượng nhúng trên trình chủ Web server thực hiện xử lý yêu cầu và sinh ra các trang Web động trả về máy khách Để
sử dụng được Servlet chúng ta cần có các trình chủ hiểu Java và hỗ trở triệu gọi Servlet như Apache, Jrun, Web Logic ….
Trang 8IV.2 Các phương thức xử lý cơ bản của Servlet
Lớp GenericServlet là phần cài đặt tổng quát cho đặc
tả giao tiếp (interface) mang tên Servlet Theo đặc tả của giao tiếp Servlet do Sun đưa ra một servlet cơ bản cần có những phương thức phục vụ cho các nhu cầu khởi tạo (init), hoạt
động và phục vụ (service), hủy (destroy), trả về thông tin cấu hình (getServletConfig), trả về thông tin tư thân của servlet (getServletInfo)
III Tag Libraries
Là các action do người lập trình tạo ra (custom action),
một custom action được triệu gọi bằng cách dùng custom tag Một tag library là một tập các custom tag.
Trang 9
JavaBean là một component phần mềm có thể dùng lại được, có thể được thực hiện trực quan bằng môi trường phát triển tích hợp IDE
(Integrated Development Environment).
• JavaBean là một đối tượng Java bất kỳ cài đặt
interface Serializable Chúng ta thường truy
xuất các đối tượng Java thông qua thuộc tính
của nó, với JavaBean điều này cũng hoàn toàn tương tự nhưng thường JavaBean không sử
dụng trực tiếp cú pháp Java để truy xuất thuộc tính JavaBean sử dụng các thẻ tương tự như
HTML để định nghĩa Bean, thiết lập hoặc lấy về các giá trị của Bean.
Trang 10IV JDBC và trình điều khiển truy xuất cơ
sở dữ liệu
JDBC là các trình đạo diễn cho phép bạn truy cập vào cơ sở dữ liệu của các hệ như Access, MS SQL Server, Oracle… bằng ngôn ngữ truy vấn SQL Theo đặc tả của Sun có 4 kiểu JDBC sau:
-Truy xuất cơ sở dữ liệu JDBC-ODBC
-JDBC kết nối trực tiếp với các trình điều
khiển cơ sở dữ liệu
Trang 11– JDBC kết nối thông qua các ứng dụng
mạng trung gian
– JDBC kết nối thông qua các trình điều
khiển đặc thù ở xa
Trang 12PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Mô hình xử lý quan niệm
1 Sơ đồ ngữ cảnh
Tạo user
Xem thông tin NV
Xóa NV Sửa thông tin NV Thêm NV
Đổi password Xem thông tin NV
Đổi password
Quản lý nhân viên
Nhân viên Quản lý
Trang 132 Sơ đồ phân rã chức năng
Quản lý nhân viên
Phục vụ nhân viên
Xem thông tin NV
Đổi password
Phục vụ admin Đổi password Đổi quyền user Tạo user Gán quyền user
Phục vụ quản lý
Xem thông tin NV
Đổi password Thêm NV Xóa NV Sửa thông tin NV
Trang 14• Sơ đồ hệ thống
Mức 1:
Dữ liệu NV
Passwo rd
Thông tin NV
Bảng chi tiết NV
Đổi passwor d
Xem thông tin NV
Đổi thông tin NV
Nhân viên
Bảng chi tiết NV
Bảng chi tiết NV Bảng cập nhật
Dữ liệu Password
Passwo rd
Permission
Đổi thông tin user Bảng thay đổi
Dữ liệu user
Trang 15Mức 2:
Phân rã xử lý đổi thông tin NV
Bảng cập nhật NV Quản lý
Nhân viên
Dữ liệu NV
1.
Thêm NV
2.
Xóa NV
3.
Edit NV
Trang 16Mô hình dữ liệu quan niệm
Sơ đồ thực thể kết hợp
XA -MAXA -TenXa
NHÂN VIÊN
-Mã NV -Họ NV -Tên NV -Giới tính -Ngày sinh -Ngày vào Cty
NG NGỮ -Mã NN -Tên NN
NV-NN
-Mã NN -Mã NV -Cấp độ
NHÓM
-Mã nhóm -Tên nhóm
TDVH
-Mã TĐVH -Tên TĐVH
TRƯỜNG -Mã Tr -Tên Tr
C MÔN
-Mã CM -Tên CM
NV-CM
-Mã NV -Mã Tr -Mã CM -Ngày BĐĐT -Ngày KTDT
TỈNH
-Mã tỉnh -Tên tỉnh
ĐƯỜNG -Mã đường -Tên đường
Đ CHỈ -Số nhã
HUYỆN -Mã huyện -Tên huyện
Trang 17• Tiếp theo NHÂN VIÊN
-Mã NV -Họ NV -Tên NV -Giới tính -Ngày sinh -Ngày vào Cty
NV-ĐT
-Số ĐT -Mã NV
ĐT
-Số ĐT
NGHỈ
-Mã lí do -Mã NV -Ngày BĐ -Ngày KT
LÍ DO
-Mã lí do -Tên lí do
LƯƠNG
-Mã lương -Lương CB
NV-L
-Mã NV -Mã lương -Ngày LL
-Bậc lương
Trang 18• Thiết kế giao diện Website QLNV
Default.jsp Trang chủ
Registration.jsp
Đăng ký tuyển dụng
ResultReg.jsp
Thông báo đã đăng
ký xong
Login.jsp Đăng nhập
AdminMenu.jsp
Admi n?
Có
Mana
Không
Có Admin.jsp
Trang 19KẾT LUẬN
Chương trình ứng dụng này đã đáp ứng được các yêu cầu cơ bản của phân tích và thiết kế:
- Quản lí thông tin chi tiết của nhân viên:
Ngoại ngữ, trình độ văn hóa, lương, địa chỉ
- Thêm, sửa, xóa các thông tin nhân viên …
Trang 20HƯỚNG PHÁT TRIỂN
• Chương trình có khả năng xử lí tiếng Việt với CSDL
• Upload hình ảnh, tài liệu liên quan của nhân viên