在J2EE中,有很多组件,这些组件针对不同的功能,通过选择合适的组件,可以构建开发项目,简化开发。
一些常用的组件:
beanutils: 对java bean进行操作
dbcp:数据库连接池
dbutils:对数据库操作
fileupload:文件的上传与下载
logging:日志
hibernate:面向对象的方式对数据表进行操作
jbpm:业务流程管理 Java Business Process Management
J2EE开发流程:
1)使用Servlet:
客户端<--请求/响应-->服务器<--调用/显示-->Servlet<--访问-->数据库
这样使用Servlet的开发流程有两个缺陷:
① Servlet不擅长显示
② Servlet中对数据库访问的代码,重用性低
2)使用JSP
客户端<--请求/响应-->服务器<--调用/显示-->JSP<--访问-->数据库
使用JSP虽然解决了显示的问题,但是也有两个缺陷:
① JSP页面中需要写大量的Java代码,显示奇怪,维护麻烦,不如直接维护Java类简单
② Jsp中对数据库以及业务逻辑的代码不能很好的重用
基于这样的问题,衍生出MVC设计模式
1、MVC设计模式
如图所示,Servlet作为控制器,请求收到之后,调用POJO(普通JavaBean)对数据库进行访问,得到数据返回给Servlet,
将数据转发给JSP页面,JSP页面可以使用JSTL(JSP 标准标签库 JSP Standard Tag Library)作为显示。
MVC:Model 模型, View 视图, Controller控制器
M:模型,应用程序的主体部分,负责业务数据和业务逻辑;一个模型可以为多个视图提供数据;可重用性高。
V:视图,用户看到并与之交互的界面,向用户显示数据;接收用户的数据;不进行任何实际的业务处理
C:控制器,接受用户的输入并调用模型和视图去完成用户的需求。
上图中:Servlet作为C控制器,POJO与数据库作为M模型,JSP作为V视图