在setText(Java邮件)中发送文件内容

在setText(Java邮件)中发送文件内容,java,jakarta-mail,Java,Jakarta Mail,我有一个jsp文件: email.jsp <div id="foo"> <span id="bar">test</span> </div> 将导致如下结果: email.setText("<div id="foo"><span id="bar">test</span></div>"); email.setText(“测试”); 我如何才能做到这一点?您可以编写一个实用方法: /**

我有一个jsp文件:

email.jsp

<div id="foo">
    <span id="bar">test</span>
</div>
将导致如下结果:

email.setText("<div id="foo"><span id="bar">test</span></div>");
email.setText(“测试”);

我如何才能做到这一点?

您可以编写一个实用方法:

 /**
 * @param fileName String: Path of the JSP file 
 * @return jspContent String : contents of the JSP file
 * @throws IOException
 */
private String readJSPContents(String fileName) throws IOException {
    InputStream io = getServletContext().getResourceAsStream(fileName);
    BufferedReader in = new BufferedReader(new InputStreamReader(io));
    String str;
    String jspContent = "";
    while ((str = in.readLine()) != null)
        jspContent+=str;
    in.close();
    return jspContent;
}
然后,
email.setText(readJSPContents(“email.jsp”),“utf-8”,“html”)

 /**
 * @param fileName String: Path of the JSP file 
 * @return jspContent String : contents of the JSP file
 * @throws IOException
 */
private String readJSPContents(String fileName) throws IOException {
    InputStream io = getServletContext().getResourceAsStream(fileName);
    BufferedReader in = new BufferedReader(new InputStreamReader(io));
    String str;
    String jspContent = "";
    while ((str = in.readLine()) != null)
        jspContent+=str;
    in.close();
    return jspContent;
}