今天用了一个多小时的时间学习anf的dal,感觉自己的对anf有了进一步的了解,随之也产生的疑问,在些点发表一点自己的体会。
using 本人很菜
(1)dal(数据层)类组成:
anf的数据层主要是forumsdataprovider(简称:fdp)和sqldataprovider(简称:sdp),以下的“fdp”及“sdp”指代上述名称。
(2)dal(数据层)类关系:
forumsdataprovider和sqldataprovider这两个class,“fdp”是个abstract class,“sdp”继承“fdp”,“sdp”内提供实现了“fdp”的所有abstract的type object 和 type method。
(3)dal(数据层)类职能:
“fdp”是base class,全部对数据库的底层操作封装在“sdp”内,底层通过idatareader访问sp和tsql,基本上一个sp内就封装了tsql-siud,通过delete mark的方式删除数据,通过传入的primary id判断是update还是insert操作。
(4)dal(数据层)访问及操作数据库步骤:
当某一个页面要对数据进行访问时,首先“sdp”通过查询对像entityclass对应的arraylist或是arraylist的封装类,的instance(被api cache,本人认为是anf提高数据库读取速度的主要手段)get方法,通过“反射方式”反射构造-getconstructor“fdp”的abstract的method和object(实际执行的还是“sdp”的方法),最后bind给repeater或datalist之类的对像,完成数据读取。
本人水平很菜,不怕大家扔砖……