1. Trang chủ
  2. » Luận Văn - Báo Cáo

Lập trình cơ bản về Web JSPOracle

118 718 2

Đ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

Thông tin cơ bản

Định dạng
Số trang 118
Dung lượng 3,78 MB

Nội dung

ĐHTG JSP MỤC LỤC I Giới thiệu: .3 Servlet gì? Ưu điểm servlet: Môi trường thực servlet: i Mô tơ Servlet đơn: ii Mô tơ Servlet gộp: iii Mô tơ Servlet nhúng: 10 Kiến trúc Servlet: .10 a Giao diện Servlet: 11 ii Lớp sở HttpServlet: 12 Vòng đời servlet: 15 a Khởi động Servlet: .18 ii Tương tác với Client: 18 iii Huỷ bỏ Servlet: 19 II Cài đặt Tomcat Web Server: .20 Download Tomcat: 20 Khai báo Tomcat vào Eclipse: 21 III Tạo Web Project bắt đầu với Servlet: 24 Cấu hình Eclipse để chạy Web Tomcat: 27 Một sô class tham gia vào ví dụ: 31 Tạo Servlet bạn: 33 Tham số tạo Servlet: .41 Cấu hình Servlet sử dụng Annotaion: 45 Servlet Url Pattern: 48 Lấy thông tin Servlet: 53 Forward (Chuyển tiếp): 58 Đoàn Trần Nghiệp Page | ĐHTG JSP Redirect (Chuyển hướng): 62 10 Phiên làm việc (Session): 66 IV Hướng dẫn lập trình với JSP: 71 Tạo Project với JSP: 71 Cấu hình Web Server Tomcat chạy ứng dụng: 78 Mối quan hệ JSP Servlet: 83 Các ví dụ với JSP: 84 a Một số biến sẵn có JSP: .84 ii Mã Java bên HTML (Jsp) 84 iii Đinh nghĩa menthod JSP sử dụng : .87 Các thị JSP (JSP Directive): .88 a JSP Directive : 88 ii JSP Derective 92 JSP Standard Actions: .95 a JSP Action jsp:include 96 ii JSP Action jsp:useBean .98 iii JSP Action jsp:element-jsp:attribute-jsp:body: .100 Ngôn ngữ biểu thức JSP (JSP Expression Language): 104 Sử lý Form: 106 a Get method: 110 ii Post method: 111 iii Sử lý form: .112 Sử lý cookie: 113 Đoàn Trần Nghiệp Page | ĐHTG I JSP Giới thiệu: Servlet gì? Hiện nay, lập trình có xu hướng quan trọng tập trung phát triển ứng dụng, xây dựng chương trình dịch vụ Java phía máy chủ (Server) Servlet thành phần sử dụng để phát triển chương trình dịch vụ Java phía máy chủ Các Servlet chương trình Java thực ứng dụng Server (tên gọi “Servlet” gần giống “Applet” phía máy Client) để trả lời cho yêu cầu Client Các Servlet không bị ràng buộc chặt với giao thức Client-Server cụ thể cả, giao thức thường sử dụng HTTP, vậy, nói tới Servlet nghĩa nói tới HTTP Servlet Servlet phát triển mở rộng CGI để đảm bảo Server thực chức Ta sử dụng Servlet Java để tuỳ chỉnh lại dịch vụ bất kỳ, Web Server, Mail Server, v.v Web Server hiển thị tư liệu viết HTML hồi đáp cho yêu cầu người sử dụng qua HTTP Các tư liệu HTML chứa văn đánh dấu (định dạng) để trình duyệt IE, Netscape đọc Một trình duyệt chấp nhận đầu vào dạng HTML, người sử dụng nhấn nút để yêu cầu số thông tin đó, Servlet đơn giản gọi để xử lý yêu cầu Các công việc Servlet mô tả khái quát hình, bao gồm:  Đọc liệu tường minh Client gửi đến từ yêu cầu (dữ liệu theo khuôn dạng – form data)  Đọc liệu không tường minh Client gửi đến từ yêu cầu (dữ liệu phần đầu yêu cầu – request headers)  Xử lý lưu trữ liệu cung cấp dạng HTML Đoàn Trần Nghiệp Page | ĐHTG JSP  Gửi trả lời liệu tường minh cho Client (dạng HTML), cung cấp nội dung động, ví dụ trả lời yêu cầu Client câu truy vấn vào CSDL  Quản lý thông tin trạng thái trả lời liệu không tường minh cho Client (các mã trạng thái phần đầu trả lời) JDBC Client Servlet JNI RMI HTTP Servlet CSDL Chương trình ứng dụng Chương trình Java XML Chương trình B2B Web Server Viết Servlet tương đối dễ Ta cần có Tomcat, tổ hợp Java Server Pages Servlets Tomcat nạp miễn phí, phần cài đặt mô tả phần sau Các Servlet sử dụng thay cho kịch giao diện cổng chung CGI Script Khi tạo trang Web, ta tạo ứng dụng Web Trước sử dụng Servlet để tạo ứng dụng Web, tìm hiểu xem có khả lựa chọn khác để phát triển ứng dụng Web  CGI: Theo cách thông thường, để bổ sung chức vào cho Web Server người ta hay sử dụng Common Gateway Interface (CGI), giao diện độc lập với ngôn ngữ cho phép Server khởi động tiến trình ngoại để nhận thông tin yêu cầu thông qua biến môi trường Mỗi yêu cầu trả lời tiến trình riêng Đoàn Trần Nghiệp Page | ĐHTG JSP thông qua đại diện riêng chương trình CGI kịch CGI (thường viết ngôn ngữ thông dịch Perl)  Fast CGI: Open Marked phát triển chuẩn khác thay cho CGI gọi Fast CGI Fast CGI hành động giống CGI Nó khác chỗ, Fast CGI tạo tiến trình bền vững cho chương trình  Một số chương trình ứng dụng khác ASP Java Script hỗ trợ để tạo ứng dụng Web ASP Microsoft phát triển để tạo nội dung cho trang Web động Trong ASP, trang HTML nhúng phần nhỏ viết VBScript JScript Netscape đưa kỹ thuật gọi JavaScript, cho phép đưa phần mã lệnh nhỏ nhúng vào trang HMTL, nhằm tạo nội dung Web động cách linh họat Ngoài ra, Netscape cung cấp NSAPI, Microsoft đưa ISAPI cho Web Server họ Servlet có số ưu điểm so với CGI: • Một Servlet không làm việc tiến trình riêng Điều loại bỏ việc phải tạo nhiều tiến trình cho yêu cầu • Một Servlet thường trực nhớ yêu cầu, chương trình CGI cần phải tải xuống khởi động cho yêu cầu CGI • Chỉ cần Servlet trả lời đồng thời cho tất yêu cầu Điều cho phép tiết kiệm nhớ đảm bảo dễ dàng quản lý liệu cách thống • Một Servlet thực Servlet Engine phạm vi kiểm soát Sandbox để đảm bảo an toàn việc sử dụng Servlet Các lớp Servlet Java nạp tự động để mở rộng chức Server Các Servlet Java thực bên JVM Chúng đảm bảo an toàn chuyển đổi tương thích hệ điều hành Đoàn Trần Nghiệp Page | ĐHTG JSP Server với Điều khác với Applet, Servlet thao tác miền Server Servlet API phát triển dựa điểm mạnh Java platform nhằm giải vấn đề CGI Server API Nó API đơn giản, hỗ trợ tất Web server chí cho phép ứng dụng máy chủ dùng để kiểm tra quản lý công việc Server Nó giải vấn đề thực thi việc thực tất yêu cầu luồng Thread trình xử lý, việc cân tải Server cụm máy tính Cluster Các Servlet dễ dàng chia sẻ tài nguyên với Trong định nghĩa Servlet, vấn đề bảo mật cải tiến theo nhiều cách Trước hết, bạn thực thi câu lệnh Shell với liệu cung cấp người dùng mà Java API cung cấp với khả truy cập đến tất hàm thông dụng Bạn sử dụng Java Mail để đọc gửi mail, kết nối vào CSDL (thông qua JDBC), tệp lớp (.class) lớp liên quan để truy cập hệ thống tệp, CSDL, RMI, CORBA, Enterprise Java Beans (EJB), … Java Servlets chương trình chạy Web ứng dụng máy chủ hành động lớp trung gian yêu cầu đến từ trình duyệt Web HTTP khách khác sở liệu ứng dụng máy chủ HTTP Sử dụng Servlets, bạn thu thập đầu vào từ người dùng thông qua hình thức trang web, từ sở liệu nguồn khác, tạo trang web động Đoàn Trần Nghiệp Page | ĐHTG JSP Ưu điểm servlet: Servlet sử dụng để thay cho công nghệ Web động Việc sử dụng Servlet mang lại lợi thế:  Dễ di chuyển Servlet viết Java nên có tính di động cao, thực nhiều hệ điều hành, Web Server khác Khái niệm “Viết lần, chạy nơi” với Servlet  Mạnh mẽ Servlet hỗ trợ hiệu cho việc sử dụng giao diện lõi API lập trình mạng, xử lý đa luồng, xử lý ảnh, nén liệu, kết nối CSDL, bảo mật, xử lý phân tán triệu gọi từ xa RMI, CORBA, v.v Nó thích hợp để trao đổi tin, truyền thông Client Server cách bình thường Đoàn Trần Nghiệp Page | ĐHTG JSP  Hiệu Servlet có tính hiệu cao Một tải về, lưu lại nhớ máy chủ Servlet trì trạng thái nó, tài nguyên ngoại việc kết nối với CSDL lưu giữ lại  An toàn Bởi Servlet viết Java nên kế thừa tính an toàn Java Cơ chế tự động dọn rác việc không sử dụng trỏ Java giúp cho Servlet thoát khỏi nhiều công việc quản lý nhớ Đồng thời xử lý lỗi an toàn theo chế xử lý ngoại lệ Java  Tính tích hợp Các Servlet tích hợp với Server Chúng cộng tác với Server tốt chương trình CGI  Tính linh hoạt Các Servlet hoàn toàn mềm dẻo Một HTTP Servlet sử dụng để tạo trang Web, sau ta sử dụng thẻ để đưa vào trang Web tĩnh, sử dụng với Servlet khác để lọc nội dung cần thiết Môi trường thực servlet: Các Servlet thường mở rộng (kế thừa) lớp chuẩn Java gói javax.servlet (chứa khuôn mẫu Servlet) javax.servlet.http (mở rộng khuôn mẫu Servlet yêu cầu theo HTTP) Servlet lớp Java cần thực thi máy ảo Java (JVM) dịch vụ gọi mô tơ Servlet (Servlet Engine) Servlet Engine tải lớp Servlet lần yêu cầu, Servlet Engine bắt đầu Servlet ngừng tải để xử lý nhiều yêu cầu Servlet Engine bị tắt bị dừng lại Như vậy, để dịch thực Servlet, việc có Servlet chưa đủ, mà cần phải có mô tơ Servlet để kiểm tra triển khai chúng Hiện Đoàn Trần Nghiệp Page | ĐHTG JSP số mô tơ tương thích với nhiều loại Web Server khác nhau, nguyên lý hành động tương đối giống Người ta chia chúng thành ba loại  Mô tơ Servlet đơn  Mô tơ Servlet gộp  Mô tơ Servlet nhúng i Mô tơ Servlet đơn: Đây loại Server xây dựng để hỗ trợ cho Servlet Ưu điểm thứ làm việc với hộp kết đầu phong phú Tuy nhiên, có nhược điểm ta phải chờ phiên Web Server để nhận hỗ trợ cho Servlet Hiện có loại mô tơ đơn sau:  Java Server Web Development (JSWDK) Sun Microsystem: viết hoàn toàn Java Nó sử dụng Server độc lập để kiểm tra Servlet trang JSP trước phát triển thành Web Server thực  Jagsaw Server WWW Consortium, viết Java Chi tiết hơn, xem http://www.w3.org/Jigsaw  Netscape Enterprise Server Đây Web Server tiếng, hỗ trợ để xây dựng Servlet  Lotus Domino Go WebServer Một loại Web Server khác hỗ trợ để xây dựng Servlet ii Mô tơ Servlet gộp: Servlet gộp loại mô tơ viết cho nhiều loại Server khác nhau, kể Apache, Fast Track Server, Enterprise Server Netscape, Personal Web Server, v.v Hiện có loại sau:  Apache Tomcat: Mô tơ hỗ trợ thêm cho Apache Nó sử dụng Server độc lập để kiểm tra Servlet trang JSP, tích hợp vào Apache Web Server Đoàn Trần Nghiệp Page | ĐHTG JSP  Jrun Live Software: Jrun mô tơ cho Servlet JSP, hỗ trợ đầy đủ Servlet API Web Server phổ biến hệ điều hành  WebSphere Application Server IBM: gọi ServletExpress  ServletExec New Atlanta: ServletExec mô tơ cho Servlet JSP, hỗ trợ đầy đủ Servlet API Web Server phổ biến hệ điều hành iii Mô tơ Servlet nhúng: Loại mô tơ nhúng vào phần mềm ứng dụng khác Hiện có loại sau:  Java Server Engine Sun Đây loại mô tơ viết hoàn toàn Java Web Server hỗ trợ đầy đủ cho đặc tả Servlet JSP  Nexus Web Server Anders Kristensen Nó dễ dàng nhúng vào chương trình ứng dụng Java Kiến trúc Servlet: Gói javax.servlet cung cấp giao diện lớp để xây dựng Servlet Kiến trúc chúng mô tả sau Servlet GenericServlet HttpServlet MyServlet Đoàn Trần Nghiệp Page | 10 ĐHTG JSP Hãy xem code JSP trường hợp không sử dụng thẻ jsp:element/attribute/body Please view source of this page Ngôn ngữ biểu thức JSP (JSP Expression Language): JSP Expression Language (EL) làm cho dễ dàng truy cập vào liệu ứng dụng lưu trữ thành phần Đoàn Trần Nghiệp Page | 104 ĐHTG JSP JavaBeans.JSP EL cho phép bạn tạo biểu thức (a) số học (b) logic Trong biểu thức JSP EL, bạn sử dụng số nguyên, số dấu chấm động, String, số tích hợp, true false cho giá trị boolean, null JSP EL đưa vào JSP từ phiên 2.0 Nó cách để thay việc sử dụng thẻ biểu thức Bạn nên sử dụng JSP EL thay sử dụng thẻ biểu thức ( JSP Expression Tag) đâu trang JSP Cú pháp: ${expression} Hãy xem số ví dụ: jspELDemo.jsp Đoàn Trần Nghiệp Page | 105 ĐHTG JSP JSP Expression Language Demo Emp No: Emp Name Kết chạy: • http://localhost:8080/JspTutorial/demo/jspELDemo.jsp Sử lý Form: Sử lý Form việc quan trọng ứng dụng web.Tại có file tham gia vào ví dụ này: • formHtml.html Đoàn Trần Nghiệp Page | 106 ĐHTG JSP • formProcessing.jsp Chú ý: Đây ví dụ mang tính minh họa, thực tế bạn nên sử lý Form Servlet thay JSP Nên coi JSP đơn cách hiển thị nội dung Người dùng nhập thông tin vào form formHtml.html gửi liệu nhập sang formProcessing.jsp Đoàn Trần Nghiệp Page | 107 ĐHTG JSP formHtml.html Html Form User Register User Name: Password : First Name: Đoàn Trần Nghiệp Page | 108 ĐHTG JSP Last Name: Gender: Male Female Address: formProcessing.jsp Form Processing Parameter values: User Name: Password: First Name: Last Name: Gender: Address: a Get method: Nhìn code file formHtml.html thấy thuộc tính method form GET Chạy URL: Đoàn Trần Nghiệp Page | 110 ĐHTG JSP • http://localhost:8080/JspTutorial/demo/formHtml.html Sau nhập liệu form nhấn Submit, trình duyệt chuyển tới trang formProcessing.jsp với địa URL có thêm tham số gắn lên, kết việc form sử dụng method GET • http://localhost:8080/JspTutorial/demo/formProcessing.jsp? userName=smith&password=1234&firstName=alan&lastName=smit h&gender=M&address=address1&address=address2&address= ii Post method: Trường hợp bạn sửa lại thuộc tính method = "POST" : Chạy URL: • http://localhost:8080/JspTutorial/demo/formHtml.html Đoàn Trần Nghiệp Page | 111 ĐHTG JSP Nhập liệu nhấn Sumit Trình duyệt chuyến sang trang formProcessing.jsp không bao gồm tham số gắn URL, liệu gửi ngầm sang trang formProcessing.jsp • http://localhost:8080/JspTutorial/demo/formProcessing.jsp iii Sử lý form: formProcessing.jsp lấy liệu gửi đến thông qua getParameter( ), liệu gắn URL (theo phương thức GET), gửi kèm thân request (theo phương thức POST) // Lấy giá trị tham số userName String userName = request.getParameter("userName"); // Lấy danh sách giá trị tham số address String[] addresses = request.getParameterValues("address"); Sau người dùng nhập liệu nhấn Submit: Đoàn Trần Nghiệp Page | 112 ĐHTG JSP Sử lý cookie: Cookie file text ghi lại máy tính người dùng họ vào website chúng sử dụng cho mục đích theo dõi (Tracking) JSP hỗ trợ HTTP cookie, sử dụng công nghệ servlet Đoàn Trần Nghiệp Page | 113 ĐHTG JSP CookieUtils.java package org.o7planning.tutorial.jsp.utils; import java.io.IOException; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; Đoàn Trần Nghiệp Page | 114 ĐHTG JSP import javax.servlet.jsp.JspWriter; public class CookieUtils { public static void demoUserCookie(HttpServletRequest request, HttpServletResponse response, JspWriter out) throws IOException { boolean found = false; // Danh sách cookies website lưu vào máy tính người dùng Cookie[] cookies = request.getCookies(); if (cookies != null && cookies.length > 0) { String userName = null; String lastLoginDatetime = null; out.println("Cookies:"); for (int i = 0; i < cookies.length; i++) { out.println(cookies[i].getName() + " : "+ cookies[i].getValue() + ""); if (cookies[i].getName().equals("userName")) { userName = cookies[i].getValue(); } else if (cookies[i].getName().equals("lastLoginDatetime")) { lastLoginDatetime = cookies[i].getValue(); } } if (userName != null) { found = true; out.println("Last login info:"); out.println("User Name: " + userName + ""); out.println("Last Login Datetime: " + lastLoginDatetime+ Đoàn Trần Nghiệp Page | 115 ĐHTG JSP ""); } } if (!found) { out.println("No cookies founds!, write some cookies into client computer"); // Ghi vài thông tin Cookie vào máy tính người dùng // Chẳng hạn userName họ login // Đây cách nhớ user login // Mô ghi Cookie vào máy tính người dùng sau họ vừa login String userName = "someUserName"; Cookie cookieUserName = new Cookie("userName", userName); DateFormat df = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); Date now = new Date(); String lastLoginDatetime = df.format(now); Cookie cookieLoginDatetime = new Cookie("lastLoginDatetime", lastLoginDatetime); // Sét đặt thời gian sống Cookie 24h (Đã đổi giây) cookieUserName.setMaxAge(24 * 60 * 60); // Sét đặt thời gian sống Cookie 24h (Đã đổi giây) cookieLoginDatetime.setMaxAge(24 * 60 * 60); // Ghi vào máy tính người dùng response.addCookie(cookieUserName); // Ghi vào máy tính người dùng response.addCookie(cookieLoginDatetime); Đoàn Trần Nghiệp Page | 116 ĐHTG JSP } } } cookieDemo.jsp Cookie Demo Try again!! Trong lần chạy đầu tiên: • http://localhost:8080/JspTutorial/demo/cookieDemo.jsp Đoàn Trần Nghiệp Page | 117 ĐHTG JSP Lần chạy thứ (Sau Cookie bạn ghi vào máy người dùng lần 1) Đoàn Trần Nghiệp Page | 118 [...]... trong web. xml để trả về Ghi chú: /ServletTutorial được gọi là Context-Path, mỗi website đều có Context-Path, bạn có thể cấu hình cho nó một giá trị khác, hoặc để rỗng Trong trường hợp rỗng bạn có thể truy cập vào web của bạn theo cách: • http://localhost:8080 • http://localhost:8080/index.html Khi chạy với Tomcat mặc đinh nó lấy trên Porject làm coContext-Prath Khi lập trình bạn không phải lo lắng gì về. .. Nghiệp Page | 29 ĐHTG JSP Website chạy trên trình duyệt của Eclipse Nguyên tắc hoạt động: Khi bạn nhập vào đường dẫn: • http://localhost:8080/ServletTutorial/index.html Thì website sẽ trả về nội dung trang index.html, điều này hoàn toàn dễ hiểu Tuy nhiên, nếu bạn nhập vào đường dẫn: • http://localhost:8080/ServletTutorial/ Điều đó có nghĩa là bạn không chỉ định rõ trang nào, webserver sẽ tìm trang mặc... dữ liệu kết quả cho Client để trả lời cho yêu cầu đó Với CGI, các biến môi trường và stdin được sử dụng để nhận thông tin về yêu cầu, tuy nhiên việc đặt tên các biến môi trường có thể khác nhau giữa các chương trình CGI, và một vài biến có thể không được cung cấp bởi tất cả các Web Server Đối tượng HttpServletRequest cũng cung cấp thông tin giống như biến môi trường của CGI nhưng theo một hướng chuẩn... cho hai phương thức trên 5 Vòng đời của servlet: Mọi Servlet đều có chu trình sống như sau: • Server nạp và khởi tạo Servlet • Servlet xử lý các yêu cầu của các Client • Server huỷ bỏ Servlet khi không còn cần thiết Nạp về Server Mã Servlet Client Server Mã Servlet Server Xử lý yêu cầu Client Mã Servlet Huỷ bỏ Hình dưới đây minh họa về vòng đời của một Servlet Từ khi nó được tạo ra, sử lý các đòi hỏi... cho nó, init() được gọi duy nhất 1 lần Phương thức Đoàn Trần Nghiệp Page | 17 ĐHTG JSP destroy() dùng để hủy servlet, nó sẽ được gọi một lần duy nhất khi gỡ bỏ triển khai (undeloy) ứng dụng web hoặc tắt (shutdown) web server a Khởi động Servlet: Việc khởi động một Servlet được thực hiện mặc định bởi HttpServlet Để khởi động một Servlet riêng, ta phải viết đè phương thức init() public class MyServlet... Tomcat Web Server: 1 Download Tomcat: Chuyển tới URL: • http://tomcat.apache.org/download-80.cgi Và download file zip như hình minh họa dưới đây Giải nén Tomcat ra một thư mục nào đó tại ổ cứng, chẳng hạn • D:/DevPrograms Đoàn Trần Nghiệp Page | 20 ĐHTG JSP 2 Khai báo Tomcat vào Eclipse: Trên Eclipse chọn Window/References Thêm mới một Runtime Server Đoàn Trần Nghiệp Page | 21 ĐHTG JSP Chọn kiểu WebServer... Insert title here Hello World Đoàn Trần Nghiệp Page | 26 ĐHTG JSP 1 Cấu hình Eclipse để chạy Web trên Tomcat: Cho tới lúc này, chúng ta vẫn chưa làm gì tới Servlet Và giờ chúng ta cấu hình để chạy được ứng dụng web kia Sau đó chúng mới bắt đầu với Servlet Trên eclipse, nhấn phải vào Project ServletTutorial, chọn Properties: Đoàn Trần Nghiệp Page | 27... HttpServlet còn có các phương thức:  service(): thực hiện khi đối tượng của lớp được tạo lập và triệu gọi doGet() hoặc doPost()  doPut(): thực hiện thao tác PUT của HTTP  doDelete(): thực hiện thao tác DELETE của HTTP  init() và destroy(): khởi tạo và huỷ bỏ các Servlet  getServletInfo(): nhận các thông tin về Servlet Lưu ý: Cả doGet() và doPost() đều có thể phát sinh ra một trong hai ngoại lệ ServletException,... cấu trúc để Servlet có thể cho phép bổ sung một giao thức khác với HTTP Gói javax.servlet chứa các lớp và các giao diện được kế thừa giao diện Servlet một cách độc lập Gói javax.servlet.http chứa các lớp và giao diện HTTP cụ thể ii Lớp cơ sở HttpServlet: Như ta đã biết, theo giao thức HTTP, dữ liệu được trao đổi giữa máy chủ Server và các máy Client theo một trong hai phương thức GET hay POST Java... | 21 ĐHTG JSP Chọn kiểu WebServer là Tomcat 8 Đoàn Trần Nghiệp Page | 22 ĐHTG JSP Khai báo vị trí Tomcat bạn vừa giải nén trên ổ cứng Nhấn OK để hoàn thành Đoàn Trần Nghiệp Page | 23 ĐHTG III JSP Tạo Web Project bắt đầu với Servlet: • File/New/Other • Project Name: ServletTutorial Đoàn Trần Nghiệp Page | 24 ĐHTG JSP Đây là hình ảnh Project được tạo ra: Đoàn Trần Nghiệp Page | 25 ĐHTG JSP Tạo file index.html:

Ngày đăng: 02/08/2016, 17:10

TỪ KHÓA LIÊN QUAN

w