Web thế hệ mới

34 1K 0
Web thế hệ mới

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đề tài : Hệ thống tuyển sinh đại học online Giảng viên: TS. Phạm Huy HoàngCHƯƠNG 1.Xác định yêu cầu bài toán31.Giới thiệu đề tài32.Mục đích33.Phân loại nhóm người dùng34.Yêu cầu về chức năng cho từng người dùng45.Yêu cầu phi chức năng4CHƯƠNG 2.Phân tích thiết kế hệ thống51.Thiết kế lớp chi tiết52.Thiết kế CSDL63.Mối liên hệ giữa các bảng12CHƯƠNG 3.Công nghệ sử dụng131.Bootstrap132.JSF Primefaces13CHƯƠNG 4.Demo hệ thống251.Trang chủ hệ thống252.Trang Admin hệ thống273.Trang Admin của các Trường đại học284.Trang sinh viên29

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ──────── * ──────── Web hệ Đề tài : Hệ thống tuyển sinh đại học online Giảng viên: TS Phạm Huy Hoàng Sinh viên thực hiện: Hà Nội, - 2016 Page | Lời nói đầu Trong kỳ thi THPT xét tuyển ĐH - CĐ 2015 vừa qua, vấn đề nộp hồ sơ đăng ký xét tuyển hay rút hồ sơ gây khó khăn cho thí sinh đặc biệt thí sinh tỉnh khác, nộp hồ sơ qua bưu điện trực tiếp trường nên dẫn đến việc nhiều thí sinh phải bỏ nhiều thời gian chi phí cho việc ăn để nộp rút hồ sơ Vấn đề gây khó khăn cho gia đình thí sinh thí sinh có hoàn cảnh khó khăn - làm hạn chế tiêu chí tổ chức thi năm tổ chức cho hạn chế chi phí hỗ trợ tốt cho thí sinh Nhóm em có ý tưởng xây dựng hệ thống hỗ trợ việc đăng ký nộp hồ sơ xét tuyển rút hồ sơ, đồng thời hỗ trợ trường tổng hợp phân loại để đưa danh sách sinh viên đủ điều kiện trúng tuyển Page | Mục lục Page | Page | CHƯƠNG Xác định yêu cầu toán Giới thiệu đề tài Trong kỳ thi THPT xét tuyển ĐH - CĐ 2015 vừa qua, vấn đề nộp hồ sơ đăng ký xét tuyển hay rút hồ sơ gây khó khăn cho thí sinh đặc biệt thí sinh tỉnh khác, nộp hồ sơ qua bưu điện trực tiếp trường nên dẫn đến việc nhiều thí sinh phải bỏ nhiều thời gian chi phí cho việc ăn để nộp rút hồ sơ Vấn đề gây khó khăn cho gia đình thí sinh thí sinh có hoàn cảnh khó khăn - làm hạn chế tiêu chí tổ chức thi năm tổ chức cho hạn chế chi phí hỗ trợ tốt cho thí sinh Nhóm em có ý tưởng xây dựng hệ thống hỗ trợ việc đăng ký nộp hồ sơ xét tuyển rút hồ sơ, đồng thời hỗ trợ trường tổng hợp phân loại để đưa danh sách sinh viên đủ điều kiện trúng tuyển Mục đích • • • • • Phân loại nhóm người dùng • • • Tạo xác thực tài khoản sinh viên Quản lý điểm thi, số nguyện vọng đăng ký sinh viên Hỗ trợ trường việc tổng hợp phân loại học sinh Tổng hợp thông tin , kết tuyển sinh Sinh viên đăng ký nộp hồ sơ online Admin (Bộ giáo dục) Sinh viên Trường đại học Yêu cầu chức cho người dùng • Admin: o Tạo tài khoản cho trường, tài khoản cho sinh viên Page | o Quản lý điểm học bạ sinh viên o Quản lý việc đăng ký tiêu chí xét tuyển trường Sinh viên: o Nộp rút hồ sơ online o Xem thông tin tổng hợp kết xét tuyển ngày o Tìm kiếm nguyện vọng phù hợp • Trường đại học: o Đăng ký tiêu chí đánh giá xét tuyển o Quản lý thay đổi tiêu chí thời gian cho phép o Kiểm tra lấy danh sách sinh viên đăng ký hay danh sách trúng • tuyển o Hỗ trợ việc nhận hồ sơ trực tiếp trường Yêu cầu phi chức • • Đảm bảo tính xác việc phân tích xử lý kết Nhanh chóng xử lý thông tin • Các thông tin kết thi kết xét tuyển không bị thay đổi bới cá nhân nhiệm vụ Page | CHƯƠNG Phân tích thiết kế hệ thống Thiết kế lớp chi tiết Model package chứa lớp Entity để chứa liệu hệ thống DAO package chứa lớp nhằm nhiệm vụ kết nối với CSDL Page | Thiết kế CSDL a Admin Bảng “Admin” lưu trữ thông tin tài khoản admin quản lý hệ thống, bao gồm các tài khoản quản lý phia trường đại học ST T Tên trường Kiểu IdAdmin Char Độ rộng 10 Password Char 20 Name IdUniversity nVarCha 50 r Char 10 DateOfBirth Date IdentifiedNumber Char Email VarChar Address Text 10 PhoneNumber Type Char smallint 12 50 12 Chú thích Mã số admin đồng thời tên tài khoản truy cập vào hệ thống Mật tài khoản admin Tên admin Tương ứng với admin quản lý trường đại học, admin quản lý hệ thống trường để NULL Ngày sinh admin Số CMND admin Địa email admin để liên lạc Địa nhà nơi admin Số điện thoại admin Phân cấp admin b Student Bảng “Student” lưu thông tin thí sinh tham gia kỳ thi tốt nghiệp THPT Page | ST T Tên trường Kiểu IdStudent Char Độ rộng 10 Password Char 20 StudentName nVarCha 50 r DateOfBirth Date IdentifiedNumber Char 12 Email VarChar 50 Address Text 10 PhoneNumber Pluspoint Section Char Float Smallint 12 Chú thích Mã số thi thí sinh đồng thời tên tài khoản truy cập vào hệ thống Mật tài khoản Student Tên student Ngày sinh student Số CMND student Địa email student để liên lạc Địa nhà nơi student Số điện thoại student Điểm cộng thí sinh Vùng thí sinh c Subject Bảng “Subject” lưu thông tin môn có kỳ thi tốt nghiệp THPT ST T Tên trường IdSubject SubjectName Kiểu Độ rộng Char 10 nVarCha 100 r Chú thích Mã số môn thi Tên môn thi d Result Bảng “Result” lưu thông tin kết thi thí sinh ứng với môn ST T Tên trường Kiểu IdStudent IdSubject Result Char Char Float Độ rộng 10 10 Chú thích Mã số thí sinh Mã môn thi Điểm thi thí sinh với môn thi Page | e University Bảng “University” lưu trữ thông tin trường đại học ST T Tên trường IdUniversity UniversityName Kiểu Độ rộng Char nVarCha 100 r Chú thích Mã số trường đại học Tên trường đại học f NguyenVong Bảng “Aspiration” lưu trữ thông tin vể nguyện vọng trường đại học ST T Tên trường Number Độ rộng Char 10 Char nVarCha 100 r Smallint Description nText Enable Int IdAspiration IdUniversity Name Kiểu Chú thích Mã số nguyện vọng Mã số trường đại học Tên nguyện vọng Số lượng sinh viên mà trường xét tuyển cho nguyện vọng Miêu tả thông tin nguyên vọng Trạng thái nguyện vọng Có giá trị là: Chấp nhận, đợi, từ chối Các giá trị có Admin cao thay đổi g TieuChi Bảng “Criterion” lưu trữ thông tin tiêu chí Mỗi nguyện vọng có tiêu chí xét tuyển ST T Tên trường Kiểu IdCriterion Char Độ rộng 10 Chú thích Mã số nguyện vọng Page | 10 • Rederer: Trả lời cho việc hiển thị UI component trao đổi liệu nhập user vao giá trị component Renderer thiết kế để làm việc với nhiều UI component, UI component tập hợp với nhiều renderer khác • Validator: Trả lời cho việc chắn giá trị nhập vào user chấp nhận Một nhiều validator tập hợp với UI component • Backing beans: Các Java Bean xác định tập hợp giá trị từ UI component bổ sung phương thức listener cho event Chúng nắm giữ tham chiếu đến UI component • Converter: Chuyển đổi giá trị component thành từ chuỗi để hiển thị Một UI component tập hợp với converter • Event/listener: JSF sử dụng mô hình event/listener JavaBeans (cũng sử dụng cho Swing) UI component (và đối tượng khác) tạo event, listener đăng ký để xử lý kiện • Messages: Thông tin hiển thị cho user Chỉ phần ứng dụng (backing beans, validators, converter …) tạo thông tin thông điệp lỗi nhằm hiển thị cho user • Navigation: Khả di chuyển từ trang đến trang khác JSF có hệ thống navigation mạnh mẽ tích hợp với event listeners Vòng đời việc xử lý request Chúng ta nói lập trình Web đơn giản với components, events, listeners, chín mươi khác niệm khác Vì phần nói xử lý Page | 20 request Trong bạn tìm hiểu frameword bên xử lý request Servlet API, phân tích Faces xử lý request Điều cho phép bạn xây dựng ứng dụng tốt bạn biết xác đặt đâu • Bước - Restore View: Hiển thị thay tất component tạo nên trang cụ thể Nó lưu trữ client (thông thường field ẩn trình duyệt) server (thông thường session) • Bước - Apply Request Values: Mỗi UI component chấp nhận liệu nhập có giá trị submit thay giá trị liệu gốc từ user Trong suốt bước này, framework ấn định giá trị submit dựa tham số gởi request Quá trình gọi decoding • Bước - Process Validation: bước này, JSF đặt component hỏi component có chắn giá trị submit chấp nhận không Bởi giá trị submit component nhập vào cập nhật bước 2, component có hầu hết liệu thời user Trước validation xảy ra, giá trị submit chuyển đổi, converter đăng ký cho component converter mặc định Validation sau xử lý trực tiếp component công bố cho nhiều validator • Bước - Update Model Values: Bây chắn giá trị cục component cập nhật xác kiểu, chuyển với bean tập hợp mô hình đối tượng Bởi đối tượng tập hơp với component thông qua phát biểu JSF EL, nơi phát biểu kiểm tra thuộc tính cập nhật dựa giá trị cụ component Page | 21 • Bước - Invoke Application: Bây bean cần thiết mô hình đối tượng cập nhật, xuống việc công bố thông tin Trong bước này, JSF quảng bá kiện cho bước listener đăng ký • Bước - Render Response: Tại thời điểm này, tất xử lý bới framework ứng dụng trải qua Tất chờ gởi trả lời cho user, mục tiêu bước Mục tiêu thứ hai lưu lại trạng thái hiển thị để phục hồi bước Restore View user yêu cầu lại Trạng thái hiển thị lưu lại bước thường hiển thị lưu client, phần response nhằm gởi trả cho user Trong trường hợp này, JSF lưu trạng thái server, hiển thị hầu hết lưu trữ session user • Ưu-Nhược Điểm Của JSF Ưu điểm dùng Dạng Chuẩn Centralized filebased configuration Thay code cứng thông tin liệu vào chương trình Java nhiều giá trị JSF thể dạng XML tập tin đặc tả Do thay đổi cần chỉnh sửa tập tin mà không cần chỉnh sửa code hay recompiling code Consistent Approach Khuyến khích cách làm đồng bộ, thống MVC xuyên suốt ứng dụng • Ưu-Nhược Điểm Của JSF Khuyến điểm dùng RequestDispatcher Bigger learning curve Worse documentation • Ưu-Nhược Điểm Của JSF Khuyến điểm dùng Dạng Chuẩn Less Transparent Với ứng dụng JSF, có nhiều việc thực thi lề so với ứng dụng Web viết Java bình thường Vì nên: Khó hiểu Khó đánh giá Page | 22 Undeveloped tool support Có nhiều IDEs hỗ trợ mạnh cho standard servlet JSP, hỗ trợ cho JSF bắt đầu xuất • Ưu-Nhược Điểm Của JSF Ưu điểm So Với Struts Custom components JSF kết hợp GUIs phức tạp vào component đơn quản lý dễ dàng có tính liên kết Struts không Support for other display technologies JSF không giới hạn HTML HTTP; Struts có Access to beans by name JSF cho phép bạn đặt tên cho beans, sau gọi tên beans forms Struts có trình phức tạp với nhiều bước trung gian mà bạn phải nhớ form đầu vào hành động • Ưu-Nhược Điểm Của JSF Ưu điểm So Với Struts JSF expression language (ngôn ngữ mở rộng JSF dùng để binding thành phần component với thành phần backing bean đó) ngắn gọn mạnh Struts bean: viết tag Simpler controller and bean definitions JSF không đòi hỏi lớp bean controller bạn phải kế thừa tứ lớp cha(vd: Action) hay phương thức(vd: execute) Struts bắt buộc Simpler config file and overall structure Tập tin faces-config.xml dễ dùng tập tin struts-config.xml file • Ưu-Nhược Điểm Của JSF Khuyết điểm So Với Struts Confusion vs file names Trang thực dùng JSF có đuôi jsp Nhưng URLs hiển thị đuôi faces jsf Nên gọi trực tiếp bị exception Khó truy cập đến trang non-faces tập tin faces-config.xml Self-submit approach Trong Struts, form (vd: blah jsp ) handler (blah ) có URLs khác nhau; JSF giống Page | 23 • Ưu-Nhược Điểm Của JSF Khuyết điểm So Với Struts Less current tool support Struts hỗ trợ nhiều IDEs; JSF chưa Much weaker automatic validation Struts kiểm tra tính hợp lệ địa email, mã thẻ tín dụng, regular expressions,và nhiều thứ JSF kiểm tra giá trị rỗng, chiều dài giới hạn số POST only JSF không hỗ trợ phương thức GET nên bookmark trang kết Mục đích đời JSF mục tiêu thiết kế sau lí cho đời JSF: Tạo khung gồm thành phần giao diện người dùng chuẩn (standard GUI component framework) nhằm giúp cho công cụ phát triển dễ dàng cho người dùng việc tạo GUI chất lượng cao đồng thời quản lí kết GUI với xử lí thực thi chương trình Định tập lớp sở Java (lightweight Java base classes) biểu diễn cho thành phần UI, trạng thái thành phần, kiện đầu vào Những lớp xử lí vấn đề liên quan đến chu kì sống GUI, đặc biệt quản lí trạng thái suốt chu trình sống trang thành phần GUI Cung cấp tập thành phần GUI chung, bao gồm thành phần HTML form input Những thành phần dẫn xuất từ tập đơn giản lớp sở (đề cập #1) đề từ định thành phần Page | 24 Cung cấp mô hình JavaBeans để truyền (dispatch) kiện từ GUI controls phía máy khách đến xử lí thực cụ thể từ phía ứng dụng máy chủ Định hàm APIs để kiểm chứng liệu nhập, bao gồm hỗ trợ kiểm chứng từ phía máy chủ Chỉ định mô hình để đa ngôn ngữ hóa hay địa phương hóa GUI Khởi tạo tự động liệu phù hợp cho máy khách đích, dựa vào liệu cấu hình máy khách đó, bao gồm dựa vào phiên trình duyệt, ví dụ Việc khởi tạo tự động liệu kèm theo đòi hỏi hỗ trợ người dùng (accessibility), qui định WAI Các phiên JSF  JSF 1.0 - miêu tả kĩ thuật JSF thức  JSF 1.1 - sửa lỗi thức Không có thay đổi kĩ thuật hay HTML renderkit JSF 1.2 - thức chuẩn bị mắt miêu tả JSR 252   cải tiến để cung cấp giải pháp tạm thời cho vấn đề trộn lẫn nội dung (content-interweaving problem) nói đến http://www.onjava.com/pub/a/onjava/2004/06/09/jsf.html Page | 25 cung cấp XML Schema cho file cấu hình, thay cho việc dùng  DTD cải tiến phép 'faces applications xử lí nhiều  khung (multi-frame), hay thiết kế đa cửa sổ người dùng (multi-window UI)  cải tiến thư viện thể f: để nâng cao 'TCK coverage, kiện liên quan chu trình sống f:view, số đặc tính nhỏ khác  cải tiến việc hỗ trợ trang trí cho đối tượng API  cải tiến an ninh cho phía trình khách việc lưu giữ trạng thái  giải vấn đề "duplicate button press"  tổ chức lại miêu tả kĩ thuật theo phần tiêu chuẩn (normative), không tiêu chuẩn, để giúp cho việc thực dễ dàng  Các sữa lỗi cho portlet  Một sỗ sửa lỗi đòi hỏi thay đổi chút miêu tả kĩ thuật Page | 26 CHƯƠNG Demo hệ thống Trang chủ hệ thống Trang có chức cho phép người dùng tra cứu điểm thi thí sinh đăng nhập hệ thống Figure 1: Trang chủ Page | 27 Figure 2: Tra cứu điểm thi Figure 3: Đăng nhập Page | 28 Trang Admin hệ thống Dành cho tài khoản Admin hệ thống, có nhiệm vụ quản lý thông tin sinh viên, admin khác, quản lý nguyện vọng tuyển sinh Figure 4: Trang chủ Admin Figure 5: Quản lý Admin hệ thống Page | 29 Trang Admin Trường đại học Cho phép người dùng trường đại học thực việc nộp hồ sơ, rút hồ sơ, tra cứu thông tin sinh viên, thay đổi thông tin nguyện vọng trường Figure 6: Tra cứu thông tin sinh viên Page | 30 Figure 7: Quản lý nguyện vọng Figure 8: Nộp hồ sơ cho sinh viên Trang sinh viên Cho phép sinh viên xem thông tin cá nhân: điểm thi, học bạ, thông tin ,… tra cứu nguyện vọng để nộp hồ sơ, rút hồ sơ hỗ trợ gợi ý Page | 31 Figure 9: Trợ giúp chọn trường Figure 10: Tra cứu nguyện vọng tuyển sinh Page | 32 Kết luận Hệ thống hỗ trợ chức cần thiết số chức nâng cao để hỗ trợ cho sinh viên trường đại học dễ dàng thực việc nộp rút hồ sơ cách dễ dàng, giảm chi phí cho sinh viên trường đại học Nhóm chúng em trân thành cảm ơn thầy truyền đạt kiến thức sâu sắc mô hình phát triển phần mềm theo hướng chuyên nghiệp Tuy nhiên hệ thống phát triển số lỗi thiếu sót, chúng em mong thầy xem xét góp ý cho nhóm em để phát triển hệ thống sau Page | 33 Page | 34 [...]... thành phần UI và các khái niệm tầng Web mà không giới hạn bạn trong một công nghệ scripting cụ thể hoặc một ngôn ngữ đánh dấu Trong khi công nghệ JSF bao gồm một thư viện thẻ tùy biến JSP dùng thay thế các thành phần trên trang JSP, API của công nghệ JSP được phân lớp trực tiếp trên đỉnh của JavaServlet API Điều này cho phép bạn làm được vài điều: sử dụng công nghệ trình bày khác bên cạnh JSP, tạo... thích với các phiên bản mới nhất của tất cả các trình duyệt nổi tiếng trên thế giới như Chrome, Firefox, IE, Opera Kể từ phiên bản 2.0 trở lên nó cũng hỗ trợ Responsive Web Design Thiết kế và bố trí của các trang web tự động điều chỉnh, tự động tương thích các thiết bị được sử dụng (máy tính để bàn, máy tính bảng, điện thoại di động) 2 JSF Primefaces JavaServer Faces là gì? Công nghệ Java Server Faces... JSF có một hệ thống navigation mạnh mẽ tích hợp với những event listeners Vòng đời của việc xử lý request Chúng ta nói về lập trình Web đơn giản thế nào với các components, events, listeners, và chín mươi khác niệm khác nhau Vì thế tại sao phần này nói về xử lý Page | 20 request Trong khi bạn tìm hiểu frameword bên dưới xử lý request của Servlet API, sẽ phân tích Faces xử lý request như thế nào Điều... sự thay đổi chút ít trong bản miêu tả kĩ thuật Page | 26 CHƯƠNG 4 Demo hệ thống 1 Trang chủ hệ thống Trang có chức năng cho phép người dùng tra cứu điểm thi của thí sinh và đăng nhập hệ thống Figure 1: Trang chủ Page | 27 Figure 2: Tra cứu điểm thi Figure 3: Đăng nhập Page | 28 2 Trang Admin hệ thống Dành cho các tài khoản Admin hệ thống, có nhiệm vụ quản lý thông tin về sinh viên, các admin khác, và... của công nghệ JSF là nó cho phép một sự phân chia rạch ròi giữa behavior (cách xử lý) và presentation (cách trình bày) Xây dựng ứng dụng web với công nghệ JSP lưu trữ từng phần của việc phân chia này Tuy nhiên, một ứng dụng JSP không thể ánh xạ những request HTTP thành những xử lý sự kiện các thành phần cụ hể hoặc quản lý các thành phần UI như những đối tượng có trạng thái trên server Công nghệ JSF cho... Point Char Char Float Độ rộng 12 12 Chú thích Mã sinh viên Mã nguyện vọng Điểm tổng kết Page | 11 3 Mối liên hệ giữa các bảng Page | 12 Page | 13 CHƯƠNG 3 Công nghệ sử dụng 1 Bootstrap Bootstrap là Front-end framework, là một bộ sưu tập miễn phí các công cụ để tạo ra các trang web và các ứng dụng web Nó chứa HTML và CSS dựa trên các mẫu thiết kế cho kiểu chữ, hình thức, các nút, chuyển hướng và các thành... lớp thành phần, hoặc họ có thể kế thừa các thành phần chuẩn cung cấp bởi công nghệ JSF • Tool Verdors: người cung cấp các công cụ nhằm tạo ra công nghệ JSF xây dựng UI phía server dễ dàng hơn Những thành viên chính của công nghệ JSF sẽ là page authors và application developers Các thành phần chính Như hầu hết các công nghệ, Faces có những quy định của nó nhằm đưa ra các khái niệm cơ bản cho những đặc... JSF Primefaces JavaServer Faces là gì? Công nghệ Java Server Faces là một UI framework cho việc xây dựng các ứng dụng web chạy trên Java server và thay thế UI phía sau cho client Các thành phần chính của công nghệ JSF bao gồm: Page | 14 • Một API và các bổ sung tham khảo cho: thay thế các thành phần UI và quản lý trạng thái của chúng; xử lý các sự kiện, kiểm tra phía server và chuyển đổi dữ liệu; định... deploy và chạy các ứng dụng JSF bạn cần một môi trường deploy chẳng hạn Java Web Software Development Pack và Java 2 Platform, Standard Edition (J2SE) SDK 1.3 trở lên Đồng thời download bổ sung công nghệ Java Server Faces Có thể download các phần mềm cần thiết tại các link dưới đây • http://java.sun.com/webservices/downloads/webservicespack.html Page | 15 • http://java.sun.com/j2se/1.5 • http://java.sun.com/j2se/javaserverfaces/download.html... nghệ JSF, việc phát triển và sửa chữa các ứng dụng JSF có thể xử lý dễ dàng và nhanh chóng Các thành viên củamột nhóm phát triển thông thường bao gồm một danh sách dưới đây Trong nhiều nhóm, các nhà phát triển riêng biệt đóng nhiều hơn một trong những vai trò dưới đây • PageAuthors: người sử dụng ngôn ngữ đánh dấu, giống như HTML, để tạo ra các trang cho ứng dụng Web Khi sử dụng framework công nghệ

Ngày đăng: 22/06/2016, 21:40

Mục lục

  • CHƯƠNG 1. Xác định yêu cầu bài toán

    • 1. Giới thiệu đề tài

    • 2. Mục đích

    • 3. Phân loại nhóm người dùng

    • 4. Yêu cầu về chức năng cho từng người dùng

    • 5. Yêu cầu phi chức năng

    • CHƯƠNG 2. Phân tích thiết kế hệ thống

      • 1. Thiết kế lớp chi tiết

      • 2. Thiết kế CSDL

      • 3. Mối liên hệ giữa các bảng

      • CHƯƠNG 3. Công nghệ sử dụng

        • 1. Bootstrap

        • 2. JSF Primefaces

        • CHƯƠNG 4. Demo hệ thống

          • 1. Trang chủ hệ thống

          • 2. Trang Admin hệ thống

          • 3. Trang Admin của các Trường đại học

          • 4. Trang sinh viên

Tài liệu cùng người dùng

Tài liệu liên quan