高级别合成方法
要对框架中的高级数据流进行建模,合成方法很有用。例如,很多标准框架(如 Struts 和 Spring)鼓励对应用程序使用模型-视图-控制器 (MVC)。通过 MVC 结构,通常按以下方式来处理客户机表单提交:
- 根据 URL,确定用于保存提交的表单数据的应用程序模型类
M
以及包含业务逻辑的控制器类C
。 - 创建
M
模型对象,并根据 HTTP 请求中的(不可信)表单数据来设置其属性。这些属性通常通过 setter JavaBeans™ 来设置(例如,setName()
或setAddress()
)。 - 对
M
对象中的数据执行某些验证。 - 创建
C
控制器对象,并将M
对象传递到执行业务逻辑的方法C.execute()
。通常,execute()
将返回用于呈现结果的视图的名称。 - 根据视图名称,确定要显示的相应视图文件(例如,JavaServer Pages)。通常,
M
对象中的数据将通过请求或会话对象的属性来传递到视图。
可以通过 Framework for Frameworks 合成方法来对所有以上功能进行建模,因而揭示行为以供 AppScan® Source 分析。Framework for Frameworks API 提供高级别合成方法以简化合成方法的生成。
注: 带有以
Appscan.Synthetic
、Appscan.Synthetic.Validator
和 AppScan.Synthetic.Replacement
开头的类名称的跟踪节点对应于通过 AppScan® Source 进行合成的方法。AppScan.Synthetic
方法用于在使用框架的应用程序代码中将跟踪聚合到一起。AppScan.Synthetic.Validator
方法可对框架运行时执行的底层验证进行建模。如果需要,您可以选择一个 validator 方法并将其标记为验证器。AppScan.Synthetic.Replacement
方法指示应用程序代码中的某个方法已替换为 AppScan® Source,以捕获框架的不相关组件(如控制器和视图)之间的数据流。