498)this.width=498;'' onmousewheel = ''javascript:return big(this)'' alt="" src="/uploadfile/201301/12/5B122036712.png" />
我们如何将数据传入给实体脚本呢,通常我们是通过前面我们说的对象实体来完成的,因为数据对象实体只是包含实体的数据信息,并不包含具体的行为。
那么我们来简单说说对象实体中的信息及格式,我想大家用过分层结构中的Model层的都会比较的清楚,下面我们看看,不详细介绍了:
- public class Product
- {
- private int putoutID;
- public int PutOutID
- {
- get
- {
- return this.putoutID;
- }
- set
- {
- this.putoutID = value;
- }
- }
- private int productID;
- public int ProductID
- {
- get
- {
- return this.productID;
- }
- set
- {
- this.productID = value;
- }
- }
- private int productName;
- public int ProductName
- {
- get
- {
- return this.productName;
- }
- set
- {
- this.productName = value;
- }
- }
- private int productUnit;
- public int ProductUnit
- {
- get
- {
- return this.productUnit;
- }
- set
- {
- this.productUnit = value;
- }
- }
- private int productClass;
- public int ProductClass
- {
- get
- {
- return this.productClass;
- }
- set
- {
- this.productClass = value;
- }
- }
- }
我们看到了主要是通过get;set访问器来实现的。
总结:业务逻辑层是将表现层触发一系列事务分别实现,那么对业务逻辑层的建模其实就是对事务的具体实现,将事务映射到业务逻辑层中的不同方法上,一般来说事务代码维护起来比较难以维护,重用性低,难以理解。
2、表模块模式
表模块模式是对事务脚本模式的实践总结并优化而提出的新模式。相比而言,表模块模式结构性更强,总体来说,表模块就是就是将数据库中的某个表上的所有可能的操作都写在一个类文件中,这个类文件中定义了该数据库表对应的所有的业务方法。表模块类是一个容器,它内部包含了类的数据信息和相应的行为。表模块是映射数据库表的关系,因此表模块对应的是数据集合,那么无法将数据库表中的某个行记录进行区分,只能通过集合中的键或者索引来访问行记录的信息。
表模块模式由于是在事务脚本模式发展的更有结构化的模式,那么可以说表模块模式虽然是面向过程的模式,但是它朝面向对象的模式已经迈了很大的一步,我们知道,在将对象模型中的数据保存到关系数据库中时,需要使用相关的ORM工具去完成相应的转换。我们知道面向对象模型能够很灵活、更好的对领域模型建模。当然,表模块模式仍然关注的是方法,而不是对象。
通常我们在更好的结构设计指导的同时,那么我们需要考虑更多的规则,那么意味着我们需要书写更多的代码。表模块模式的具体实例可以参考Visio Studio中的提供