Phần admin

Một phần của tài liệu luận văn công nghệ thông tin thiết kế website môn lập trình mạng 1 với servlet và jsp (Trang 50 - 79)

IV. THIẾT KẾ DỮ LIỆU

3. Phần admin

Tương tự đối với Admin là người cĩ chức vụ cao nhất trong hệ thống ,sau khi đăng nhập vào hệ thống với quyền tương ứng , thì họ cĩ quyền cập nhật vào chương trình học mới vào hệ thống ( hình 1.12) làm rõ chức năng này ta cĩ đoạn xử lý sau

Xử lý cập nhật chương trình học mới vào hệ thống

Bước 1: kết nối cơ sở dữ liệu

Bước 2 : khai báo các tham số nhận từ request String mc,tc,nd,hi,ct,cs,sqlStr=""; mc=""+request.getParameter("txtMchuong") tc=""+request.getParameter("txtTchuong") nd=""+request.getParameter("txtNdung") ct=""+request.getParameter("txtCtruoc") cs=""+request.getParameter("txtCsau") hi=""+request.getParameter("txtHinh") Bước 3: Thực thi câu lệnh sql

 rsKiemtra=stmt.executeQuery("SELECT * FROM Chuong WHERE Machuong="+mc)

// neu chua ton tai thi chen chuong moi vao  if(!rsKiemtra.next()){

sqlStr="INSERT INTO

Chuong(Tenchuong,Noidungtomtat,Chuongtruoc,Chuongsau,Hi nh)”+"VALUES('"+tc+"','"+nd+"',"+ct+","+cs+",'"+hi+"')";  stmt.executeQuery(sqlStr)

 khi cập nhật nếu chương này đã cĩ sẽ trả về trang lỗi cịn nếu chưa cĩ thì cập nhật chương mới vào hệ thống

 Sau cùng hệ thống sẽ trả về trang thành cơng khi ta cập nhật xong Bước 4: Đĩng kết nối

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 39

nhật giáo viên mới vào hệ thống (hình 1.13) khi cĩ một giáo viên mới vào. Điều này được thể hiện thơng qua đoạn mã xử lý sau

Xử lý cập nhật giáo viên mới vào hệ thống

Đồng thời Admin cũng cĩ quyền thay đổi Password của mình (hình 1. 14) khi cần , phần xử lý này tương tự như phần xử lý password cuả học viên.

Bước 1: kết nối cơ sở dữ liệu

Bước 2 : khai báo các tham số nhận từ request

String tengiaovien=request.getParameter("tengiaovien") String email=request.getParameter("email") String tendangnhap=request.getParameter("usernames") String matkhau=request.getParameter("passwords") String quyen ="1" String sql=""

Bước 3: Thực thi câu lệnh sql

 String sql2="Select Usernames From Giaovien Where Usernames='"+tendangnhap+"'"

 String sql3="Select Usernames From Users Where Usernames='"+tendangnhap+"'"

 rs=stmt.executeQuery(sql3)  if(!rs.next()){

String sql1 = "INSERT INTO

Users(Usernames,Passwords,Quyen) values('"+tendangnhap+"','"+matkhau+"',"+quyen+")"; stmt.executeUpdate(sql1) rs=stmt.executeQuery(sql2)  if(!rs.next()){ sql="INSERT INTO Giaovien(Tengiaovien,Email,usernames)values('"+tengiaovien +"','"+email+"','"+tendangnhap+"')" stmt.executeUpdate(sql) }

 Ngược lại khi cập nhật nếu giáo viên này đã cĩ hệ thống sẽ trả về trang lỗi cịn nếu chưa cĩ thì cập nhật giáo viên mới vào hệ thống  Sau cùng hệ thống sẽ trả về trang thành cơng khi ta cập nhật xong Bước 4: Đĩng kết nối

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 40

CHƯƠNG III :

DEMO WEB SITE DẠY HỌC TRỰC TUYẾN

Đến với Web Site Dạy học qua mạng , phía trình duyệt cần khởi động

Internet Explorer gõ điạ chỉ http://localhost:8080/page/LV/trangchu.html.

Web Site học qua mạng mơn Lập Trình Mạng được bắt đầu .

1./ Tại trang chủ ,nếu chỉ dạo xem thơng tin học phần , học viên chọn chức năng

sang trang khaiquathocphan.html.

chọn tại trang khaiquathocphan.html để vào trang

xemhocphan.html.Trang này tĩm tắt các học phần sẽ được giảng dạy phục vụ

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 41

Khi chọn học phần (trang hocphan.jsp), các đề mục thuộc học phần đĩ được liệt kê tại trang (kqdemuc.jsp)

hiển thị 4 phần học (Client Side Networking ,Server Side Networking, URL

,UDP), tương tự khi chọn đề mục thuộc học phần đã chọn ,tất cả tiểu mục

được hiển thị (ở trang kqtieumuc..jsp ).

Vì học viên khơng đăng kí học nên tại trang kqtieumuc.jsp khơng hiển thị nội

dung tiểu mục ,và hiện thơng báo sẽ được xem chi tiết nếu học viên đăng kí học

Nếu muốn đăng kí học ,học viên cĩ thể chọn hoặc đăng kí tại

trangchu.html .

2./ Tại trang chủ ,nếu muốn đăng kí học ,học viên cĩ thể chọn để vào trang đăng kí và nhập thơng tin về học viên đăng kí sau cùng chọn để được lưu trữ thơng tin đã nhập.

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 42

Trang Dangkythanhcong.html hiển thị thơng báo về việc lưu trữ thơng tin đăng kí thành cơng .Ngược lại sẽ trả về trang Loidangky.html.

Học viên cĩ thể chọn chức năng để được hứớng dẫn đăng kí học qua mạng

a) Khi đăng kí thành cơng ,học viên cĩ thể vào trang dayhoc.html bằng

việc chọn Next hoặc trở về trang đăng kí để tiếp tục đăng kí học viên tiếp theo bằng nút Back

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 43

Sau khi chọn học phần , học viên cĩ thể xem đề mục cuả từng học phần và tiểu mục cuả từng đề mục thuộc học phần đĩ .

Phần hiển thị nội dung tiểu mục ,nếu học viên cần xem SourceCode cuả mỗi chương cĩ thể chọn , trang SouceCode.html sẽ minh

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 44

chức năng , trang kiemtrachuong.jsp hiển thị câu hỏi

dành cho học viên muốn kiểm tra kiến thức .

Sau khố học , học viên cĩ thể kiểm tra lại tất cả kiến thức đã học

bằng chức năng ,trang kiemtra1.jsp thực

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 45

b) Nếu đăng ký khơng thành cơng ,học viên chọn để đăng ký lại

3./ Khi học viên chọn chức năng , danh sách các giáo viên được hiển thị ,học viên cĩ thể xem thêm thơng tin về giáo viên như : tên ,email ,…

4./ Tương tự khi học viên chọn chức năng ,học viên xem được danh sách học viên đã đăng ký học .

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 46

Cĩ 3 quyền khi đăng nhập vào hệ thống :

a) Nếu là Admin (người quản trị hệ thống ) , chọn chế độ quyền ưu tiên là Admin ,nhập đầy đủ thơng tin về Admin và nhấn nút Submit để cĩ quyền đăng nhập .

Nếu đăng nhập thành cơng , giao diện trang web indexAdmin như

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 47

Tại đây , người quản trị hệ thống cĩ quyền xem danh sách giáo viên ,cập nhật giáo viên mới ,cập nhật học phần ,cập nhật đề mục ,cập nhật tiểu mục .

Trang hiển thị giáo viên hienthigvt.jsp sẽ liệt kê danh sách các giáo viên sẵn

cĩ.

a) Giáo viên mới cĩ thể được cập nhật ,trang AddGV.jsp xử lý tác vụ này, giao diện trang AddGV.html như sau :

Nếu thành cơng sẽ trả về trang thanhcongAddGV.html ngược lại trả về trang loiAddGV.html (Nếu tên đăng nhập cuả giáo viên đã cĩ sẵn,…)

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 48

động phân quyền là 1 và cập nhật giáo viên mới

Thêm một học phần mới ,Admin cĩ thể chọn chức năng thêm học phần tại

trang indexAdmin.jsp

Để lưu trữ thơng tin cập nhật học phần , trang AddChapter.jsp sẽ xử lý việc

lưu trữ thơng tin học phần.

Trang AddChapter.jsp sau khi xử lý thành cơng sẽ trả về trang

AddChapterthanhcong.html thơng báo đến người sử dụng về việc thêm học

phần mới thành cơng.

Nếu học phần thêm vào đã cĩ trong hệ thống a(trang loiAddChapter.html sẽ

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 49

Trang AddHeading.jsp cập nhật đề mục thuộc học phần cần chọn

Nếu đề mục đã cĩ sẽ trả về trang Loiaddheading.html ngược lại sẽ trả về trang Addheadingthanhcong.html đề mục được cập nhật

Tác vụ cập nhật tiểu mục tương tự như cập nhật đề mục ,chọn đề mục cĩ tiểu mục cần cập nhật .

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 50

Nếu thành cơng trangAddTMthanhcong.html sẽ được trả về và tiểu mục được

cập nhật thành cơng ngược lại trang LoiAddTM.html hiển thị lỗi cập nhật tiểu

mục

b) Nếu là giáo viên , nhập thơng tin đăng nhập giáo viên và quyền ưu tiên khi đăng nhập là Quyền Giáo viên .

Sau khi chọn nút Submit , thơng tin đăng nhập cuả giáo viên sẽ được xử lý .

 Nếu đăng nhập khơng thành cơng , trang web FaiLogin.html trả lại thơng báo

Nếu đăng nhập thành cơng , trang đăng nhập thành cơng(indexGV.jsp)

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 51

Trang indexGV.jsp thực thi các cơng việc cuả giáo viên :

 Xem danh sách các câu hỏi .

 Cập nhật câu hỏi .

 Cập nhật đề thi .

Giáo viên được quyền xem danh sách câu hỏi cĩ trong ngân hàng câu hỏi , giáo viên chỉ được quyền chỉnh sửa , cập nhật câu hỏi do chính giáo viên đĩ soạn .

c) Nếu là học viên , nhập thơng tin đăng nhập học viên và quyền ưu tiên khi đăng nhập là Quyền Học viên . Nếu lỗi đăng nhập trang FaiLogin.html sẽ được trả về ,học viên cĩ thể trở về trang trước để

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 52

Tại đây ,học viên cĩ thể xem danh sách học viên ,thay đổi thơng tin học viên ,thay đổi mật khẩu .

Học viên vào trang thaydoithongtinhv.jsp để nhập thơng

tin mới.

Nếu việc thay đổi thành cơng trang thaydoithanhcong.html được trả về ,nếu lỗi xảy ra trang loithaydoitt.html .

Trang ThaydoiPW.jsp học viên thay đổi mật khẩu

Nếu thay đổi thành cơng trang thaydoithanhcong.html hiển thị ,ngược lại trang

loithaydoi.html được trả về ,học viên cĩ thể trở về trang trước để thay đổi mật

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 53

CHƯƠNG IV : GIỚI THIỆU CƠNG NGHỆ JSP (JAVA SERVER PAGES) VAØ RATIONAL ROSE

PHẦN 1 : CƠNG NGHỆ JSP

I. JSP VAØ LẬP TRÌNH ỨNG DỤNG

Java Server Page (JSP ) là một kỹ thuật kết hợp ngơn ngữ HTML và ngơn ngữ Java. JSP là cách đơn giản hơn Servlet để cĩ thể tiếp cận hướng lập trình Web phía Server . Kỹ thuật JSP cĩ thể kết nối với các hệ quản trị cơ sở dữ liệu như MS Access, SQl Server, Oracle,...

Cơng nghệ JavaServer Pages (viết tắt là JSP) là cơng nghệ Java dựa trên

nền J2EE để xây dựng những ứng dụng chứa nội dung trang Web động như: HTML, DHTML, XHTML và XML. Cơng nghệ JSP cĩ khả năng tạo ra những trang Web với nội dung linh hoạt, cĩ vai trị quan trọng trong việc phát triển các ứng dụng Web.

Một trang JSP (.jsp) là một trang HTML hay XML trong đĩ cĩ chứa mã Java, phần HTML chịu trách nhiệm về việc định dạng văn bản, mã chương trình xen lẫn trong văn bản dùng để diễn đạt các thao tác xử lý dữ liệu hoặc nối kết với CSDL (Database). Trang Web truyền thống (dùng HTML) được trình chủ Web gửi ngay đến cho máy khách (Client) khi cĩ yêu cầu, cịn các trang JSP phải chạy qua một guồng máy (Engine) riêng biệt, ở đĩ phần mã chương trình được tách ra khỏi trang JSP, được thi hành và kết quả xử lý được ghi trở vào trang Web đang xét, tạo thành trang HTML thuần tuý.

Trang JSP khi chạy, mã Java sẽ được biên dịch thành JavaServlet và

Servlet này chạy trên máy ảo Java (JVM) ở phía máy chủ (Web Server). Mã

Java được biên dịch khi máy khách truy xuất trang JSP lần đầu tiên.

Tập tin .jsp cĩ cấu trúc giống như tập tin .html truyền thống, nhưng khác ở chỗ là tập tin .jsp cĩ xen lẫn mã Java. Mã Java được tách biệt với phần

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 54

1. CƠ CHẾ HOẠT ĐỘNG CỦA JSP

Cơng nghệ JSP gắn liền với Servlet. Mã Java trong trang JSP được biên dịch thành Servlet khi trình duyệt phía khách (Client) truy xuất trang JSP lần đầu tiên. Quá trình diễn ra như sau : Mã Java được tách ra khỏi nội dung bình thường của trang JSP, tạo thành mã nguồn của Servlet. Kết quả xử lý của Servlet được thay vào chỗ biểu thức JSP trong trang Web ban đầu (trang Web mà trình duyệt nhận được là trang HTML thuần túy).

2. NHỮNG ĐIỂM NỔI BẬT CỦA CƠNG NGHỆ

JAVASERVER PAGES (JSP)

a)Tận dụng được sức mạnh của ngơn ngữ lập trình Java Từ trước đến nay chúng ta đều biết đến Java như là một cơng cụ hỗ trợ

đắc lực trong việc xây dựng các ứng dụng Web Client - side. Nhưng Java cũng

cịn là một mơi trường lý tưởng để tạo thành phần server cho ứng dụng Web. Do nền tảng của JSP dựa trên Java nên JSP cũng tận dụng được các ưu điểm trên. JSP cung cấp một phương pháp rất mạnh để xử lý yêu cầu từ Client,

cũng như những ưu việt trong chế độ an tồn, chống rị rỉ bộ nhớ (memory

leak) và hỗ trợ chế độ xử lý đa tuyến đoạn (multithreading).

WEB BROWSER HttpServlet Trang JSP Trình diễn dịch JSP Servlet tạm

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 55

triển các ứng dụng enterprise. JSP ngày nay đã là một thành phần cốt lõi trong mơi trường J2EE. Vì vậy, với cơng nghệ JSP, người ta hồn tồn cĩ thể tạo ra được những ứng dụng cĩ quy mơ lớn với chất lượng cao.

b) Tách biệt nội dung với giao diện

Với cơng nghệ JSP, người phát triển sử dụng các thẻ HTML hay XML để thiết kế giao tiếp trang Web, các thẻ JSP hay các đoạn scriptlet để phát sinh nội dung động của trang (nội dung này phụ thuộc vào yêu cầu của user). Các xử lý phát sinh nội dung được đĩng gĩi trong các thẻ hay thành phần

JavaBeans và được liên kết lại trong scriptlet, sau đĩ được thực hiện ở server.

Do những xử lý cốt lõi đã được đĩng gĩi trong các thẻ và Beans, Web master và page designer cĩ thể hiệu chỉnh và làm việc trên trang JSP mà khơng ảnh

hưởng đến xử lý nghiệp vụ của trang. Các điều trên giúp bảo vệ các đoạn

code sở hữu độc quyền và vẫn đảm bảo cho mọi HTML - based web Browser

cĩ thể truy xuất đến các trang JSP theo yêu cầu.

c) Đơn giản hố quá trình phát triển với các thẻ

Web page developer khơng phải lúc nào cũng là một lập trình viên

thơng thạo với ngơn ngữ Script. Cơng nghệ JSP đĩng gĩi nhiều chức năng cần thiết trong việc phát sinh nội dung động ở dạng dễ sử dụng, các JSP -

specific XML tag. Các thẻ JSP chuẩn cĩ thể truy xuất và khởi tạo những thành

phần JavaBeans, thiết lập hay nhận về giá trị của thuộc tính, download applet,

và thực hiện những xử lý mà nếu viết code sẽ khĩ khăn và mất nhiều thời gian. Cơng nghệ JSP cĩ thể mở rộng thơng qua sự phát triển của các

customized tag library. Hiện nay đã cĩ khá nhiều các thư viện loại này, từ

đĩ giúp người phát triển trang Web cĩ thể làm việc với những cơng cụ quen thuộc khi thự hiện những xử lý phức tạp.

3. MƠ HÌNH ỨNG DỤNG DÙNG CƠNG NGHỆ JAVASERVER

PAGES (JSP)

Một trang JSP sẽ được xử lý bởi một JSP Engine (được cài đặt trên Web

Server hay Application Server hỗ trợ cơng nghệ JSP). JSP Engine nhận yêu

cầu từ Client đến trang JSP và phát sinh những phản hồi từ trang JSP nhận về Client.

Những trang JSP được biên dịch thành JavaServlets. JavaServlets là một

sự mở rộng của Java chuẩn, do đĩ các nhà phát triển cĩ thể truy xuất đến mơi trường ứng dụng Java đầy đủ với tất cả các sức mạnh và sự linh động vốn cĩ của họ Java.

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 56

dịch thành một Servlet class và được lưu trữ trong bộ nhớ của Server. Điều này cho phép sự hồi đáp nhanh chĩng đối với những yêu cầu tiếp theo đến trang này.

Trang JSP cĩ thể được sử dụng trong nhiều kiến trúc khác nhau và cũng

cĩ thể kết hợp với các Protocol, Components khác nhau. Một vài mơ hình cĩ

thể cĩ.

Mơ hình ứng dụng đơn giản

Trong một ứng dụng đơn giản Browser sẽ trực tiếp gọi trang JSP. Đến

lượt trang này lại phát sinh một yêu cầu (cĩ thể thơng qua JDBC để nhận

thơng tin từ Database) nhằm tạo ra kết quả đáp ứng yêu cầu của Browser. Sau

đĩ tạo ra trang HTML chuẩn và gửi trả trang này về cho Browser.

Ưu điểm :

 Giúp việc lập trình đơn giản và nhanh chĩng.

 Dễ dàng phát sinh nội dung dựa trên yêu cầu và trạng thái của tài nguyên.

Khuyết điểm :

 Gặp khĩ khăn khi cĩ nhiều Client truy xuất đồng thời những tài nguyên khan hiếm của hệ thống, do mỗi Client phải thiết lập hay chia sẻ kết nối đến tài nguyên.

VD : Nếu một trang JSP truy xuất một Database, nĩ cĩ thể tạo ra nhiều kết nối đến Database, dẫn đến ảnh hưởng đến hiệu suất của Database.

Database

HTTP/HTML/X

Browser

JDBC

SVTH : Mai Kỷ Tuyên – Nguyễn Thị Mỹ Hạnh 57

II. KỸ THUẬT LẬP TRÌNH JSP VỚI CSDL

1. JDBC VAØ TRÌNH ĐIỀU KHIỂN TRUY XUẤT CƠ SỞ DỮ

LIỆU

Hầu như cơng việc lập trình ứng dụng mà JSP và servlet thường thực hiện nhất đĩ là lưu trữ và truy xuất cơ sở dữ liệu (database), cung cấp thơng tin cho trình khách . Việc truy xuất cơ sở dữ liệu trong JSP và servlet dựa vào trình xuất JDBD theo chuẩn Java. 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 …

Một phần của tài liệu luận văn công nghệ thông tin thiết kế website môn lập trình mạng 1 với servlet và jsp (Trang 50 - 79)

Tải bản đầy đủ (PDF)

(97 trang)