out.write()和out.print()区别

jsp生命周期第一步转化成servlet过程当中,所生成的servlet类的_jspService()方法中,全部的jsp表达式均在其中被镶嵌在out.print()语句中,而全部jsp页面的纯文本均也被镶嵌在out.write()语句中,把这些文本叫作模版文本,那这二者具体区别在哪呢?java

查看转换以后的源码能够看出,out对象的类型为JspWriter,在javax.servlet.jsp包中,JspWriter继承了java.io.Writer,print方法是在子类JspWriter中定义的,writer方法是在父类Writer中定义的,重载的print方法能够将各类数据类型转换成字符串的形式输出,而重载的wite系列方法中能输出字符、字符串数组和字符串等与字符相关的数据。
数组

JspWriter类型的out对象使用print方法和write方法均可以输出字符串,但有一个区别就是当参数为null时,print方法输出内容为“null”,而write方法则会抛空指针异常(NullPointerException)。
jsp

相关文章
相关标签/搜索