【JavaWeb-9】MVC设计模式、处理业务逻辑代码的分层思想、目录结构参照、实践案例

1、B/S也成为瘦客户端,C/S叫胖客户端。JavaWeb设计模式,第一种叫model1(JSP+useBean),基本已经废弃,教学的时候可以用用。第二种叫model2(JSP+servlet+javaBean),其实本质上是模仿MVC的模式,其中servlet是C(控制器),接收到请求后,转到M叫javaBean(模型,主要用3个域对象进行数据的操作)进行一些数据的获取和封装,然后给JSP使用(View,视图)。

2、分层思想。分层只是给MVC里的servlet分层了,因为它要做的事情有些多。

——来了一个请求
——servlet(只管获取数据、业务逻辑、转发)
——servlet给对应的服务方法service(比如注册登录等)
——service调用DAO(Data Access Object),执行增删改查等操作
——DAO层再去与DB交互实现数据的持久化。
这里写图片描述

3、分层思想具体体现在我们的package上,我们一般分为以下类别。
——com.hello.entity或com.hello.domain,主要放实体类的。
——com.hello.dao,主要放接口的
——com.hello.dao.impl,主要放实现类,后续再使用框架时十分有用
——com.hello.service,主要放服务接口的
——com.hello.service.impl,主要放服务实现类的
——com.hello.exception,主要放自定义异常类的
——com.hello.utils,主要放工具类的
——com.hello.web.servlet,主要放表示层的servlet类

4、实际开发的时候,先设计数据库,根据数据库来设计实体类等。导入需要的jar包,然后写接口,实现接口方法等等。

5、练习注册登录功能。

——把一个对象当做参数传来传去,这一点有点类似iOS的开发。下面是MVC思想的开发实践。

这里写图片描述

——拿注册来说。首先是一个register.jsp,用户填写表单后,表单的action目的地是doRegister的servlet,servlet拿到后做三件事,第一件事接受表单数据(用前人的轮子接受),第二件是处理业务逻辑(这里就是把这个包含表单添加进数据库,当然实际传递的不是一个个零散数据,而是带有数据的User对象),第三件是转发,也就是转发到index.jsp页面。

——其中,我们延伸出来很多类型的package装着不同作用的接口和类,主要原因就在于要把第二步的处理业务逻辑分层。首先,我们在上面servlet中处理业务逻辑调用的是service包下的类UserServiceImpl(这个类实现了接口UserService);然后我们在这个UserServiceImpl类中调用了UserDaoImpl的添加数据到数据库的方法(当然这个UserDaoImpl也是实现了接口UserDao),最后我们UserDao里面与数据库连接关闭等一些交互的代码我们是封装在了utils包下的DBUtil类里面。最后我们不能忘记的是很多外部jar包被我们放在了lib里面。

案例源代码地址:javaEE简单MVC模式案例

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值