刚学jsp文件,发现当使用if判断语句时,判断语句可能失效直接进入下一条语句

就比如说上图所示
按理来说应该不会输出“11111111”

但是结果如上图所示,输出了“11111111”(11111111以外的输出都是其他语句造成的)
这就和我所想的不一致
然后我们打开jsp所对应的java文件时,找到相对应的代码段(如下图所示)

然后发现这个if判断后然后执行的下一条语句并非括号中的内容,而是out.wtite(‘r’)。
找到这个现象后,才发现原来

这两兄弟(%><%)之间有间隙,产生了out.write(‘r’)等一些我们不想要的语句,所以我们只需要把他们连在一起就可以了
最终结果:



在学习JSP时遇到一个奇怪的现象,if判断语句似乎并未按预期工作,导致输出了不应该出现的内容。经过检查,发现在JSP文件的%><%这对符号之间有空格,这使得在编译后插入了额外的语句out.write('r')。修复方法是将这两个符号紧靠在一起,消除间隙,从而解决了问题。
&spm=1001.2101.3001.5002&articleId=123879323&d=1&t=3&u=b15468c4a08a431aa19d991aa7222d4b)
1591

被折叠的 条评论
为什么被折叠?



