三层架构
1.概念
与MVC设计模式目标一致:都是为了解耦合、提高代码复用
区别:二者对项目理解的角度不同
2.组成
-
表示层(USL,User Show Layer : 视图层)
-
前台:对应于MVC中的View,用于和用户交互、界面的显示
jsp、js、html、css、jQuery等前段技术
代码位置:WebContext
-
后台:对应于MVC中的Controller,用于控制跳转、挑用业务逻辑层
servlet、springMVC、Struts2
代码位置:XXX.servlet包
-
-
业务逻辑层(BLL,Business Logic Layer : services层)
- 接收表示层的请求调用
- 组装数据访问层,逻辑性的操作
- 代码位置:XXX.service包中(或者xxx.manger,xxx.bll)
-
数据访问层(DAL,Data Acces Layer : Dao层)
- 直接访问数据库的操作,原子性的操作
- 代码位置:xxx.dao包
out:PrintWriter out = response.getWriter();
session:request.getSession();
application:request.getServletContext();
3.实例
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-11cmqYhI-1603086765563)(F:\java学习\javaee\图片\1-1-3三层实例)]
优化:
1.加入接口
接口与实现类的命名规范
接口:interface 起名:IXXXService
实现类:implement 起名:XXXServiceImpl
以后使用接口/实现类时,推荐写法:
接口 x = new 实现类