<%%>、<%! %>、<%= %>、<%--  --%>、<!-- -->的区别

本文详细介绍了JSP页面中的各种语法元素,包括代码片段、方法声明、变量输出、注释等,并对比了不同类型的注释在前后端代码中的作用效果。

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

<%  %>

        可添加java代码片段

<%!  %>

        可添加java方法

<%! int i = 0; %> 
<%! int a, b, c; %> 
<%! Circle a = new Circle(2.0); %> 

<%! int i = 0; %>是一个合法的变量声明,和private String x;表达的意思一样,表达式元素表示的是一个在脚本语言中被定义的表达式。

<%=  %>

        变量或表达式值输出到页面

<%=123   %> 相当于 <% out.println("123");%>,会在前台页面输出指定的内容。
注:在使用<%= %>时其后不能有分号。

<%--  --%>

        jsp注释

<!--  -->

        html注释

<!--  -->与<%--  --%>2种注释的区别

        <!-- --> 是显式注释 
        <%-- --%>是隐式注释 
在JSP中如果用
       <!-- --> 则在浏览器中看得到 
       <%-- --%>则在浏览器中看不到

175009_oplc_1394041.png

 

这里注意一点,如果是这两个注释用在java代码上,会有隐性的坑:

<!-- -->这种注释是静态注释,只影响前端的代码,后端的代码还是会执行;

<%-- --%>这种注释是动态注释,前后端的代码都会被屏蔽。

相当于

<!-- -->用来注释html或者xml的
<%-- --%>用来注释java代码的

一般禁止用<!-- --> 包含java代码,否则不定哪天就掉坑了

<!-- -->  一般这种包含java代码也报错,比较容易发现,但是,比如:

<!--
<jsp:include page="common/test.jsp" flush="true">
        <jsp:param name="param" value="${paramValue}"/>
    </jsp:include>
-->

这种如果include的jsp是java代码,就会有问题。

特别如果前面test.jsp里面还有类似下面的代码就会报异常:

<%
}
%>

        需要换为下面写法,转义一下

<%
//}
%>

异常一般这样类似:

[02-08 10:33:42.740] _jsp/_test/_test_0test_0test_0test__jsp.java:2413: 需要 ';'
[02-08 10:33:42.740]     throws ServletException
[02-08 10:33:42.740]                            ^
[02-08 10:33:42.740] _jsp/_test/_test_0test_0test_0test__jsp.java:2460: 非法的表达式开始
[02-08 10:33:42.740]   public void destroy()

JSP规范

        一般不要直接在jsp页面上写java代码,特别java代码和html混合的情况,例如:if,else  判断java逻辑情况,然后符合的条件出html的东西,会显得很乱,可维护性差
        jsp只是一个显示数据的作用

转载于:https://my.oschina.net/xsh1208/blog/1620350

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值