java项目分层(待完善)
主要目的:将特定的内容固化到一个范围内,而不要扩散到整个软件中,这样在需求变更时,尽量减少代码的修改,主要依赖于接口的抽象
分层之间的规则:view层不能直接访问dao层的东西,只能调用service层,service层再调用dao层
mvc设计模式
主要的结构有:
- bean entity /model /domain等
对应数据库中的表,数据库中有几个表就对应有个几个类(例如:用户类,商品类) - dao层
数据库访问对象,主要用于与数据库进行交互,获取数据或者写入数据(增删改查),对应每一个表有自己单独的接口和接口实现类(放在dao下的impl文件中)- 接口对应:规范这个访问对象能做什么(增加或者删除)通常方法有 query、queryAll、update、save、delete
- 接口的实现:重写接口中的(增删改查)方法,只与数据库相关
- service层
主要对应业务逻辑层,分为两部分- 专门的接口定义
定义一些方法,例如判断会员是否存在,返回积分最高的会员,返回满足要求的会员列表 - 接口的实现类(放在service下的impl文件中)
实现接口,重写具体的方法
- 专门的接口定义
- web/controller层
控制器层 - views视图层
界面显示相关,调用的是service层对象