三层架构:软件设计架构
- 界面层(表示层)we:用户看的得界面。用户可以通过界面上的组件和服务器进行交互
- 业务逻辑层service :处理业务逻辑的。
- 数据访问层dao:操作数据存储文件。
- web层:表现层,表示层业务层, 与客户端就行交互
- service层:业务层,业务逻辑层,完成功能( (Business Delegate))
- dao层:数据持久访问层,持久层,操作数据库( (Data Access Object))
额外的包
* domain包(域):放javabean , 代表一个对象模块
比如一个商城的项目,商城主要的模块就是用户,订单,商品三大模块,那么这三块数据就可以叫做三个域,domain包里就是存的就是这些数据
* util包:放工具类
* entity(实体): entity包中的类是必须和数据库相对应的, user表啥的
不仅Java的web开发,要符合MVC思想。几乎所有的应用开发,如果按照MVC思想,都会变的很方便维护。
* M:Model模型层,指数据的封装,JavaBean
* V:View视图层,指页面显示,JSP
* C:Controller控制层,指功能的逻辑实现,Servlet
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。
DO(Domain Object):领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。
PO(Persistent Object):持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久层是关系型数据库,那么,数据表中的每个字段(或若干个)就对应PO的一个(或若干个)属性。