我正在 Eclipse Juno 中使用 JSTL 和 Javascript 开发网络应用程序。我一直在阅读类似 How to set the JSTL variable value in javascript? 的问题即使我在 eclipse 中出错,我的代码也能正常工作:
但是……像这样使用 JSTL 和 Javascript 是一种好的做法吗?
会不会导致网页渲染时性能低下?
这可以用其他方式完成吗?
最佳答案
Is it a good practice to use JSTL and Javascript like this?
这既不是坏习惯也不是好习惯。不好的做法是使用 JSTL 来控制 JavaScript 的流,这是明显错误的,因为 JSTL 在服务器端运行,而 JavaScript 在客户端运行。
Does it cause a low performance in the time of rendering the webpage?
JSTL 只会帮助生成当前 View 的 HTML。 JavaScript 不参与服务器端但在客户端的 HTML 生成,除非您使用 nodejs 或类似技术。
Can this be done in other way?
这取决于你在做什么。访问网页时访问数据的常用方式:
- 应用程序服务器 (AS) 在
http://www.foo.com/bar
上接收 GET 请求 - AS 预处理 GET 请求(从数据库或其他数据源加载数据、预计算等)
- AS 为 GET 请求创建响应(应用数据生成 HTML)
- AS 将响应发送给客户端。
- 浏览器客户端呈现 HTML。
另一种方法:
- 应用程序服务器 (AS) 在
http://www.foo.com/bar
上接收 GET 请求 - AS 为 GET 请求创建响应(生成包含 JavaScript 函数的 HTML 以在
onload
事件中加载数据)。 - AS 将响应发送给客户端。
- 浏览器客户端呈现 HTML。
onload
事件触发并通过 RESTful 服务加载onload
事件中的数据。这样,数据交互只在客户端处理,但数据来自服务器端。
这是处理同一问题的两种非常简单的替代方法。选择和使用哪一个完全取决于您的设计,没有确定的答案。
关于java - 在脚本 (javascript) 标签内使用 JSTL 是一种好习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25142862/