1.分层结构
所谓分层结构。把不同的功能代码封装成类,把相同功能的类封装在一个个的包中,也叫层。功能归类如下:
实体类:
封装数据,是数据的载体,在层与层之间进行传递,数据也就传递了。比如说要传递学生信息,把学生信息封装成一个Student对象,传递到其它的类中。如果有多个学生对象,则再次封装成集合,进行传递。我们把所有的实体类放在一个包中(层),层的命名通常用entity或model。数据库中有多少表,则程序中就有多少实体类。实体类的命名与表名一致,实体类中的属性名与表中的字段名一致。
持久化类:
这个层中的类与数据库进行交互,也就是数据持久化,但凡与数据库交互的代码都在这个层的类中,这个层的命名dao(database access obejct),层中的类的命名是:表名+Dao。通常数据库中有多少表,就有多少持久化类。
业务类:
业务类用于处理业务逻辑的代码。这个层的命名 service或 biz。类的命名:表名+Service。
Jsp页面:
表示层,用于呈现数据或收集数据。Servlet 类也属于表示层,它的作用就接收客户端的请求,并对请求进行分发,处理,再响应给客户端。命名:表名+Servlet
工具类:
在开发中,还会有一个工具类,这些工具类通常放一个util包中。(字符串的处理工具类,与数据库连接的工具,密码加密的工具类)
分层结构作用:
分层结构的开发如果要加功能,只需要在各层的类中添加方法就可以了,符合软件的开发原则:开闭原则。
开闭原则:
开表示添加代码的门是打开的,更改代码的门是关闭的。
分层结构的项目的缺陷是:代码增加了。
优点是:类与之间实现解耦,有利于合作开发,有利于后期维护,扩展。
层与层之间的访问关系:
web->Servlet->Service->dao->数据库 =>dao=>Service=>Servlet=>jsp
项目结构图:
开发过程中代码编写的顺序:
0.添加数据库表
1.添加实体类。
2.添加持久化层接口
3.添加持久化接口实现类
4.添加业务层接口
5.添加业务层接口实现类
6.添加Servlet
7.添加jsp 页面
2.MVC模式
MVC是一种软件结构开发的一种思想,注意,不是软件开发的设计模式。
软件开发设计有23种(单例,简单工厂,抽象工厂,观察者,桥接…)。
MVC 思想在上个世纪70年代就提出了。SpringMVC ,Struts2…
M: model 数据的业务模型。
C: controller 控制器,对请求进行处理。
V: view 视图,数据的显示或收集。
MVC 的项目结构与分层结构非常接近,只是在把各层的划分进行了细微的更改。
MVC的思想与分层结构的思想是一致的。
优点是:解耦,分工合作,维护扩展。
在开发中,如果是C/S项目,我们用分层结构处理,MVC只能用于B/S结构的项目。