我正在升级一个大型遗留ColdFusion应用程序,该应用程序大量使用Application.cfm模板文件而不是较新的Application.cfc文件。
Application.cfc似乎为Application.cfm文件所能做的一切提供了一个更干净、更有效的解决方案。
Application.cfm对每个请求按顺序运行每一行,因此它将在随后的每个新页面查询中重新创建应用程序变量。(如果加载了许多应用程序变量,可能会影响性能) The Application.cfc允许某些真正的全局变量,以避免使用onApplicationStart()和onRequestStart()方法重新创建有没有人遇到过Application.cfm页面比Application.cfc更可取的用例/示例(除了移植所需的明显时间外)
发布于 2017-11-22 22:42:45
海事组织,这不是一个“太宽泛”的话题。这不是一个意见,我会把它归类为最佳实践。
使用cfc而不是cfm有很多原因。我一直处在这种情况下。
这里有一个在共同职能清单中可用的Application.cfc (我相信您知道):
在不深入了解每一个细节的情况下,能够将代码排序到这样的上下文桶中,将使您能够更好地管理各种变量范围。没有这些上下文触发器,您只是在回答Application.cfm的过程方面。
虽然这两个函数都在每个页面请求上运行,但是只运行cfc中的某些函数。cfm,您的代码一直在运行,检查是否应该运行它的条件。
坚持使用cfm当然没有那么大的风险,但是如果您要升级它,您应该期望您会在此过程中打破它。采用最佳做法应是这一进程的一部分。
https://stackoverflow.com/questions/47444618
复制相似问题