Xây dựng và quản lý ứng dụng

20 154 0
Xây dựng và quản lý ứng dụng

Đ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

Xây dựng quản lý ứng dụng Xây dựng quản lý ứng dụng Bởi: Trung tâm tin học Đại học Khoa học tự nhiên HC< Trong chương trước, tìm hiểu làm việc với điều khiển, xử lý liệu với ADO.Net, tạo lớp xử lý xây dựng đối tượng thể hiện, … kỹ cần thiết để xây dựng ứng dụng Trong chương này, tìm hiểu đối tượng dùng để xây dựng, phát triển quản lý ứng dụng web Thông qua đối tượng này, ghi nhận yêu cầu từ Client, quản lý thông tin người dùng, cấu hình bảo mật cho ứng dụng Đối tượng Request, Response Quá trình Request - Response HTTP Đối tượng Response Đối tượng Response sử dụng để giao tiếp với Client, quản lý điều phối thông tin từ Web Server đến trình duyệt người dùng Phương thức Write Phương thức Write đối tượng Response dùng để in chuỗi trang Web Phương thức phương thức chủ lực ứng dụng web sử dụng ASP 3.0 cần gởi kết từ Server cho Client 1/20 Xây dựng quản lý ứng dụng Response.Write("Chào bạn Bạn tìm hiểu đối tượng Response.") Trong ASP.Net, thực sau: lblChao.Text = "Chào bạn Bạn tìm hiểu đối tượng Response." Qua ví dụ trên, có lẽ bạn nhận rằng, sử dụng phương thức Response.Write, qui định vị trí hiển thị chuỗi trang Web Thay vào đó, với ASP.Net, thông qua Server control, thực chức tương tự linh hoạt cách đặt điều khiển vị trí cần hiển thị Phương thức Redirect Phương thức Redirect gởi thông điệp yêu cầu Web Browser truy cập đến địa khác 'Nếu đăng nhập thành công If Then Response.Redirect("Chao.aspx") Else Response.Redirect("Dang_nhap.aspx") End If Ví dụ xử lý cho phép người dùng download file Sử dụng đối tượng Response để thực việc download tập tin Thiết kế 2/20 Xây dựng quản lý ứng dụng Thi hành Viết lệnh xử lý: Private Sub lnkDownload_Click(sender …, e …) _ Handles lnkDownload.Click Dim sTap_tin As String = "MinhHoa.zip" Dim sDuong_dan As String sDuong_dan = Server.MapPath(" /Download/") & sTap_tin Response.AddHeader("Content-Disposition", _ "attachment; filename=" + sTap_tin) Response.WriteFile(sDuong_dan) Response.End() End Sub Hiển thị hộp thoại download tập tin Đối tượng Request Đối tượng Request dùng để nhận thông tin từ trình duyệt người dùng gởi cho Web Server Thuộc tính QueryString Như trình bày phần đầu sách này, HTTP xác định qua URLs (Uniform Resource Locators), với cấu trúc chuỗi có định dạng sau: http: // [: ] [ [? ]] 3/20 Xây dựng quản lý ứng dụng Phần cuối chuỗi URL QueryString - gọi chuỗi tham số, có cấu trúc sau: [?Tham_so_1=gia_tri_1[&Tham_so_2=gia_tri_2[&……]]] Trong trường hợp có nhiều tham số, cặp [ = ] phân cách dấu & http://www.tuoitre.com.vn/Tianyon/Index.aspx?PID=16 http://www.tuoitre.com.vn/Tianyon/Index.aspx?ArticleID=89211&PID=16 Thuộc tính QueryString đối tượng Request cho phép nhận giá trị truyền qua chuỗi tham số Request.QueryString("Tên_tham_số") Giả sử người dùng gởi thông điệp đến Web Server yêu cầu trang: "Request.aspx?Chuc_nang=Hieu_chinh&ID=123" Để lấy giá trị tham số chuỗi QueryString, thực sau: Dim sChuc_nang As String sChuc_nang = Request.QueryString("Chuc_nang") lblChuc_nang.Text = sChuc_nang Dim Id As Integer Id = Request.QueryString("ID") lblId.Text = Id Trong trường hợp tên tham số không tồn chuỗi QueryString, thuộc tính Request.QueryString() trả giá trị nothing Nếu bạn để ý đoạn lệnh xử lý trên, có thực khai báo biến với kiểu liệu tương ứng tham số, nhận kết trả từ thuộc tính Request.QueryString() Trong trường hợp tham số không truyền chuỗi URL có truyền mà sai kiểu liệu, biến tạo có giá trị mặc định tương ứng với kiểu liệu nó, tránh lỗi kiểu liệu không đáng có Các ví dụ minh họa Lấy thông tin trình duyệt người dùng Dim sThong_tin As String With Request.Browser sThong_tin &= "Browser: " & Browser & "" sThong_tin &= "Version: " & Version & "" sThong_tin &= "Platform: " & 4/20 Xây dựng quản lý ứng dụng Platform & "" sThong_tin &= "JavaScript: " & JavaScript & "" lblThong_tin.Text = sThong_tin End With Liệt kê danh sách biến Server Dim sServer As String, i As Integer With Request.ServerVariables For i = To Count - sServer &= Keys(i) & ": " & Item(i) & "" Next i lblServer.Text = sServer End With Danh sách biến Server Đối tượng Session, Application Application Session đối tượng quan trọng ứng dụng web, giúp trang aspx liên kết trao đổi liệu cho Trong phần này, tìm hiểu sử dụng đối tượng ứng dụng 5/20 Xây dựng quản lý ứng dụng Quan hệ Session Application Đối tượng Application Đối tượng Application sử dụng để quản lý tất thông tin ứng dụng web Thông tin lưu trữ đối tượng Application xử lý trang aspx suốt chu kỳ sống ứng dụng Sử dụng biến Application Tạo biến Application Application("Tên biến") = Lấy giá trị từ biến Application = Application("Tên biến") Application.Lock() Application("So_lan_truy_cap") = Application("So_nguoi_online") = Application.UnLock() Chú ý: 6/20 Xây dựng quản lý ứng dụng Do thời điểm có nhiều người lúc truy cập thay đổi giá trị thông tin lưu đối tượng Application, nên sử dụng lệnh Lock UnLock trước sau cập nhật giá trị biến Application Biến Application sử dụng trang trì suốt chu kỳ sống ứng dụng Duyệt qua tập hợp biến chứa Application Dim i As Integer Response.Write("Danh sách biến đối _ tượng Application") For i = To Application.Count() - Response.Write(Application.Keys(i) & " : ") Response.Write(Application(i) & "") Next i Kết hiển thị Đối tượng Session Đối tượng Session dùng để lưu trữ thông tin người dùng ứng dụng Thông tin lưu trữ Session người dùng phiên làm việc cụ thể Web Server tự động tạo đối tượng Session cho người dùng kết nối vào ứng dụng tự động hủy chúng người dùng không làm việc với ứng dụng Tuy nhiên, không giống đối tượng Application, đối tượng Session chia sẻ thông tin lần làm việc người dùng, cung cấp, trao đổi thông tin cho trang lần làm việc tương ứng Trong ứng dụng web, đối tượng Session giữ vai trò quan trọng Do sử dụng giao thức HTTP, giao thức phi trạng thái, Web Server hoàn toàn không ghi nhớ những lần yêu cầu Client Đối tượng Session tỏ hữu hiệu việc thực "lưu vết quản lý thông tin người dùng" Thuộc tính & Phương thức • Thuộc tính Timeout Qui định khoảng thời gian (tính phút) mà Web Server trì đối tượng Session người dùng không gởi yêu cầu lại Server Giá trị mặc định thuộc tính 20 7/20 Xây dựng quản lý ứng dụng Nếu yêu cầu kể từ lần yêu cầu sau khoảng thời gian phút, đối tượng Session mà Web server cấp cho lần làm việc tự động giải phóng Những yêu cầu sau Web server coi người dùng mới, đương nhiên cấp đối tượng Session • Phương thức Abandon Như bạn biết, khoảng thời gian phút kể từ lần yêu cầu sau Client, đối tượng Session trì tương tác Client Điều đồng nghĩa với việc Web server phải sử dụng vùng nhớ để trì đối tượng Session khoảng thời gian tương ứng Phương thức Abandon đối tượng Session giải phóng vùng nhớ dùng để trì đối tượng Session Web Server gọi thực Những yêu cầu sau Web server coi người dùng Sử dụng biến toàn cục với Session Tạo biến Session Session("Tên biến") = Lấy giá trị từ biến Session = Session("Tên biến") Lưu trữ thông tin người dùng chưa đăng nhập hệ thống: Session("Mkh") = Session("Ten_dang_nhap") = "" Khi người dùng đăng nhập hệ thống thành công, cập nhật lại thông tin đăng nhập người dùng lưu Session Session("Mkh") = Session("Ten_dang_nhap") = "dlthien" Duyệt qua tập hợp biến chứa Session Dim i% For i = To Session.Count() - Response.Write(Session.Keys(i) & " : ") Response.Write(Session(i) & "") Next 8/20 Xây dựng quản lý ứng dụng Đối tượng Server Đối tượng Server sử dụng để cung cấp thông tin Server cho ứng dụng • Thuộc tính MachineName Thuộc tính dùng để lấy tên Web Server • Phương thức Mappath Phương thức Mappath dùng để lấy đường dẫn vật lý đường dẫn ảo đến thư mục Server • Phương thức Transfer() Ngừng thi hành trang hành, gởi yêu cầu đến trang gọi thực Đối tượng Cookies Giới thiệu Có lẽ bạn đăng ký thành viên trang web hay forum đó, không lần ngạc nhiên bạn vừa yêu cầu đến trang web hay forum mà bạn đăng ký trước đó, trang web nhận ra, bạn thành viên họ gởi lời chào đến bạn, chẳng hạn: Chào Nguyễn Anh Tài Làm mà Web Server nhận nhỉ? Mình đăng ký từ ngày hôm qua mà? Không đâu xa cả, thông tin lưu máy bạn Những thông tin Web Server lưu máy Client gọi Cookies Không giống đối tượng Session, đối tượng Cookies dùng để lưu trữ thông tin người dùng, nhiên, thông tin lưu máy gởi yêu cầu đến Web Server Có thể xem Cookie tập tin (với kích thước nhỏ) Web Server lưu máy người dùng Mỗi lần có yêu cầu đến Web Server, thông tin Cookies gởi theo Server 9/20 Xây dựng quản lý ứng dụng Làm việc với Cookies Thêm Cookies Response.Cookies.Add() Dim cookTen_dn As New HttpCookie("Ten_dang_nhap") cookTen_dn.Value = txtTen_dang_nhap.Text cookTen_dn.Expires = Date.Today.AddDays(1) Response.Cookies.Add(cookTen_dn) Trong ví dụ trên, tạo Cookies có tên Ten_dang_nhap lưu trữ tên đăng nhập người dùng Thông tin lưu trữ Cookies ngày kể từ ngày hành Web Server Lấy giá trị từ Cookies Dim As HttpCookie = Request.Cookies() .Value ' Î Giá trị Cookies Trong trường hợp Cookies chưa lưu hết thời hạn trì Client, giá trị nhận Nothing Tập tin quản lý cấu hình ứng dụng Global.asax Tập tin Global.asax dùng để: - Khai báo khởi tạo giá trị cho biến Application, Session - Viết xử lý cho kiện đối tượng Application Session 10/20 Xây dựng quản lý ứng dụng Cấu trúc tập tin Global.asax Public Class Global Inherits System.Web.HttpApplication Sub Application_Start(ByVal sender …, ByVal e …) End Sub Sub Session_Start(ByVal sender …, ByVal e …) End Sub Sub Application_BeginRequest(sender …, e …) End Sub Sub Application_Error(ByVal sender …, ByVal e …) End Sub Sub Session_End(ByVal sender …, ByVal e …) End Sub Sub Application_End(ByVal sender …, ByVal e …) End Sub End Class Các kiện tập tin Global.asax • Application_Start: Chỉ xảy lần trang ứng dụng gọi Sub Application_Start(sender , ByVal e As EventArgs) Application("So_luot_truy_cap") = Application("So_nguoi_online") = End Sub • Session_Start: Xảy có người dùng yêu cầu đến trang aspx ứng dụng Khi Session_Start xảy ra, giá trị (SessionID) tạo cho người dùng, giá trị sử dụng để quản lý người dùng trình làm việc với ứng dụng Sub Session_Start(sender As Object, e As EventArgs) Application("So_luot_truy_cap") += Application("So_nguoi_online") += Session("Mkh") = Session("Ten_dang_nhap") = "" End Sub • Application_BeginRequest: Xảy có Postback Server • Sub Application_Error: Xảy có lỗi phát sinh trình thi hành • Session_End Xảy phiên làm việc gởi yêu cầu làm tươi trang aspx ứng dụng web khoảng thời gian (mặc định 20 phút) Sub Session_End(sender As Object, e As EventArgs) Application("So_nguoi_online") -= End Sub • Application_End: Xảy dừng hoạt động WebServer Ví dụ xử lý ghi nhận thông tin Số lượt truy cập vào sở liệu (nếu cần) 11/20 Xây dựng quản lý ứng dụng Web.config Cấu trúc tập tin web.config Web.config tập tin văn sử dụng để lưu trữ thông tin cấu hình ứng dụng,được tự động tạo tạo ứng dụng web Tập tin web.config viết theo định dạng XML Web.config tạo kế thừa giá trị từ tập tin Windows\Microsoft NET\ Framework\[Framework Version]\CONFIG\machine.config Tập tin cấu hình ứng dụng Web.config: Allow all users > ………… Các cấu hình mặc định defaultLanguage: qui định ngôn ngữ mặc định ứng dụng debug: Bật/tắt chế độ debug ứng dụng Đây cấu hình cần thiết cho ứng dụng Web Hiệu chỉnh cấu hình cho phép quản lý việc xử lý lỗi có lỗi phát sinh ứng dụng Thuộc tính mode có giá trị: RemoteOnly, On Off • RemoteOnly: Cho phép người dùng thấy thông báo lỗi hệ thống trang thông báo lỗi định qua defaultRedirect (nếu có) Thông báo lỗi gồm: Mã lỗi mô tả lỗi tương ứng 12/20 Xây dựng quản lý ứng dụng • On: Tùy theo giá trị defaultRedirect mà có trường hợp tương ứng: • Có qui định trang thông báo lỗi qua defaultRedirect: Hiển thị trang thông báo lỗi • Không có thuộc tính defaultRedirect: Hiển thị trang báo lỗi hiển thị mã lỗi mô tả lỗi 13/20 Xây dựng quản lý ứng dụng • - Off: Hiển thị thông báo lỗi trang aspx (nếu xảy lỗi) 14/20 Xây dựng quản lý ứng dụng • • mode: Thuộc tính có giá trị: InProc, sqlserver (lưu database), stateserver (lưu nhớ) • stateConnectionString: Cấu hình địa cổng (port) máy để lưu trữ thông tin Session vùng nhớ (nếu chức chọn) • sqlConnectionString: Cấu hình kết nối đến SQL Server dùng để lưu thông tin Session (nếu chức chọn) • cookieless: Nếu giá trị thuộc tính = True, thông tin cookie lưu trữ URL, ngược lại, = False, thông tin cookies lưu trữ client (nếu client có hỗ trợ) • timeout: Khoảng thời gian (tính phút) mà đối tượng Session trì Sau khoảng thời gian này, đối tượng Session bị huỷ Giá trị mặc định thuộc tính 20 15/20 Xây dựng quản lý ứng dụng Làm việc với tập tin web.config Tập tin web.config có hỗ trợ tag với thuộc tính key value cho phép thêm vào biến dùng để cấu hình ứng dụng Lưu ý: Các tên tag tập tin cấu hình web.config có phân biệt chữ hoa, chữ thường Tạo biến cấu hình Ole_Con dùng để lưu trữ thông tin chuỗi kết nối đến sở liệu SQL Server: Lấy giá trị thiết lập tập tin web.config gChuoi_ket_noi = ConfigurationSettings.AppSettings("Ole_Con") 16/20 Xây dựng quản lý ứng dụng Tổ chức & xây dựng ứng dụng Tổ chức lưu trữ ứng dụng Màn hình giao diện Giao diện ứng dụng quản lý bán hàng qua mạng Kinh nghiệm giảng dạy: Trong phần này, giáo viên hướng dẫn học viên truy cập vào trang web với nhiều thể loại khác nhau: Tin tức, bán hàng trực tuyến, học tập trực tuyến, … 17/20 Xây dựng quản lý ứng dụng Dựa trang web đó, giáo viên giúp học viên xác định thành phần có trang web trình bày cho học viên thấy bố cục (hình thức trình bày) trang web Tổ chức lưu trữ Tổ chức lưu trữ ứng dụng • Css: Lưu trữ tập tin *.css - tập tin qui định hình thức hiển thị • Data: Lưu trữ tập tin *.mdb - tập tin sở liệu • Hinh_minh_hoa: Lưu trữ tập tin hình ảnh (*.bmp, *.gif, *.png, …) Trong thư mục này, tổ chức thư mục để lưu trữ hình ảnh theo chủ đề, ngày, … • • • • The_hien: Lưu trữ điều khiển người dùng tạo - đối tượng thể Thu_vien: Lưu trữ tập tin thư viện dùng chung ứng dụng Trang: Lưu trữ hình - trang Web (*.aspx) Xu_lyK: Lưu trữ lớp xử lý liệu Xây dựng ứng dụng Xây dựng lớp Xử lý liệu Ứng với bảng sở liệu, xây dựng lớp xử lý tương ứng Các lớp xử lý liệu xây dựng tương tự lớp XL_SACH 18/20 Xây dựng quản lý ứng dụng Thiết kế sở liệu ứng dụng Quản lý bán hàng trình bày phụ lục A Cơ sở liệu Quản lý bán hàng Danh sách lớp xử lý Thiết kế trang Web Trước bắt tay vào thiết kế đối tượng thể hình giao diện cho ứng dụng, nên nghĩ tới thiết kế trang web chạy hình có độ phân giải (thường dùng 800x600) Yếu tố không quan trọng phần định bố cục trình bày trang web 19/20 Xây dựng quản lý ứng dụng Kiến trúc tổng thể trang web Tùy theo yêu cầu thể loại ứng dụng mà định kích thước (w, h) cho trường hợp cụ thể 20/20 [...]... thư viện dùng chung của ứng dụng Trang: Lưu trữ các màn hình - các trang Web (*.aspx) Xu_lyK: Lưu trữ các lớp xử lý dữ liệu Xây dựng ứng dụng Xây dựng lớp Xử lý dữ liệu Ứng với mỗi bảng trong cơ sở dữ liệu, chúng ta xây dựng các lớp xử lý tương ứng Các lớp xử lý dữ liệu xây dựng tương tự như lớp XL_SACH 18/20 Xây dựng và quản lý ứng dụng Thiết kế cơ sở dữ liệu của ứng dụng Quản lý bán hàng được trình... ConfigurationSettings.AppSettings("Ole_Con") 16/20 Xây dựng và quản lý ứng dụng Tổ chức & xây dựng ứng dụng Tổ chức lưu trữ ứng dụng Màn hình giao diện Giao diện ứng dụng quản lý bán hàng qua mạng Kinh nghiệm giảng dạy: Trong phần này, giáo viên hướng dẫn học viên truy cập vào các trang web với nhiều thể loại khác nhau: Tin tức, bán hàng trực tuyến, học tập trực tuyến, … 17/20 Xây dựng và quản lý ứng dụng Dựa trên những trang... Xây dựng và quản lý ứng dụng • - Off: Hiển thị thông báo lỗi của trang aspx (nếu xảy ra lỗi) 14/20 Xây dựng và quản lý ứng dụng • • mode: Thuộc tính này có 3 giá trị: InProc, sqlserver (lưu trong database), và. .. liệu Quản lý bán hàng Danh sách các lớp xử lý Thiết kế trang Web Trước khi bắt tay vào thiết kế các đối tượng thể hiện và màn hình giao diện cho ứng dụng, chúng ta cũng nên nghĩ tới sẽ thiết kế trang web chạy trên màn hình có độ phân giải nào (thường dùng hiện nay là 800x600) Yếu tố này tuy không quan trọng nhưng nó cũng phần nào quyết định bố cục trình bày của trang web 19/20 Xây dựng và quản lý ứng dụng. .. debug="true"/> defaultLanguage: qui định ngôn ngữ mặc định của ứng dụng debug: Bật/tắt chế độ debug của ứng dụng Đây là một cấu hình khá cần thiết cho ứng dụng Web Hiệu chỉnh cấu hình này cho phép chúng ta quản lý việc xử lý lỗi khi có lỗi phát sinh trong ứng dụng Thuộc tính mode có các giá trị: RemoteOnly, On và Off • RemoteOnly: Cho phép người dùng thấy thông báo lỗi... lỗi và mô tả lỗi tương ứng 12/20 Xây dựng và quản lý ứng dụng • On: Tùy theo giá trị của defaultRedirect mà có các trường hợp tương ứng: • Có qui định trang thông báo lỗi qua defaultRedirect: Hiển thị trang thông báo lỗi • Không có thuộc tính defaultRedirect: Hiển thị trang báo lỗi nhưng không có hiển thị mã lỗi và mô tả lỗi 13/20 Xây. .. Sau khoảng thời gian này, đối tượng Session sẽ bị huỷ Giá trị mặc định của thuộc tính này là 20 15/20 Xây dựng và quản lý ứng dụng Làm việc với tập tin web.config Tập tin web.config có hỗ trợ tag với 2 thuộc tính là key và value cho phép chúng ta thêm vào các biến dùng để cấu hình ứng dụng Lưu ý: Các tên tag trong tập tin cấu hình web.config có phân biệt chữ hoa, chữ thường ... gởi yêu cầu hoặc làm tươi trang aspx của ứng dụng web trong một khoảng thời gian (mặc định là 20 phút) Sub Session_End(sender As Object, e As EventArgs) Application("So_nguoi_online") -= 1 End Sub • Application_End: Xảy ra khi dừng hoạt động của WebServer Ví dụ xử lý ghi nhận thông tin Số lượt truy cập vào cơ sở dữ liệu (nếu cần) 11/20 Xây dựng và quản lý ứng dụng Web.config Cấu trúc tập tin web.config... kỳ trang nào trong ứng dụng được gọi Sub Application_Start(sender , ByVal e As EventArgs) Application("So_luot_truy_cap") = 0 Application("So_nguoi_online") = 0 End Sub • Session_Start: Xảy ra khi có một người dùng mới yêu cầu đến bất kỳ trang aspx của ứng dụng Khi Session_Start xảy ra, một giá trị duy nhất (SessionID) sẽ được tạo cho người dùng, và giá trị này được sử dụng để quản lý người dùng trong... web.config Web.config là một tập tin văn bản được sử dụng để lưu trữ thông tin cấu hình của một ứng dụng, được tự động tạo ra khi chúng ta tạo mới ứng dụng web Tập tin web.config được viết theo định dạng XML Web.config được tạo kế thừa các giá trị từ tập tin Windows\Microsoft NET\ Framework\[Framework Version]\CONFIG\machine.config Tập tin cấu hình ứng dụng Web.config:

Ngày đăng: 19/10/2016, 22:23

Từ khóa liên quan

Mục lục

  • Xây dựng và quản lý ứng dụng

  • Đối tượng Request, Response

    • Đối tượng Response

      • Phương thức Write

      • Phương thức Redirect

      • Ví dụ xử lý cho phép người dùng download file

      • Đối tượng Request

        • Thuộc tính QueryString

        • Các ví dụ minh họa

        • Đối tượng Session, Application

          • Đối tượng Application

            • Sử dụng biến Application

            • Duyệt qua tập hợp biến chứa trong Application

            • Đối tượng Session

              • Thuộc tính & Phương thức

              • Sử dụng biến toàn cục với Session

              • Đối tượng Server

              • Đối tượng Cookies

                • Giới thiệu

                • Làm việc với Cookies

                  • Thêm Cookies

                  • Lấy giá trị từ Cookies

                  • Tập tin quản lý và cấu hình ứng dụng

                    • Global.asax

                      • Cấu trúc tập tin Global.asax

                      • Các sự kiện trong tập tin Global.asax

                      • Web.config

                        • Cấu trúc tập tin web.config

                        • Các cấu hình mặc định

                        • Làm việc với tập tin web.config

                        • Tổ chức & xây dựng ứng dụng

                          • Tổ chức lưu trữ ứng dụng

                            • Màn hình giao diện

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

  • Đang cập nhật ...

Tài liệu liên quan