JavaWeb学习笔记(十六)--web开发模式

1. JSP开发模式

SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式。

JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序。在这种模式下,JavaBean用于封装业务数据,JSP既负责处理用户请求,又显示数据。

Servlet+JSP+JavaBean(MVC)模式适合开发复杂的web应用。在这种模式下,Servlet负责处理用户请求,JSP负责数据显示,JavaBean负责封装数据。Servlet+JSP+JavaBean模式,程序各个模块之间层次清晰,web开发推荐使用此种方式。

2. MVC开发模式

MVC模式(Model–view–controller)是软件工程的一种软件架构模式,把软件的系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。

  • 模型(Model): 数据模型,javaBean、数据库记录。
  • 视图(View):显示数据。
  • 控制器(Controller):负责转发请求,对请求进行处理。

3. web开发的三层架构

实际在web开发中,我们除了按照MVC进行开发,还需要按照三层结构进行开发:

  • web层:为用户提供服务
  • 业务逻辑层(service层):为web层提供业务服务
  • 数据访问层(dao层):提供数据访问服务

浏览器发出请求后,Servlet接收请求,但是Servlet并不直接处理请求,而是调用一个Service组件进行处理,在Service组件会调用dao来获取数据,dao专门与数据库进行交互,从数据库中获取数据,并封装在一个JavaBean中,返回给Service组件,Service组件处理完业务后,会将处理后的数据封装回JavaBean(可能是另一个JavaBean),然后将封装后的JavaBean返回给Servlet,Servlet再调用JSP进行数据的显示。其中Servlet、JSP为Web层。service组件称为业务逻辑层,也叫Service层。dao 称之为数据访问层,也dao层。在开发过程中,为了层与层之间便于维护,通常会在层与层之间定义接口,在web层和service层定义service接口,在service层和数据访问层(dao)层,定义dao接口。将来如果dao层具体的实现变了(比如JDBC变成Hibernate,变成Mybites等),service层不用修改一行代码。
 

 

在使用三层结构开发时,经常会用包来组织不同层的程序:
com.bear这部分是你的域名,或者你自定义的包名:

包名功能
com.bear.domain
存放JavaBean
com.bear.dao
数据访问的接口
com.bear.dao.impl
数据访问接口的实现
com.bear.service
业务访问的接口
com.bear.service.impl
业务访问接口的实现
com.bear.web.controller
处理用户请求的Servlet
com.bear.web.ui
给用户提供用户界面(通过重定向或者转发调用jsp)
com.bear.web.listener
监听器(后面会讲)
com.bear.web.filter
过滤器(后面会讲)
com.bear.utils
工具类
com.bear.exception
异常类(根据需要创建)
junit.test
测试类
WEB-INF/jsp
保存网站所有的JSP(外界无法直接访问,只能通过程序内部转发或重定向)

转载于:https://www.cnblogs.com/songchj-bear/p/10960753.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值