今天是个特殊的日子,大家都在看Win8...但是小弟看到了一个架构图,但是不知道怎么使用。想请教大家。
架构图原址
架构图实现原理:
1、UI层展示和获取数据,将数据通过Entity实体类传递到BL层。2、在BL层,将业务处理单元写成函数,并将其封装在BusinessFunction中,然后被BusinessFlow调用进行业务处理。当然“BusinessFunction”和“BusinessFlow”可以合起来。3、BLL和RAL之间的数据交互,依然使用Model数据模型。4、DAL数据库访问层,完成系统和数据库间的交互。ORM把数据库中的关系数据转换为对象,Relation完成ORM无法完成的关系数据的访问。DB Adapter,使用数据库工厂模式屏蔽掉数据库差别,实现数据库兼容。5、ConfigAccess实现WebConfig等配置文件的访问。6、ServiceAccess实现外部系统Webservice的调用。7、BEM协调控制从DAL、ConfigAcess、ServiceAccess获得的资源,提供给BLL使用。8、Security对整个系统提供安全支持,例如票据身份认证。9、ErrorHandling对整个系统提供异常、错误处理机制,统一处理方法。比如,自定义异常错误处理页面。10、Log记录系统业务处理日志。11、ServiceInterfice对外发布Webservice。问题一:“BusinessFlow”(业务流处理)通常指什么?怎样用?能举个例子描述下吗?问题二:“BusinessFunction”和“BusinessFlow”的关系怎样?最好举例描述下。问题三:“BEM协调控制从DAL、ConfigAcess、ServiceAccess获得的资源,提供给BLL使用。”,但是它是怎样被使用的能举例说明下吗?问题四:“Relation完成ORM无法完成的关系数据的访问”,ORM是将数据库中的关系数据转化为对象。而“Relation”指什么呢?怎样使用???它怎么可以完成ORM无法完成的关系数据的访问???最好举例描述下。问题五:“Security对整个系统提供安全支持”。如何提供支持的,大家能举几个例子吗?问题六:“ErrorHandling对整个系统提供异常、错误处理机制,统一处理方法。”,具体如何处理,可以说说思路吗?问题七:“Log记录系统业务处理日志。”,怎样记录日志。请举例说明。问题八:“ServiceInterfice对外发布Webservice。”,“ServiceInterfice”应该怎样定义才能将“Webservice”发布出去。问题九:“ServiceEntrance”又是怎样调用外部WebService的呢?问题有点多,大家不要烦,好好解释下呗,感激不尽。当您解释完了,相信又把知识复习了一遍。

解决方案 »

  1.   

    这个还真看不懂,大概看像MVC,但是又不像,UI可能是View,但是却要获取数据,传递实体类的工作。
    什么叫“BLL和RAL的交互,通过Model数据模型”,RAL如果是Controller的话,那它本身就应该作为模块连接的纽带,为什么还出来个“Model数据模型”,难,看不懂。
      

  2.   

    问题一:“BusinessFlow”(业务流处理)通常指什么?怎样用?能举个例子描述下吗?
    答:括号里不是写了吗  业务流处理  就是放置项目业务逻辑的地方
    例子,我打你,页面上显示我打你这个过程,那么BusinessFlow上就是封装这个“打”,各种打法(逻辑),下次要修改打法,只要修改逻辑层就可以了,页面显示不管~问题二:“BusinessFunction”和“BusinessFlow”的关系怎样?最好举例描述下。
    答:我认为BusinessFunction是一个封装通用的业务逻辑方法类而已,关系的话就是具体和通用。
    例子,我打你,上面说了 我BusinessFlow上写了打你的动作(比如说鹰勾拳),好了,下次我要用抓X手打你,很显然你会在BusinessFlow上再写个无敌抓X手,那我下次要玩组合拳呢,鹰钩拳加...加... 估计这个时候就把这些通用的打法给放到BusinessFunction基本逻辑里了  这样互相直接调用也方便点 
      

  3.   

    问题三:“BEM协调控制从DAL、ConfigAcess、ServiceAccess获得的资源,提供给BLL使用。”,但是它是怎样被使用的能举例说明下吗?
    这个BEM协调控制我不知道是啥意思, 估计是控制DAL、ConfigAcess、ServiceAccess调用不同的资源 比如数据库是掉用ORACLE呢还是SQL SERVER  估计就是这个意思吧问题四:“Relation完成ORM无法完成的关系数据的访问”,ORM是将数据库中的关系数据转化为对象。而“Relation”指什么呢?怎样使用???它怎么可以完成ORM无法完成的关系数据的访问???最好举例描述下。
    Relation是指关系,这里我不是很明白 ORM就是对象关系映射啊...
      

  4.   

    问题五:“Security对整个系统提供安全支持”。如何提供支持的,大家能举几个例子吗?
    这个么...如何提供...自己写啊  什么验证啦等等问题六:“ErrorHandling对整个系统提供异常、错误处理机制,统一处理方法。”,具体如何处理,可以说说思路吗?
    晕,问题上就有写哦 错误处理机制,统一处理方法   出了错 看你怎么处理呗 输出log?显示错误页面?问题七:“Log记录系统业务处理日志。”,怎样记录日志。请举例说明。
    这个.. 怎么记录按照你自己的格式去记  比如说有可能要业务上的输出log或者测试log,还有错误log等等  按项目要求...
      

  5.   

    很典型的一个中小企业级应用的架构。
    设及系统架构的话题,楼主可以慢慢了解。如果要看例子:(把这个例子吃透了,对上面的理解也有七八成了)
    www.codeplex.com 索 Oxite。
      

  6.   

    ORM把数据库中的关系数据转换为对象,Relation完成ORM无法完成的关系数据的访问。
    -------------------------
    这句话前者是操作实体类的咚咚,后者其实就是处理SQL语句。
    这跟PDF.NET框架的思想差不多,也是ORM和SQL结合(SQL-MAP),详细内容间
    http://topic.csdn.net/u/20110906/13/213226f9-3880-481b-b4a0-ecc29774e9b9.html里面的架构图