三层架构
接触过应用这种架构方式的项目代码,但一直没有深入了解,想不到在学jdbc课程的时候能接触到一个相对系统的介绍和实例,记录一下。
分层目的:高内聚,低耦合(软件工程导论经常提)
- 每一次相互独立分工明确,修改一层不影响其它层。
- 每一层中都不应该出现其他层的技术
一、表示层(View)
- 用于实现和用户进行数据交互
展示数据,接收数据 - 类的命名:XxxView,Xxx一般表示业务模块
理解:
大概就是一个项目的前端部分,通过网页表单,或程序输入接收用户提交的数据,在将其结果表示出来。
二、业务逻辑层(Service)
- 用户实现 具体的业务逻辑操作
- 类和接口的命名:XxxService、XxxServiceImpl(面向接口)
- 方法的命名:使用具体业务名。
理解:
项目的主要部分,核心功能的实现,复杂的运算,大部分的代码和难度都体现在这一层。
三、数据访问层(DAO)
也称持久层(Database Access Object)
- 用于实现 对数据的访问操作,即数据的持久化
- 类和接口的命名:XxxDao、XxxDaoImpl
- 方法命名:同上
理解:
与数据库进行交互,增删改查,需要大量的sql语句。使用框架可以避免冗长复杂的sql语句(大概)。