WebRatio:数据密集型Web应用开发利器
立即解锁
发布时间: 2025-08-23 01:08:40 阅读量: 9 订阅数: 11 


数据密集型Web应用的设计与实现
# WebRatio:数据密集型Web应用开发利器
## 1. 数据映射
WebRatio在数据实现阶段发挥着重要作用,它将应用程序与存储内容的数据源关联起来。支持三种数据实现架构,分别是专用数据库、复制数据库和在线数据库,尤其对专用数据库解决方案提供了高级别的支持。与数据源的连接借助JDBC和ODBC编程接口,还可以通过编写连接服务来添加其他类型的数据源。
数据实现活动通过将实体 - 关系图映射到定义的数据源来进行。用户需要声明数据源,并将实体和关系绑定到表。映射信息(将实体、关系和属性与表和列关联起来)存储在一个XML文件中。
如果应用程序内容的数据库不存在,WebRatio可以根据特定规则自动创建默认的标准数据库。为了便于快速原型开发,支持两种数据库生成命令:
- **创建空数据库**:工具自动创建标准表,并将项目的实体和关系绑定到这些表。之后,用户可以手动或使用数据复制工具填充数据库。
- **创建填充数据库**:工具以与空映射相同的方式自动创建表,此外,还会用测试数据填充实体和关系表。实体表使用从用户定义的测试用例文件中采样的列值进行填充,这样可以生成基于模拟数据的大型测试数据库。
如果实体 - 关系模式包含派生数据,还有第三种命令“创建视图”,它会将派生模式元素的OCL表达式转换为SQL语句,生成一个源文件,这些SQL语句定义了与OCL表达式等效的关系视图,并可以自动安装到相应的数据源中。
在生成代码和运行应用程序之前,必须正确映射所有实体、关系和派生元素,否则代码生成可能会产生不完整的结果。WebRatio会检查实体 - 关系图和物理数据库之间的一致性,便于跟踪两者的变化。
下面是数据映射的流程:
```mermaid
graph LR
A[声明数据源] --> B[绑定实体和关系到表]
B --> C[存储映射信息到XML文件]
D{数据库是否存在} -->|否| E[自动创建数据库]
D -->|是| B
E --> F{选择数据库生成命令}
F -->|创建空数据库| G[手动或工具填充数据]
F -->|创建填充数据库| H[用测试数据填充]
I{是否有派生数据} -->|是| J[创建视图]
I -->|否| K[检查映射完整性]
J --> K
K --> L[生成代码和运行应用]
```
## 2. 呈现设计
呈现设计主要涉及定义XSL样式表,这些样式表包含代码生成器生成页面模板所需的呈现规则。WebRatio提供了两种功能,一是从现有的样式库中选择呈现样式并将其关联到应用程序页面,二是将图形设计师设计的HTML原型自动转换为XSL样式表。
XSL样式表包含一组XSL规则,这些规则控制页面布局和各种单元的呈现方式。为了使XSL样式表能够在不同内容的多个页面中重用,XSL规则不引用单个页面的单元,而是指定单元可以放置的页面布局位置。选择样式表后,WebRatio通过拖放界面帮助将页面单元与样式表暴露的位置进行耦合。
对于页面中定位的每个单元,甚至单元中包含的每个属性、上下文链接和字段,都可以选择不同的XSL样式表,以定义呈现该元素的特定样式。页面和单元的XSL样式表可以由XSL程序员手写,也可以从HTML原型自动生成。在后者的情况下,图形设计师会生成一个带注释的HTML文件,该文件指定了给定页面或单元的“呈现示例”,其中包含自定义XML标签,WebRatio可以将其转换为XSL样式表并添加到样式表库中。
还可以直接对代码生成器生成的页面模板进行进一步的呈现优化。可以使用标准的所见即所得(WYSIWYG)工具来修改图形和布局,或向页面添加静态内容。WebRatio包含一个用于Macromedia Dreamweaver的扩展文件,它使WebML标签显示为特殊图标,方便图形设计师编辑WebML标签的呈现属性。
呈现设计的步骤如下:
1. 从样式库选择或自动转换生成XSL样式表。
2. 使用拖放界面将页面单元与样式表位置耦合。
3. 为不同单元和元素选择特定样式表。
4. 对生成的页面模板进行优化。
## 3. 代码生成
在指定实体 - 关系模式和站点视图图、将数据模型映射到数据源并为页面分配样式表之后,就可以启动自动代码生成,将站点视图转换为所选部署平台(如JSP、Struts和Microsoft .NET)的模块。在生成应用
0
0
复制全文
相关推荐










