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

JavaMail setDebug(真)

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 03:43:43 33 4
mua khóa gpt4 Nike

Cách thực hiện việc này trong phiên JavaMailsetDebug(đúng) Ghi lại luồng và sử dụng nó trong khung ghi nhật ký của tôi? (thiếu tải xuống mã nguồn, thay đổi phương thức chấp nhận luồng làm tham số, biên dịch lại nó, ...)

Tổng quát hơn, có cách tiêu chuẩn nào trong Java để "chiếm quyền điều khiển và chuyển hướng" đầu ra luồng chung theo cách này không? Lưu ý rằng System.out có thể đã bị nhiễm đầu ra khác, tôi không biết cách "lọc" nó...

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

Bạn có thể liên kết PrintStream với ByteArrayOutputStream, yêu cầu JavaMail sử dụng PrintStream của bạn, thực hiện các thao tác JavaMail và cuối cùng, chuyển nội dung của ByteArrayOutputStream vào trình ghi nhật ký yêu thích của bạn.

        ByteArrayOutputStream os = new ByteArrayOutputStream();
PrintStream ps = new PrintStream(os);
Phiên mailSession = Session.getDefaultInstance(props, null);
thử {
nếu (MAIL_DEBUG) {
logger.info("Chế độ gỡ lỗi JAVAMAIL đang BẬT");
mailSession.setDebugOut(ps);
mailSession.setDebug(true);
}
...
Transport.close();
nếu (MAIL_DEBUG) {
logger.info(os);
}
}
Cuối cùng {
ps.close();
os.close();
}

Về JavaMail setDebug(true), 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/12556320/

33 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress