jsp中out的print和write的区别

本文详细解析JSP中out对象的使用,重点对比print与write方法的功能与区别,通过示例代码展示如何在JSP页面中实现数据的输出与换行效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jsp中的out对象是JspWriter类型的.

而JspWriter继承了java.io.Writer.write方法是在在父类Writer中定义的,print方法是在子类JspWriter中定义的.

重载的print方法可以将各种类型(对象)的数据转换成字符串的形式输出.

而重载的write方法只能输出字符/字符数组/字符串等与字符相关的数据变量.

而且如果使用这两种方法输出值为null的字符串对象,那么print方法输出的结果是"null",而write方法则会抛出NullPoiterException异常.

/*

*这里面使用print可以输出Date类的now实例对象,并将对象转化为数据,

*使用write就会报错,write方法只能输出字符/字符数组/字符串等与字符相关的数据变量

*/

<body style="font-size:30px;">
    <%
        Date now = new Date();
        out.print(now);
    %>
</body>

总之,print输出任何对象,write输出变量字符。


---------------------------------------------------------------------------------------------

<%out.print("hello");
     out.println("hello");
     out.println("hello");     out.println("hello");
    %>

输出的结果hello会显示在一行上。

但是html源码  

hellohello
hello
hello;在源代码中是有换行的,如果要页面显示效果也换行,那么就要在println()方法是在jsp编译成servlet是在字符串后面添加换行标记"<br/>"

<%--使用jsp内置隐含对象out --%>
    <%out.print("hello"+"<br/>");
     out.println("hello");
     out.println("hello"+"<br/>");  out.println("hello");
    %>

html源码

    hello
    <br></br>
      hello
hello
    <br></br>
      
hello

可以正常显示换行效果


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值