Subms超市管理系统(主要谈MVC三层架构)
(Subms)超市订单管理系统
运⽤技术java、Servlet、(JSP、js、jquery、css)不做介绍、Tomcat服务器
主要锻炼的就是如何更深层次的理解MVC三层架构,我们的这个超市订单管理系统实际上就⼀个增删改查的⼀个项⽬。主要说说⼀些⾥⾯的业务逻辑跟架构思想
简单说说MVC三层架构
⾸先来说,三层架构与MVC的⽬标⼀致:都是为了解耦和、提⾼代码复⽤。MVC是⼀种设计模式,⽽三层架构是⼀种软件架构。
三层架构分为:表现层(UIl)(web层)、业务逻辑层(BLL)(service层)、数据访问层(DAL)(dao层) ,再加上实体类库(Model)
1.实体类库(Model),在Java中,往往将其称为Entity实体类。数据库中⽤于存放数据,⽽我们通常选择会⽤⼀个专门的类来抽象出数据表的结构,类的属性就⼀对⼀的对应这表的属性。
·⼀般来说,Model实体类库层需要被DAL层,BIL层和UI层引⽤。
2.数据访问层(DAL),主要是存放对数据类的访问,即对数据库的添加、删除、修改、更新等基本操作 。DAL就是根据业务需求,构造SQL语句,构造参数,调⽤帮助类,获取结果,DAL层被BIL层调⽤
3.业务逻辑层(BLL) BLL层好⽐是桥梁,将UI表⽰层与DAL数据访问层之间联系起来。所要负责的,就是处理涉及业务逻辑相关的问题,⽐如在调⽤访问数据库之前,先处理数据、判断数据。
各层引⽤关系如下图
mvc与三层架构对应的关系如下图
接下来我会围绕着三层架构来简述这个项⽬
项⽬搭建
搭建⼀个Maven web项⽬
配置Tomcat
测试项⽬是否运⾏起来
导⼊项⽬中会遇到的jar包;
.。jsp,servlet,mysql驱动,jstl,stand,,,(依赖)
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<!--standard-->
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.36</version>
</dependency>
<!-- jstl标签注解依赖-->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!-- servlet 依赖-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
<!-- jsp依赖-->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
</dependency>
<!-- mvnrepository/artifact/mysql/mysql-connector-java --> <!-- mysql依赖我的数据库版本是8.0.23版本不同的去官⽹换新的-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.23</version>
</dependency>
- 创建项⽬包结构
编写实体类 上⾯介绍了链表映射就是把数据库中的字段封装成⼀个个属性 给每个字段加上get,set重点
编写基础公共类,在resources下创建⼀个db.properties
这个⽂件是数据库配置⽂件,其中配置如下
#数据源
sql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/smbms?ServerTimezone=UTC
username=root
password=123456
1.编写Dao操作数据空公共类
公共类结束mvc和三层架构的理解
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论