XÂY DỰNG CỔNG THÔNG TIN ĐIỆN TỬ MUA BÁN, RAO VẶT TRỰC TUYẾN CHO CÔNG TY TRUYỀN THÔNG VÀ GIẢI TRÍ HÒANG TRẦN – HÀ NỘI

79 495 0
XÂY DỰNG CỔNG THÔNG TIN ĐIỆN TỬ MUA BÁN, RAO VẶT TRỰC TUYẾN CHO CÔNG TY TRUYỀN THÔNG VÀ GIẢI TRÍ HÒANG TRẦN – HÀ NỘ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

MỤC LỤC MỤC LỤC LỜI NÓI ĐẦU DANH SÁCH HÌNH VẼ VÀ BẢNG BIỂU DANH SÁCH HÌNH VẼ DANH SÁCH BẢNG BIỂU CHƯƠNG 1: JAVA VÀ JSP (JAVA SERVER PAGE) 1.1 TỔNG QUAN VỀ JAVA 1.2 CƠ BẢN VỀ JAVA 1.2.1 Cấu trúc chương trình Java chuẩn 1.2.2 Các lệnh Java 1.2.2.1 Lệnh if if…else 1.2.2.2 Lệnh switch…case 1.2.2.3 Lệnh for 1.2.2.4 Lệnh while 1.2.2.5 Lệnh do…while 1.2.3 Lớp Java 1.2.4 Kế thừa Java 10 1.3 CƠ BẢN VỀ JAVA SERVER PAGE (JSP) 11 1.3.1 Cấu trúc JSP 11 1.3.2 Biên dịch trang JSP 11 1.3.3 Kịch (script) 12 1.3.4 Cấu trúc lệnh JSP .13 CHƯƠNG 2: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE 14 2.1 TỔNG QUAN VỀ ORACLE 14 2.2 CÁC CHỨC NĂNG CƠ BẢN CỦA ORACLE 14 2.3 ORACLE VÀ CÔNG NGHỆ CLIENT/SERVER 14 2.3.1 Ba ưu điểm kiến trúc công nghệ Clienr/Server so với kiến trúc công nghệ máy lớn 14 2.3.2 Ưu điểm thủ tục lưu trữ với khối lệnh PL/SQL 15 2.3.3 Chức NET8 15 2.4 CẤU TRÚC CỦA ORACLE 16 2.5 PL/SQL 16 2.5.1 Cấu trúc PL/SQL 16 2.5.2 Con trỏ (Cursor) 17 2.6 SQL*PLUS 18 2.6.1 Các cách kết thúc lệnh SQL SQL*PLUS 18 2.6.2 Thêm hàng vào đệm SQL*Plus 19 2.6.2 Biến liên kết REFCURSOR cách sử dụng 19 2.7 KẾT NỐI ORACLE VỚI JSP 20 CHƯƠNG 3:AJAX VÀ CSS .22 3.1 AJAX 22 3.1.1 Gới thiệu AJAX 22 3.1.2 HTTP Requests 23 3.1.3 Đối tượng XMLHttpRequest 23 3.1.3.1 Thuộc tính onreadystatechange 23 3.1.3.2 Thuộc tính readyState 24 3.1.3.3 Thuộc tính responseText 24 3.1.3.4 Các trình duyệt hỗ trợ 25 3.1.4 Gửi yêu cầu tới Server .26 3.1.5 Script phía Server 28 3.1.6 Kết nối với sở liệu 29 3.1.6.1 Giải thích ví dụ 29 3.1.6.2 Mã JavaScript 30 3.1.6.3 Trang JSP phía Server 31 3.2 CSS (CASCADING STYLE SHEET) .33 3.2.1 Giới thiệu CSS 33 3.2.2 Tạo chèn định nghĩa CSS .33 3.2.2.1 Định nghĩa khai báo CSS ngoại 33 3.2.2.1 Định nghĩa sử dụng CSS nội 34 3.2.2.1 Khai báo kiểu CSS trực tiếp (inline) 34 CHƯƠNG 4: XÂY DỰNG ỨNG DỤNG CỔNG THÔNG TIN ĐIỆN TỬ MUA BÁN RAO VẶT TRỰC TUYẾN 35 4.1 GIỚI THIỆU 35 4.2 PHÂN TÍCH HỆ THỐNG .35 4.2.1 Khảo sát hệ thống ban đầu 35 4.2.2 Các chức website .35 4.2.3 Biểu đồ phân cấp chức .36 4.2.4 Biểu đồ luồng liệu 36 4.2.4.1 Biểu đồ luồng liệu mức đỉnh 36 4.2.4.2 Biểu đồ luồng liệu mức đỉnh 37 4.2.4.2.1 Chức “thành viên” 37 4.2.4.2.2 Chức “đăng bài” 38 4.2.4.2.3 Chức “Hiển thị viết” 38 4.2.4.2.3 Chức “Tổng hợp gởi E-mail báo cáo” 39 4.2.5 Mô hình quan hệ .39 4.2.5 Thiết kết sở liệu .40 4.2.5 Lược đồ quan hệ bảng 43 4.3 XÂY DỰNG ỨNG DỤNG 45 4.3.1 Các thư viện cần thiết cho ứng dụng .45 4.3.2 Xây dựng lớp ứng dụng xử lý liệu cho ứng dụng 45 4.3.2.1 Lớp ConnectDB 45 4.3.2.2 Lớp SmtpGmail 47 4.3.2.2 Các lớp khác 48 4.3.3 Xây dựng trang nội dung JSP .48 4.3.3.1 Sử dụng JavaScript áp dụng AJAX vào website 49 4.3.3.2 Sử dụng Cascading Style Sheet (CSS) 50 4.3.4 Thiết kế trang JSP .51 4.3.4.1 Modul đăng ký quản lý thành viên 51 4.3.4.2 Modul đăng 64 4.3.4.3 Modul gửi báo cáo tổng kết đến tất thành viên 71 KẾT LUẬN .77 TÀI LIỆU THAM KHẢO 78 LỜI NÓI ĐẦU Web công nghệ Internet cho phép hiển thị thông tin cách sinh động, gần gũi với người trang thông tin gọi trang Web Trang Web trình bày trình duyệt Web (Browser) máy Client Trang Web file dạng Text cấu trúc hoá theo ngôn ngữ HTML Hiện tương lai Internet phổ biến ngày có nhiều người dùng Internet áp dụng vào tất lĩnh vực sống Nhưng bật lĩnh vực giải trí đa phương tiện thương mại điện tử Vì em định xây dựng đồ án ứng dụng “Cổng thông tin điện tử trực tuyến cho Công ty Truyền thông Giải trí Hoàng Trần” Đồ án tập chung giới thiệu cách tổng quan để xây dựng ứng dụng Trong đồ án đưa thư viện chức tổng quát cốt lõi Hiện có nhiều website có chức tính tương tự.Các Website hoạt động hiệu đem lại nguồn thu lớn cho công ty cá nhân Website mà xây dựng thành em tiến hành thực tập (làm việc) công ty Truyền thông Giải trí Hoàng Trần Hà Nội Website đặt tên miền www.daoquanhthitruong.com Khi thực website em có sử dụng công cụ để thiết kế viết mã website Các công cụ gồm: Netbean5.5, JBuilder X, Macromedia Dreamweaver 8, Photoshop CS2,… Ngoài em có sử dụng số thư viện có sẵn để phục vụ chức upload, gửi mail,… Trong tương lai em công ty tiếp tục phát triển nâng cấp chức có sẵn xây dựng website hoạt động hiệu phong phú Khi thực đồ án em thực tập (làm việc) công ty Truyền Thông Giải Trí Hoàng Trần Hà Nội Nên em giúp đỡ nhiều từ thầy cô khoa, đồng nghiệp công ty Truyền thông Giải trí Hoàng Trần Hà Nội Đặc biệt Thầy giáo Phùng Trung Nghĩa môn Điện tử - Viễn thông giúp đỡ định hướng em toàn thời gian thực tập xây dựng đồ án Ngoài có anh Hoàng Đình Quy, phó giám đốc công ty Truyền thông Giải trí Hoàng trần tận tình hướng dẫn kỹ thuật cho em em xây dựng website “Cổng thông tin điện tử mua bán rao vặt cho công ty Truyền thông Giải trí Hoàng Trần” Sau em xin chân thành cảm ơn toàn thể thầy cô, bạn đồng nghiệp công ty bạn xinh viên giúp đỡ góp ý kiến cho cho em hoàn thành đồ án website trình bày DANH SÁCH HÌNH VẼ VÀ BẢNG BIỂU DANH SÁCH HÌNH VẼ TÊN HÌNH MÔ TẢ TRANG 1.1 Mô hình kế thừa Java 11 1.2 Quy trình biên dịch trang JSP 13 3.1 Mô hình hoạt động AJAX 23 3.2 Kết nối với sở liệu với AJAX 30 4.1 Biểu đồ phân cấp chức ứng dụng 38 4.2 Biểu đồ luồng liệu mức đỉnh 39 4.3 4.4 4.5 4.6 Biểu đồ luồng liệu mức đỉnh chức “thành viên” Biểu đồ luồng liệu mức đỉnh chức “đăng bài” Biểu đồ luồng liệu mức đỉnh chức “Hiển thị” Biểu đồ luồng liệu mức đỉnh chức “Tổng hợp gửi Email báo cáo ” 39 40 40 41 4.7 Mô hình quan hệ thành viên - viết 41 4.8 Mô hình quan hệ thành Quốc Gia - Tỉnh -Thành viên 41 4.9 Mô hình quan hệ Loại viết – Bài viết 42 4.10 Mô hình quan hệ thực thể ứng dụng 42 4.11 Lư ợc đồ quan hệ liệu 46 4.12 Giao diện ứng dụng 50 4.13 Trang quản lý thông tin thành viên 61 4.14 Trang đăng 66 4.15 Kết gửi E-mail 78 DANH SÁCH BẢNG BIỂU TÊN BẢNG MÔ TẢ TRANG 3.1 Thuộc tính readyState 25 4.1 Bảng liệu quản lý thành viên 42 4.2 Bảng liệu quản lý tỉnh 43 4.3 Bảng liệu quản lý quốc gia 43 4.4 Bảng liệu quản lý loại viết 43 4.5 Bảng liệu quản lý viết qua tổng đài 1900555508 43 4.6 Bảng liệu quản lý viết 44 4.7 Bảng liệu quản lý viết qua tổng đài 1900555508 45 CHƯƠNG 1: JAVA VÀ JSP (Java Server Page) 1.1 TỔNG QUAN VỀ JAVA Java phát triển vào năm 1995 Sun Microsystem Ban đầu Java thiết kế để sử dụng cho thiết bị có phần cứng giới hạn thiết bị điện tử dân dụng, thiết bị điện tử điện lạnh, … Nhưng người ta ta thấy sức mạnh phát triển để làm nhiều thứ khác ngày Ngày Java ứng cử viên lớn cho cho việc phát triển ứng dụng dành cho thiết bị có phần cứng hạn chế đặc biệt ứng dụng cho thiết bị di động Không Java sử dụng để xây dựng ứng dụng mạng Internet hệ thống Client-Server hay Website, … 1.2 CƠ BẢN VỀ JAVA Java ngôn ngữ lập trình hướng đối tượng Nó thiết kế thừa kế ưu điểm ngôn ngữ phát triển trước là: Pascal, C\C++, … Ưu điểm vượt trội Java so với C++ ngôn ngữ nhỏ gọn thư viện thiết kế thành gói (pagket) Nếu cần sử dụng gói việc nhập (import) Java ngôn ngữ đơn thừa kế nên tránh số hậu chết người nhầm lẫn, không kiểm soát người lập trình Tiếp theo kiến thức Java 1.2.1 Cấu trúc chương trình Java chuẩn Để mô cấu trúc chương trình Java chuẩn giống với bao ngôn ngữ lập trình khác chương trình Hello World Và chương trình Hello World kinh điển //File name HelloWorld.java class HelloWorld{ public static void main(String[] args){ System.out.println(“Hello World”); } } Hãy ghi file với tên HelloWorld.java sử dụng trình JDK để biên dịch chạy chương trình Kết chương trình in hình dòng chữ: Hello World 1.2.2 Các lệnh Java Về cấu trúc lệnh Java giống với C++ Dưới chi tiết cấu trúc các sử dụng lệnh Java 1.2.2.1 Lệnh if if…else Lệnh if lệnh rẽ nhánh với điều kiện cho Cấu trúc sau: if(điều kiện rẽ nhánh){ //các câu lệnh xử lý liệu } Ví dụ: if(i==10){ System.out.println(“Mười”); } Lệnh if…else lệnh rẽ nhánh giống if Nhưng điều kiện rẽ nhánh sai chương trình thự c câu lệnh phát biểu else Ví dụ: if(i==10){ System.out.println(“Mười”); }else{ System.out.println(“Không phải Mười”); } 1.2.2.2 Lệnh switch…case Lệnh lệnh rẽ nhánh Cấu trúc lệnh sau: switch(điều kiện rẽ nhánh){ case trường hợp 1: //Các câu lệnh xử lý liệu break; case trường hợp 2: //các câu lệnh xử lý liệu break; … default: //Các câu lệnh xử lý liệu break; } Lệnh thực kiểm tra điều kiện Nếu điều kiện trường hợp thực câu lệnh tương ứng với trường hợp Tương tự cho trường hợp Nếu trường hợp trùng với trường hợp đưa lệch thực câu lệnh trường hợp default Ví dụ: switch(so){ case 1: System.out.println(“Một”); break; case 2: System.out.println(“Hai”); break; default: System.out.println(“Rất nhiều”); break; } 1.2.2.3 Lệnh for Đây lệnh lặp sử dụng biết trước số lần lặp Cấu trúc lệnh sau: for(biến chạy; điều kiện dừng; tăng biến chạy){ //Các câu lệnh xử lý liệu } Ví dụ: for(int i=0; i Sau thực đăng quảng cáo xong trang chuyển hướng trang chủ Cần ý rằng, để đăng bạn phải đăng nhập vào hệ thống (nghĩa bạn phải đăng ký tài khoản sử dụng) Trong modul có nhiều trang thưc việc lấy hiển thị danh sách chi tiết tin theo chủ để phân Các trang 70 lưu thư mục Article phân chi tiết theo nội dung là: điện thoại, chứng khoán, việc làm,… 4.3.4.3 Modul gửi báo cáo tổng kết đến tất thành viên Ý tưởng chung của modul thiết kết luồng chạy độc lập liên tục Kèm theo định thời gian để thực thi công việc Modul thiết kế độc lập đóng gói trong gói vd.automail Trong modul có sử dụng lớp SmtpGmail Lớp GetMailList thiết kết để lấy danh sách E-mail thành viên sở liệu đồng thời tổng kết xem có đăng thời gian định Mặc định tuần Nội dung lớp sau: package vd.automail; import java.sql.*; public class GetMailList { public GetMailList() { } public int counter(){ ConnectDB condb = new ConnectDB(); String sql = "Select count(*) from users"; int num = 0; try{ Connection conn= condb.getConnectDB(); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(sql); if(rs.next()) num = rs.getInt(1); rs.close(); stmt.close(); condb.close_cn(conn); }catch(SQLException e){} return num; } public String[] getMail(){ String[] mails = new String[this.counter()]; ConnectDB condb = new ConnectDB(); 71 String sql = "Select USER_EMAIL from users"; int num = 0; try{ Connection conn= condb.getConnectDB(); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(sql); while(rs.next()){ mails[num] = rs.getString(1); num++; } rs.close(); stmt.close(); condb.close_cn(conn); }catch(SQLException e){} return mails; } public int newsCounter(){ ConnectDB condb = new ConnectDB(); String sql = "Select count(*) from article where (sysdate-date_post)[...]... cáo, rao vặt, nua bán, … cho công ty TNHH Truyền thông và Giải trí Hoàng Trần Website này có tên miền là www.daoquanhthitruong.com Đây là một trang quảng cáo trực tuyến trên mạng Nó sẽ là nơi đăng các tin mua bán, rao vặt về tất cả các lĩnh vực trong cuộc sống 4.2 PHÂN TÍCH HỆ THỐNG 4.2.1 Khảo sát hệ thống ban đầu Công ty truyền thông và giải trí Hoàng Trần chuyên hoạt động trong lĩnh vực giải trí truyền. .. 2.6.2 Thêm một hàng mới vào bộ đệm của SQL*Plus Để chèn một hàng mới vào hàng hiện hành, sử dụng lệnh INPUT Để chèn một hàng trước hàng 1, nhập vào số không (“0”) và theo sau là chuỗi text SQL*Plus chèn hàng vào đầu buffer và hàng này trở thành hàng 1 SQL>0 SELECT EMPNO Giả sử bạn muốn thêm một hàng thứ 4 vào lệnh SQL bạn đã sử dụng ở ví dụ trước Do hàng thứ 3 là hàng hiện hành, nhập vào INPUT (có thể... lĩnh vực giải trí truyền thông đa phương tiện Công ty có kết nối Internet và có hệ thống cơ sở máy chủ cơ sở dữ liệu Oracle riêng Để phục vụ mục đích kinh doanh thương mại điện tử công ty đã quyết định xây dựng website www.daoquanhthitruong.com để phục vụ mục đích quảng cáo, rao vặt trực tuyến 4.2.2 Các chức năng của website Website được xây dựng với mục đích quảng cáo và rao vặt nên có cấu trúc khá... dụng cho những định dạng đặc trưng cho phép chồng lên phần định dạng CSS đã khai báo trước đó 34 CHƯƠNG 4: XÂY DỰNG ỨNG DỤNG CỔNG THÔNG TIN ĐIỆN TỬ MUA BÁN RAO VẶT TRỰC TUYẾN 4.1 GIỚI THIỆU Trong quá trình học tập tại khoa và đi thực tập em đã học được rất nhiếu kiến thức Đặc biệt là khi đi thực tập em đã học hỏi được các kiến thức trong thực tế về việc phát triển web Cho nên em đã quyết định xây dựng. .. viết tắt là I) và nhấn Enter SQL*Plus nhắc bạn hàng mới: SQL>INPUT 4 Nhập vào hàng mới rồi nhấn Enter SQL*Plus lại nhắc bạn lẫn nữa với hàng mới: 4 ORDER BY SAL 5 Nhấn Enter lần nữa để chỉ định rằng bạn không nhập vào thêm hàng nào nữa, và sau đó sử dụng RUN để kiểm tra và chạy lại truy vấn 2.6.2 Biến liên kết REFCURSOR và cách sử dụng Các biến liên kết REFCURSOR của SQL*Plus cho phép điền và định dạng... giữa client và server Máy client có trách nhiệm điều khiển giao diện người dùng- hiển thị các thông tin, hợp lệ hóa đầu vào và cung cấp sự phản hồi (feedback) hợp lýtrong khi máy server được dùng như một server cơ sở dữ liệu  Nó độc lập với thủ tục mạng, hệ điều hành ở máy server và hệ điều hành ở máy client Sự độc lập này cho ta sự linh động lớn trong việc lựa chọn các thành phần phần cứng và phần mềm... truyền thống, nếu bạn muốn lấy bất cư thông tin gì từ cơ sở dữ liệu hoặc một file trên server, hoặc gửi thông tin người sử dụng tới server, bạn sẽ phải tạo lên một form HTML và POST hay GET dữ liệu lên server Người dùng sẽ nhấn vào nút “Submit” để gửi/nhận thông tin Chờ cho server phản hồi rồi một trang mới sẽ được tải với các kết quả Bởi vì server trả lại một trang mới vào mỗi thời điểm mà người dùng submit... (/) và nhấn Enter một lần nữa, SQL*Plus sẽ thực hiện lệnh đồng thời đưa nó vào SQL buffer Một hàng trống báo cho SQL*Plus biết rằng chúng ta đã chấm dứt đưa lệnh vào, nhưng chưa muốn chạy nó Khi nhấn Enter ở hàng cuối cùng, SQL*Plus sẽ nhắc chúng ta bằng một hàng tiếp theo có đánh số Nhấn Enter một lần nữa, SQL*Plus sẽ hiện trở lại dấu nhắc lệnh Lệnh bạn vừa gõ vào không được thực hiện mà chỉ đưa vào... làm cho các trang tài liệ đồng nhất và dễ quản lý hơn 3.2.2 Tạo và chèn các định nghĩa CSS Tài liệu HTML cho phép chúng ta tham chiếu đến các định nghĩa CSS ngoại (external) nằm trong một file riêng biệt hoặc tham chiếu đến các định nghĩa CSS nội (internal) đặt trực tiếp trong file tài liệu HTML Ngoài ra bạn cũng có thể sử dụng định nghĩa CSS trực tiếp ngay tại nơi định dạng của văn bản (inline style)... có sẵn và sẵn sàng thực hiện, nhu cầu phân tích cú pháp và biên dịch PL/SQL lúc thực thi (runtime) được giảm nhẹ 2.3.3 Chức năng của NET8 Net8 là một phần mềm kết nối cơ sở dữ liệu dùng để cung cấp các thông tin cơ sở dữ liệu xác thực, tối ưu trên mọi thủ tục mạng thông dụng Net8 được thiết kế để cung cấp tính trong suốt của server cho bất kỳ nút nào bên trong một ứng dụng mạng và sử dụng các thành phần

Ngày đăng: 03/08/2016, 09:02

Từ khóa liên quan

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

Tài liệu liên quan