Java程序中的输出一般都使用System.out.println()之类,然而对应使用JSP编程的朋友来说,想把Java程序中的输出打印到页面上,确实得费点劲了。目前本人所知的办法有三种:   1.使用字符串作为返回值        如果程序中的输出量不大的话,可以将输出部分存入一个变量,JSP中调用该Java函数得到返回的变量,并使用<%=returnParameter%>就可以了。   2.使用Servlet输出        相信大部分JSP编程的人都会想到Servlet来实现,重写doGet(HttpServletRequest request,HttpServletResponse response)或doPost(HttpServletRequest request,HttpServletResponse response),再使用 //Get output stream and writers OutputStream out=response.getOutputStream(); PrintWriter pw=new PrintWriter(new BufferedWriter(new OutputStreamWriter(out))); //Print HTML pw.println("<HTML><HEAD><TITLE>输出HTML标签</HEAD></TITLE><BODY>"); pw.println("输出程序中你想输出的部分"); pw.println("</BODY></HTML>"); pw.flush(); pw.close(); 注:这种方法对应熟悉Servlet的人来说无疑是首先想到和通常使用的,但是如果Java程序需要从Jsp页面传参数进去,而且如果参数很复杂,比如是二维数组或者更复杂的东西,这个参数的传递路线:JSP->SERVLET->doGet()/doPost()->yourMethod(int[][],String[][])???似乎很复杂,而且不好实现。   3.使用JSP对象JspWriter        别忘了,Jsp还有一个叫做JspWriter的对象,只有在你的Java方法的参数中多传一个 JspWriter mout,然后把程序中需要输出的部分从System.out.print改成mout.print就可以了!但是通常会提示有未处理的异常,因为我们只是单纯的输出,如果懒得管就直接把“IOException” throws 掉吧。注意此时,println()的换行对于Jsp页面可是无效的,所以如果你要实现换行的话,需要使用mout.print("<br>");才能实现哦。另外,需要在程序开始必须加入这条语句"import javax.servlet.jsp.JspWriter;"。 Jsp页面中调用可以使用: <%  JspWriter mout=pageContext.getOut();
    youMethod(……,mout);%>
这样,你的Java方法中所写的输出就直接输出到页面上去了,而不再是tomcat之类的服务器控台上。 原文地址:http://blog.sina/s/blog_4cd29e3201000a1p.html

更多推荐

Java程序输出到JSP页面