问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

jsp中都有哪些注释方式?为了提高站点的安全性,应该采用哪种注释...

发布网友 发布时间:2022-04-30 13:34

我来回答

1个回答

热心网友 时间:2022-04-24 06:44

今天在弄JSTL标签的时候,用到了<c:redirect>重定向标签的时候遇到一个很是蛋疼的问题,就是当我测试完成这个标签的时候,我想测试其他的内容,由于它是重定向的(浏览器地址会发生改变的),这样肯定会影响我后面的测试,于是我就想把这行代码注释了:
<!--<c:redirect url="/include.jsp"></c:redirect>-->
然后测试其他的内容了,但是问题来了,我每次刷新浏览器的时候,还是重定向了,我就纳闷了,这句话不是注释了吗?怎么还是执行了,然后我就把这句话删除了,这时候就好了,此时就怀疑这个注释到底有没有用,然后上网查看资料,知道这种注释对于Jsp是没有用的,它是html/xml的原版注释,应该使用
<%--<c:redirect url="/include.jsp"></c:redirect>--%>
这个注释就可以了,随后又想起来了,还有Java中原版注释://和/**/,其实也可以这样注释的:
<%//--<c:redirect url="/include.jsp"></c:redirect>--%>,
这个和上面的两种有什么区别呢?这时候就可能需要jsp的执行过程了,这里就简单说一下:每个jsp页面都会被jsp引擎翻译成servlet.java的,具体内容可以到tomcat目录下的work文件夹中的项目工程中找到对应的文件,所以最后一种注释是彻底的注释了,因为他在servlet.java中就被注释了,而前面的两种注释在servlet.java代码中是没有被注释的,下面就是servlet.java中的代码片段:
使用<%//....%>注释的:

out.write(" -->\r\n");
out.write(" <br><br>\r\n");
out.write(" \r\n");
out.write(" <!-- c:redirect标签的使用:重定向打开include.jsp页面 -->\r\n");
out.write(" ");
//<c:redirect url="/include.jsp"></c:redirect>

这里可以看到,这句话直接被注释了,即:Jsp中<%...%>中的内容会原封不动的翻译成servlet.java
使用<%----%>注释的:

out.write(" -->\r\n");
out.write(" <br><br>\r\n");
out.write(" \r\n");
out.write(" <!-- c:redirect标签的使用:重定向打开include.jsp页面 -->\r\n");
out.write(" ");

使用<!---->注释的:

out.write(" -->\r\n");
out.write(" <br><br>\r\n");
out.write(" \r\n");
out.write(" <!-- c:redirect标签的使用:重定向打开include.jsp页面 -->\r\n");
out.write(" <!--");
if (_jspx_meth_c_005fredirect_005f0(_jspx_page_context))
return;

综上所述可以发现,原因可能在于那段代码:
if (_jspx_meth_c_005fredirect_005f0(_jspx_page_context))
return;

这个方法是针对redirect标签的做判断的,所以原因就在这个方法内部,可以自行查看,需要注意的是,如果使用<%...%>和<%----%>的话,servelet.java中是没有这个方法的,这一点更能说明为什么<!---->注释没有效果了!

总结:
1.第一种注释:
<!--注释内容-->
这是HTML/XML的原版注释,会老老实实的发到客户端的,有什么见不得人的就别用这个写了

2.第二种注释:
<%--注释内容--%>
有<% %>的东西都是写给JSP应用服务器看的,不会发到客户端的。编译器将其置之不理,html也无缘与其相见,被应用服务器打入冷宫了。这个注释感觉比较多余,不知道专门又搞一个这种注释干什么。

3.第三种注释:
<%
//当行注释
/**
多行注释
*/
%>
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
企业培训学到了什么 培训感悟简短 有关培训的感悟 通过培训学到什么 培训你学到了什么 领导问培训学到什么怎么回复 Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 这种瘦腿带有用吗? 可以用普拉提瘦腿吗?会不会对身体有害 网上的瘦腿贴是真的有用么 JSP中注释有几种? keep上的瘦腿训练有用吗? jsp的注释方法有哪些? 瘦腿有用吗? 桌面上的WPS文字删除不了怎么办 WPS表格中的文字删不掉是怎么回事,表格底框颜色也不能删除更改? 帕梅拉瘦腿有用吗 帕梅拉瘦腿到底有用没 wps云文档怎么删不了 WPS下载的云字体怎么删除 录音笔什么牌子好?远程在家办公用哪款录音笔录音笔效果好? 相册相册中的最近删除在哪? 农业银行开户新规 广州市动漫学院哪家好?好在哪 找不到相册的最近删除功能? 有没有一款可以联网的智能录音笔? 急,广州动漫学院到底好不好 我以前手机号停机不用了,现在换了手机号,请问怎么才能在银行卡修改 瘦腿膏有用吗 肌肉型小腿怎么瘦啊?瘦腿霜有用么? 有人试过小红书上的瘦腿方法吗,真的有用吗? jsp中几注释的区别是什么? jsp代码里应该用什么符号注释啊 JSP中注释有几种??? jsp中的注释符是什么 jsp代码注释 本人菜鸟 希望详细些 通俗易懂些 猪血干子做法 车上没有装GPS可以定位车吗? 查星座问题! 干扁猪血做法 请某位星座达人帮帮忙~ 我的车没有装GPS可以定位么 怎么做猪血干 汽车没有安GPS定位系统还可以定位吗? 谁能帮我解一下这个星座命盘,希望能得到详细的解答~~~ 求高人帮忙解释下星盘! 车辆在没有安装任何追踪器的情况下卫星定位能找到吗?