JavaWeb之MVC设计模式

本文详细介绍了JavaWeb中的MVC设计模式,解释了模型、视图和控制器的作用,以及它们在三层架构中的位置。通过创建一个Demo,展示了如何组织包结构,包括模型层(bean和dao包)、业务逻辑层以及数据访问层。此外,还阐述了三层架构与MVC的区别和联系,并提供了部署和实现数据库操作的具体步骤。
摘要由CSDN通过智能技术生成

JavaWeb之MVC设计模式

写Java Web项目时会发现,一个中型或者大型项目 随着代码的增多,会发现:代码既可以写在src目录下,也可以

写在WebContent目录下。src下可以建很多包 ,WebContent下可以建很多文件夹。

所以问题就来了:一个新的类 到底往哪个目录下的哪个文件夹里写?

此时解决办法就是:需要一个模式去规范,到底哪个类该往哪里写。

1.mvc

在Web MVC模式下,模型无法主动推数据给视图,如果用户想要视图更新,需要再发送一次请求(即请求-响应模

型)。

M(Model) 模型 : 应用程序的核心功能,管理这个模块中用的数据和值(bean,dao);

V(View )视图: 视图提供模型的展示,管理模型如何显示给用户,它是应用程序的外观;(jsp/html)

C(Controller)控制器: 对用户的输入做出反应,管理用户和视图的交互,是连接模型和视图的枢纽。

(servlet/service)

2.三层架构

三层架构 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层

(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。

1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。 jsp/html

2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。

servlet,service

3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。dao

表现层实现的代表作品是Struts,springmvc框架,

业务层实现的代表作品是Spring,

持久层实现的代表作品是Hibernate,mybatis。

层就相当于一个黑盒子,我们不用知道它内部怎么实现,只需要知道如何去调用它就行了。每层只与上下相邻的两

层打交道。当一层内部由于技术变迁发生变化时,只要接口不变,其他层不用做任何改变。分层之后灵活性提高,

也便于团队分工开发。

3.三层架构和MVC的区别和联系

在这里插入图片描述

设计demo

1.包结构

SRC目录下

创建com.java.web包,下面存放对应的servlet的代码。

创建com.java.service包,下面存放业务逻辑的代码。servlet和dao的衔接层,servlet调取service,service调取dao。

创建com.java.dao包,下面放数据库的操作信息。

创建com.java.bean包,下面放实体类。

创建com.java.util包,下面放工具类。

2.DemoM-model,模型层,bean包和dao包

查询数据库学生表中学生的所有信息

1.创建上述包

2.部署

2.1.页面上加入请求指令
<h1><a href="/getallstudent">student</a></h1>
2.2.在web包新建一个类,存放servlet

1.创建xxServlet类

2.继承与 HttpServlet

3.重写service方法

package com.java.web;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

这是一个基于JavaWeb的学生管理系统,采用了MVC设计模式MVC模式是一种软件设计模式,将应用程序分为三个部分:模型(Model)、视图(View)和控制器(Controller)。在这个项目中,没有使用其他框架,而是采用了纯servlet+jsp来实现。 该系统的功能包括管理员、教师和学生三个角色。管理员可以管理学生信息,包括添加、删除和修改学生信息。教师可以查看学生信息,并进行一些教学管理操作。学生可以查看自己的信息,并进行选课等操作。 在这个系统中,主要的数据结构是学生的信息,包括姓名、性别、籍贯、QQ、邮箱等。这些信息可以作为学生的不同属性进行处理。 这个项目的具体实现可以参考以下步骤: 1. 创建一个JavaWeb项目,并配置好相关的环境。 2. 设计数据库表结构,包括学生表、教师表和管理员表,以及其他相关表。 3. 创建模型层(Model),包括学生、教师和管理员的实体类,以及与数据库交互的DAO类。 4. 创建视图层(View),包括学生信息展示页面、教师信息展示页面和管理员操作页面等。 5. 创建控制器层(Controller),处理用户的请求,调用相应的模型和视图进行处理。 6. 配置web.xml文件,将请求映射到相应的控制器。 7. 编写相应的servlet和jsp页面,实现具体的功能和界面展示。 8. 运行项目,测试各个功能是否正常。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值