第一,model
首先,model是mvc中的m,也就是模型。它指的是读取数据和改变数据的操作,它是与业务逻辑息息相关的操作。比如一个简单的功能"把学生添加到班组",就可以理解为一个数据处理过程,它向外暴露一个接口,外面的数据不需要知道这个接口具体是怎么实现的,也不需要知道它在各个数据库下的不同表现,我们只需要知道模型层暴露出来的接口即可。
第二,dal和dao
如果我们在模型里面直接写sql代码,那么当业务逻辑改变的时候,我们就需要开发者重写sql语句,这样,我们可以把这一层抽出来,也就是所谓的数据访问层,也就是通常我们所说的dal。其中dal是database access layer的简写,也就是"数据库访问层",它是一个概念,也可以理解为一个方案,它没有指定具体的实现,它是这一层的统称。
这样设计的好处就是我们的业务逻辑不用去调用具体的数据访问层的实现,也就是说,不管我们的业务逻辑怎么变,我们的接口是不变的。使用dal的优势主要有:①开发人员可以只关注某个结构中某一层的实现。②我们可以很容易用新的实现