gpt4 book ai didi

使用 jSTL 进行调试 - 究竟如何?

转载 作者:行者123 更新时间:2023-12-04 00:43:30 25 4
gpt4 key购买 nike

我一直在努力理解BalusC's answer关于可调试性,我仍然无法确切地弄清楚 jSTL 标签如何比 scriptlet 更容易调试。

当我想到调试时,我想到了单步执行代码并在任何给定点确定将哪些变量加载到内存中并查看其内容的能力。使用 jSTL,我无法设置任何类型的断点,如果它的任何部分中断,我正在处理的任何形式的片段都会丢失。我不确定哪个更糟:空白页还是加载了一半的页面。我见过这样的情况,当 jSTL 失败时,表单的其他部分会丢失,而不仅仅是它影响的部分。无论哪种情况,都不可能真正看出问题所在。

使用 Scriptlet,我可以放置断点,并在 IDE 中查看我想要的任何点。即使我没有使用这样的功能,我也可以将我想查看的过程的任何部分打印到控制台,并在以后弄清楚。如果页面失败并向我显示一个空白页面,尽管这可能很烦人,但我至少可以单步执行并准确找出失败的行。

对于jSTL,我完全一头雾水。遍历一个集合真的感觉就像一个黑匣子,你希望一切顺利,而不是真的能够一步一步地看着它发生。这让你感到无能为力。

我承认,jSTL 更干净,看起来更直观,但我遇到的一个明显问题是无法真正调试页面上的任何内容。我在这里完全错了吗?我只是错过了调试正在发生的事情的愉快方式吗?还是我的调试方法不正确,需要重新考虑?

我已经用谷歌搜索了这个问题,但我似乎无法得出任何直接的答案...如果有人对此有任何见解,那将非常有帮助。我想使用 jSTL 代替 scriptlet,这是让我退缩的一件明显的事情......

最佳答案

您可以添加 jsp 脚本并打印 jSTL 使用的变量。这会打印在控制台或容器的输出文件中

    <c:set var="myVar" value='${param.myUrlParam}' />

<% System.out.println(pageContext.findAttribute("myVar") ); %>

这是我能找到的调试 jSTL 页面的唯一最佳方法。

关于使用 jSTL 进行调试 - 究竟如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15667052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com