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

相關文章
相關標籤/搜索