使用输出流打印出 Java servlet 中的变量


public class DemoServlet extends HttpServlet {
    public void service(HttpServletRequest req, HttpServletResponse resp)
        throws IOException, ServletException {
        //prints out my string
        resp.getOutputStream().write("Hello from servletn".getBytes());
        String variable ="VAR";
        //trying to print out variable by this way but doesn't work
        resp.getOutputStream().write("%sn".getBytes(),variable);
        //doesn't work this way either
        resp.getOutputStream().write("variable is:"+ variable +"something elsen".getBytes());
    }
}

首先,我使用的是PageWriter out= resp.getWriter();但后来我切换到ServletOutputStream因为我想打印图像。其他一切都可以,但是:

public void makedbconnection() {
    try {
        Class.forName("com.mysql.jdbc.Driver").newInstance();
        Dbcon = DriverManager.getConnection("jdbc:mysql://localhost/test");
    } catch(Exception idc) {
       //ON THIS LINE, out is ServletOutputStream.
       idc.printStackTrace(out);
    }
    //System.out.println("connection made");
}

显然你可以使用ServletOutputStream#print但你也可以使用PrintWriter。

resp.getWriter().print(yourvariable)

out是一个ServletOutputStream。它具有一组丰富的重载print()方法。只需使用

out.print(variable);

>ServletOutputStream有一大组print(...)方法。打印文本时,最好使用它们而不是write(...)文本。

另外,请注意,您可以多次使用 printwrite

out.print("Hello, the variable is ");
out.print(variable);
out.println(". Something else?");

请注意,与其在字符串末尾添加n,不如使用 println

相关内容

  • 没有找到相关文章

最新更新