Java: Các Trang JSP Mẫu | V1Study
Có thể bạn quan tâm
- Đào tạo Độ tuổi từ 5 - 11 Độ tuổi từ 12 - 17 Từ 18 tuổi
- Lập trình Python Lập trình C C++ Java C# - C Sharp Android Scratch Pascal Robot mBot
- Web ReactJS HTML5 CSS3 JavaScript Node.js JSP ASP.NET Core jQuery PHP
- FW-CMS Laravel AngularJS Flutter Magento Bootstrap VueJS CodeIgnitor WordPress Sass Drupal
- Video Video Python Video Lập trình C Video C# Video Java Video HTML5-CSS3-JavaScript Video SQL Server Video PHP Video jQuery Video Android Video C++ Video Scratch
- Video1 Video XML-JSON Video MySQL Video Excel Video Giải thuật và Lập trình Video Sức khỏe Video Drupal Video mBot Video Giáo dục - Khoa học
- Other Unity Giải thuật và lập trình Giải thuật và lập trình - C CCNA Mạng máy tính Design Patterns English Facebook SEO Git Tin học đại cương Japanese App-Uti Download
- Data SQL Server XML JSON MySQL
- News
Để minh hoạ công nghệ JSP, bài này sẽ viết lại từng servlet trong ứng dụng của Duke's Bookstore đã được giới thiệu trong các ví dụ Servlets như là một trang JSP (xem bảng dưới đây).
Các ví dụ về các cửa hàng sách của Duke's JSP Pages
Chức năng | Trang JSP |
---|---|
Nhập hiệu sách. | Bookstore.jsp |
Tạo biểu ngữ hiệu sách. | Banner.jsp |
Duyệt qua sách được bán. | Bookcatalog.jsp |
Thêm sách vào giỏ hàng. | Bookcatalog.jsp và bookdetails.jsp |
Nhận thông tin chi tiết về một cuốn sách cụ thể. | Bookdetails.jsp |
Hiển thị giỏ hàng. | Bookshowcart.jsp |
Xóa một hoặc nhiều sách khỏi giỏ hàng. | Bookshowcart.jsp |
Mua sách trong giỏ hàng. | Bookcashier.jsp |
Nhận được thông báo cho việc mua. | Bookreceipt.jsp |
Dữ liệu cho ứng dụng bookstore vẫn được duy trì trong cơ sở dữ liệu và được truy cập thông qua tut-install/javaeetutorial5/examples/web/bookstore2/src/java/com/sun/bookstore2/database/BookDBAO.java. Tuy nhiên, các trang JSP sẽ truy cập BookDBAO thông qua thành phần JavaBeans tut-install/javaeetutorial5/examples/web/bookstore2/src/java/com/sun/bookstore2/database/BookDB.java. Lớp này cho phép các trang JSP sử dụng các phần tử JSP được thiết kế để làm việc với các thành phần của JavaBeans (xem bài Công ước Thiết kế Hợp phần JavaBeans).
Việc thực thi cơ sở dữ liệu như đoạn mã dưới đây, trong đó có hai biến thể hiện là sách hiện thời và đối tượng truy cập dữ liệu.
package database; public class BookDB { private String bookId = "0"; private BookDBAO database = null; public BookDB () throws Exception { } public void setBookId(String bookId) { this.bookId = bookId; } public void setDatabase(BookDAO database) { this.database = database; } public Book getBook() throws Exception { return (Book)database.getBook(bookId); } ... }Phiên bản ứng dụng Bookstore của Duke được tổ chức theo kiến trúc Model-View-Controller (MVC). Kiến trúc MVC là một cách tiếp cận kiến trúc được sử dụng rộng rãi cho các ứng dụng tương tác phân phối các chức năng giữa các đối tượng ứng dụng để giảm thiểu mức độ khớp nối giữa các đối tượng. Để đạt được điều này, nó chia các ứng dụng thành ba lớp: Model, View và Controller. Mỗi lớp xử lý các nhiệm vụ cụ thể và có trách nhiệm với các lớp khác:
-
Các Model đại diện cho dữ liệu kinh doanh, cùng với logic kinh doanh hoặc các hoạt động chi phối truy cập và sửa đổi dữ liệu kinh doanh này. Mô hình thông báo các chế độ xem khi nó thay đổi và cho phép truy vấn mô hình về trạng thái của nó. Nó cũng cho phép bộ điều khiển truy cập các chức năng ứng dụng đóng gói theo mô hình. Trong ứng dụng của Công ty Duke's Bookstore, giỏ hàng và đối tượng truy cập cơ sở dữ liệu chứa logic kinh doanh cho ứng dụng.
-
View thể hiện nội dung của một mô hình. Nó lấy dữ liệu từ mô hình và chỉ định cách dữ liệu đó được trình bày ra sao. Nó cập nhật dữ liệu trình bày khi mô hình thay đổi. Một khung nhìn cũng chuyển tiếp người dùng nhập vào bộ điều khiển. Các trang JSP của Duke’s Bookstore định dạng dữ liệu được lưu trữ trong session giỏ hàng và cơ sở dữ liệu trang.
-
Controller định nghĩa hành vi ứng dụng. Nó gửi các yêu cầu của người dùng và lựa chọn các khung nhìn cho trình bày. Nó thông dịch đầu vào của người dùng và ánh xạ chúng vào các hành động được thực hiện bởi mô hình. Trong một ứng dụng web, đầu vào của người dùng là các yêu cầu HTTP GET và POST. Bộ điều khiển chọn chế độ xem tiếp theo để hiển thị dựa trên tương tác của người dùng và kết quả của các hoạt động của mô hình. Trong ứng dụng của Duke's Bookstore, Dispatcherservlet là Controller. Nó kiểm tra URL yêu cầu, tạo và khởi tạo một thành phần JavaBeans (giỏ hàng) được định nghĩa trong session và gửi yêu cầu để xem các trang JSP.
Lưu ý - Khi được sử dụng trong một ứng dụng web, kiến trúc MVC thường được gọi là kiến trúc Model-2. Ví dụ về hiệu sách được thảo luận trong những bài viết trước, kết hợp giữa logic trình bày và kinh doanh, đi theo cái được gọi là kiến trúc Model-1. Kiến trúc Model-2 là cách tiếp cận khuyến nghị để thiết kế các ứng dụng web.
Ngoài ra, phiên bản này của ứng dụng sử dụng một số thẻ tùy chỉnh từ Thư viện thẻ chuẩn JavaServer Pages (JSTL), được mô tả trong bài Thư viện Thẻ chuẩn JavaServer Pages:
-
c:if , c:select , c:when và c:otherwise dùng để kiểm soát luồng
-
c:set dùng để thiết lập các biến phạm vi
-
c:url dùng để mã hóa các URL
-
fmt:message, fmt:formatNumber, và fmt:formatDate dùng để cung cấp thông tin, số và ngày tháng
Thẻ tùy chỉnh là cơ chế ưa thích để thực hiện nhiều tác vụ xử lý động, bao gồm truy cập cơ sở dữ liệu, sử dụng các dịch vụ doanh nghiệp như email và thư mục và thực hiện kiểm soát lưu lượng. Trong các phiên bản trước của công nghệ JSP, các tác vụ này được thực hiện với các thành phần JavaBeans kết hợp với các thành phần kịch bản. Mặc dù vẫn có sẵn trong công nghệ JSP 2.0, các phần tử kịch bản có xu hướng làm cho các trang JSP khó khăn hơn để duy trì bởi vì chúng kết hợp phần trình bày và phần logic với nhau, đây là điều không được khuyến khích trong thiết kế trang. Thẻ tùy chỉnh được giới thiệu trong bài Sử dụng thẻ tùy chỉnh.
Cuối cùng, phiên bản này của ví dụ chứa một applet để tạo ra một đồng hồ số động động trong banner. Xem bài viết Bao gồm một Applet để mô tả phần tử JSP tạo ra HTML để tải xuống applet.
Để triển khai và chạy ứng dụng bằng cách sử dụng NetBeans IDE, hãy làm theo các bước sau:
-
Thực hiện tất cả các thao tác được mô tả trong bài Truy cập cơ sở dữ liệu từ các ứng dụng web.
-
Trong NetBeans IDE, chọn File → Open Project.
-
Trong hộp thoại Mở dự án, hãy điều hướng đến:
tut-install/javaeetutorial5/examples/web/ -
Chọn thư mục bookstore2 .
-
Chọn hộp kiểm Open as Main Project và hộp kiểm Open Required Projects.
-
Nhấp vào Mở dự án.
-
Trong tab Dự án, nhấp chuột phải vào dự án bookstore2 , và chọn Undeploy and Deploy.
-
Để chạy ứng dụng, hãy mở cửa hàng sách http://localhost:8080/bookstore2/books/bookstore.
Để triển khai và chạy ứng dụng bằng Ant, hãy làm theo các bước sau:
-
Trong cửa sổ terminal, vào tut-install/javaeetutorial5/examples/web/bookstore2/.
-
Gõ ant. Lệnh này sẽ sinh ra bất kỳ trình biên dịch nào cần thiết, sao chép các tập tin vào thư mục tut-install/javaeetutorial5/examples/web/bookstore2/build/ và tạo một tệp tin WAR và sao chép nó vào thư mục tut-install/javaeetutorial5/examples/web/bookstore2/dist/ directory.
-
Khởi động Máy chủ Ứng dụng.
-
Thực hiện tất cả các thao tác được mô tả trong phần Tạo một nguồn dữ liệu trong Máy chủ ứng dụng của bài Truy cập cơ sở dữ liệu từ các ứng dụng web.
-
Để triển khai ví dụ, gõ ant deploy. Mục tiêu triển khai là để xuất ra một URL để chạy ứng dụng. Bỏ qua URL này và thay vào đó sử dụng URL này được hiển thị trong bước tiếp theo.
-
Để chạy ứng dụng, hãy mở http://localhost:8080/bookstore2/books/bookstore.
Để tìm hiểu cách định cấu hình ví dụ, hãy tham khảo descriptor triển khai (tệp web.xml), bao gồm các cấu hình sau:
-
Một phần tử display-name để chỉ định tên mà các công cụ sử dụng để xác định ứng dụng.
-
Một phần tử context-param để xác định bó tài nguyên JSTL dựa vào tên.
-
Một phần tử listener để xác định lớp ContextListener được sử dụng để tạo và xoá truy cập cơ sở dữ liệu.
-
Một phần tử servlet xác định ví dụ servlet của Dispatcher.
-
Một bộ các phần tử servlet-mapping sẽ ánh xạ Dispatcher với các mẫu URL cho mỗi trang JSP trong ứng dụng.
-
Lồng bên trong một phần tử jsp-config là hai phần tử jsp-property-group, nó dùng để xác định prelude và coda được đưa vào trong mỗi trang. Xem bài viết Thiết lập thuộc tính cho Nhóm các Trang JSP để biết thêm thông tin.
Hình dưới đây hiển thị trang bookcatalog.jsp từ ứng dụng của Công ty Duke's Bookstore. Trang này hiển thị danh sách tất cả các sách có sẵn để mua.
Danh mục sách
Xem Khắc phục sự cố các vấn đề cơ sở dữ liệu của Duke's Bookstore của bài viết Servlet là gì? để được trợ giúp để chẩn đoán các sự cố thường gặp liên quan đến máy chủ cơ sở dữ liệu. Nếu các tin nhắn trong các trang của bạn xuất hiện dưới dạng chuỗi dạng ???Key???, thì nguyên nhân có thể là bạn chưa cung cấp tên của tài nguyê chính xác như một tham số ngữ cảnh.
» Tiếp: Vòng đời của trang JSP « Trước: Trang JSP là gì? Khóa học qua video: Lập trình Python All Lập trình C# All SQL Server All Lập trình C Java PHP HTML5-CSS3-JavaScript Đăng ký Hội viên Tất cả các video dành cho hội viên Khóa học qua video: Lập trình Python All Lập trình C# All SQL Server All Lập trình C Java PHP HTML5-CSS3-JavaScript Đăng ký Hội viên Tất cả các video dành cho hội viên Copied !!! Copy linkCopied link!Bạn muốn tìm kiếm điều gì?
Từ khóa » Các Bài Tập Về Jsp
-
Bài Tập - Quản Lý Sách & Tác Giả - Lập Trình JSP/Servlet
-
Bài Tập Java Servlet CRUD SQL Sever - Lập Trình Không Khó
-
Lập Trình JSP Servlet - Giải Bài Tập CRUD - Thêm Sửa Xóa Sản Phẩm
-
Học JSP Cơ Bản đến Nâng Cao
-
Tài Liệu Tham Khảo JSP
-
Học Java Web Với JSP Servlet Cơ Bản, Nâng Cao - Ngoc Khuong Blog
-
Hướng Dẫn Lập Trình Java JSP Cho Người Mới Bắt đầu - Openplanning
-
Bài 4. Cơ Bản Về JSP Doc - 123doc
-
BÁO CÁO BÀI TẬP LỚN LẬP TRÌNH MẠNG - Tài Liệu Text - 123doc
-
JSP Là Gì? - Học JSP Cần Chuẩn Bị Những Gì? - VietTuts
-
JSP Servlet Là Gì? Tìm Hiểu Về JSP Servlet Toàn Tập - Tino Group
-
Java Web Servlet Jsp
-
CẬP NHẬT MỚI -[Cốt Lõi Java Web JSP-SERVLET Core Qua Dự án ...