cuốn sách gpt4 ai đã làm

java - Lớp trợ giúp JSP để in nội dung

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-01 22:58:06 hai mươi bốn 4
mua khóa gpt4 Nike

Tôi có câu hỏi về việc sử dụng lại mã trong JSP. Tôi có một trang JSP ví dụ.jsp, thực hiện cuộc gọi đến cơ sở dữ liệu và nhận kết quả. Tôi có một lớp java HelperClass.java Chấp nhận bản ghi và in ra các trường khác nhau

phản hồi.getWriter().println

Bây giờ trang JSP của tôi cũng có HTML, vấn đề là nội dung được HelperClass in ra xuất hiện trước nội dung trong trang JSP. Ví dụ


Đây là dòng đầu tiên

HelperClass.printdata("dòng thứ hai");
Xem sitemap của VNExpress

Đầu ra là

dòng thứ hai Đây là dòng đầu tiên

Đây có phải là sự cố đã biết không? Được thiết kế cho các trang JSP in nội dung lên trang Lớp người trợ giúp Cách tốt nhất để làm điều đó là gì. Bất kỳ con trỏ nào sẽ được đánh giá rất cao.

câu trả lời hay nhất

Chỉ cần không sử dụng "HelperClass để in dữ liệu". Điều này vô nghĩa. Có EL ở đó.

${bean.property}

Thế thôi. Sử dụng servlet để kiểm soát các yêu cầu tiền xử lý và hậu xử lý. Sử dụng thư viện thẻ (chẳng hạn như JSTL) và EL để truy cập và hiển thị dữ liệu phụ trợ.

Đây là một ví dụ khởi động cơ bản về Servlet xử lý trước các yêu cầu trước khi hiển thị chúng trong JSP:

protected void doGet(yêu cầu httpServletRequest, phản hồi HttpServletResponse) ném ra ServletException, IOException {
List Persons = PersonDAO.list(); // Lấy danh sách những người từ DB.
request.setAttribution("persons", Persons); // Vì vậy, nó có sẵn dưới dạng `${persons}` trong EL.
request.getRequestDispatcher("/WEB-INF/persons.jsp").forward(request, reply); // Chuyển tiếp tới JSP để hiển thị.
}

đây,PersonChỉ là một lớp Javabean đại diện cho một thực thể trong thế giới thực.

lớp công khai Người {
private Long id;
tên chuỗi riêng tư;
email chuỗi riêng tư;
tuổi nguyên riêng tư;
// Thêm/tạo getters và setters tại đây.
}

PersonDAO#list()Phương thức chỉ trả về Listcủa PersonĐối tượng từ cơ sở dữ liệu:

Danh sách công khai list() ném ra SQLException {
Kết nối kết nối = null;
Tuyên bố tuyên bố = null;
Kết quả Đặt kết quả = null;
Danh sách người = new ArrayList();

thử {
kết nối = cơ sở dữ liệu.getConnection();
câu lệnh = Connection.createStatement("CHỌN id, tên, email, tuổi TỪ người");
resultSet = câu lệnh.executeQuery();
trong khi (resultSet.next()) {
Người người = Người mới();
user.setId(resultSet.getLong("id"));
Person.setName(resultSet.getString("name"));
Person.setEmail(resultSet.getString("email"));
user.setAge(resultSet.getInteger("age"));
người.add(người);
}
} finally {
if (resultSet != null) thử { resultSet.close() } Catch (SQLException logOrIgnore) {}
if (câu lệnh != null) thử { câu lệnh.close(); } bắt (SQLException logOrIgnore) {}
if (kết nối != null) thử { Connection.close(); } Catch (SQLException logOrIgnore) {}
}

người trở về;
}

Ánh xạ servlet tới web.xml Trung Tế mẫu url TRÊN /người .JSP ẩn trong /WEB-INF Bằng cách này, không ai có thể truy cập trực tiếp vào servlet mà không yêu cầu nó trước (nếu không bạn sẽ nhận được một bảng trống).

Bây giờ, đây là cáchngười.jspCó vẻ như nó sử dụng JSTL (Chỉ cần thay thế jstl-1.2.jar đưa vào /WEB-INF/lib ) c:forEach Đi qua ListNó sử dụng EL để truy cập dữ liệu phụ trợ và thuộc tính đậu. servlet có Danh sáchNhư tên là người yêu cầu các thuộc tính sao cho ${người} Có sẵn trong EL. c:forEach Mỗi lần lặp lại cho PersonTrả về các phiên bản để bạn có thể hiển thị thuộc tính của chúng bằng EL.

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

...









${person.name ${person.email ${person.age

通过 http://example.com/contextname/persons Gọi nó là vậy. Không cần "HelperClass để in dữ liệu" ;) Để tìm hiểu thêm về JSTL, hãy xem Hướng dẫn Java EE phần II chương 7Để tìm hiểu thêm về EL, hãy xem Hướng dẫn Java EE phần II chương 5 .Để tìm hiểu thêm về những gì đằng sau PersonDAO, hãy xem bài viết này .

Về lớp trợ giúp java - JSP để in nội dung, chúng tôi tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/2280034/

hai mươi bốn 4 0
Bài viết khuyến nghị: java - Các vấn đề về Maven và Eclipse - tìm kiếm tài nguyên
Bài viết khuyến nghị: Làm cách nào để triển khai từ xa EAR lên JBoss 5.1.0.GA bằng plugin Cargo maven?
Bài viết khuyến nghị: Thông tin ký hiệu jar Java: tương đương với tdstrip là gì?
Bài viết khuyến nghị: Tính năng Java
Taklimakan
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Các bài viết phổ biến trên toàn bộ trang web
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com