通过学习Spring、Spring MVC、MyBatis、jQuery框架知识来实现一个简单的车辆管理系统。该系统在开发过程中,整合了相关技术框架,并在整合的基础上实现了业务应用系统的车辆管理模块功能。以三层架构应用业务场景作为实践案例,阐述Spring、Spring MVC、MyBatis、jQuery框架实用技术,结合主流持久层框架MyBatis,讲述企业级Spring框架开发技术栈知识。
在本课程中,会讲到如下技术栈内容:
一、系统概述
1、系统功能介绍
2、系统架构设计
二、数据库设计
1、车辆信息表
三、系统环境搭建
1、准备数据库资源
2、准备项目环境
2.1 创建maven项目
2.2 配置pom.xml引入依赖资源
2.3 编写Mybatis的配置文件
2.4 编写Spring的配置文件spring.xml
2.5 编写SpringMVC的配置文件springmvc.xml
2.6 导入老师提供的静态资源到webapp文件下
2.7 编写项目配置文件web.xml
2.8 测试
3、使用mybatis反向生成实体类、dao和映射文件
3.1 反向生成配置文件generatorConfig.xml
3.2 运行插件
3.3 测试
3.4 生成完毕之后的目录结构
四、实战案例
1、查询车辆
1.1 多条件分页查询业务逻辑层
1.2 多条件分页查询控制器层
1.3 多条件分页查询返回结果类封装
2、添加车辆
2.1 业务逻辑层
2.2 控制器层
3、修改车辆
3.1 根据主键查询车辆信息回显到更新页面
3.2 执行更新页面提交操作
4、删除车辆
4.1 业务逻辑层
4.2 控制器层
5、文件上传
5.1 提交上传车标图片
本课程适合人群: 本课程是来自一线开发者的实战经验总结,对三层架构开发、设计感兴趣的所有技术人员。
来源:《服务号-薇云科技》
一、系统概述
1、系统功能介绍
本系统后台技术栈使用Spring、Spring MVC、MyBatis框架编写,前台页面使用Html模版和jQuery框架完成页面信息展示功能。车辆管理业务模块的主要功能包括:查询车辆、添加车辆、修改车辆、删除车辆、文件上传。
2、系统架构设计
系统根据功能的不同,项目结构可以划分为如下几个层次。
持久对象层(也称持久层或持久化层):该层由若干持久化类(实体类)组成。
数据访问层(DAO层):该层由若干Mapper接口和MyBatis映射文件组成。接口的名称统一以Mapper结尾,且MyBatis的映射文件名称要与接口的名称相同。
业务逻辑层(Service层):该层由若干Service实现类组成。在本系统中,业务逻辑层统一使用Service结尾。该层主要用于实现系统的业务逻辑。
Web表现层:该层主要包括Spring MVC中的控制器Controller类和Html模板页面。控制器类主要负责拦截用户请求,并调用业务逻辑层中相应组件的业务逻辑方法来处理用户请求,然后将相应结果以Json的数据形式返回给前端Html模板页面进行前端业务信息的展示。
二、数据库设计
本系统数据库使用Mysql5,主要涉及车辆管理功能,因此在系统中会涉及车辆信息表和驾驶员信息表。表结构如下所示。
1、车辆信息表
java
CREATE TABLE `car` (
`carId` int NOT NULL AUTO_INCREMENT COMMENT ' 车辆ID',
`carName` varchar(50) NULL DEFAULT NULL COMMENT '车辆名称',
`driver` varchar(50) NULL DEFAULT NULL COMMENT '驾驶员',
`carNumber` varchar(30) NULL DEFAULT NULL COMMENT '车牌号',
`buyTime` date NULL DEFAULT NULL COMMENT '车辆购买时间',
`carLogo` varchar(150) NULL DEFAULT NULL COMMENT '车标',
`isDel` int NULL DEFAULT 0 COMMENT '是否删除:1-已删除 0-未删除',
PRIMARY KEY (`carId`) USING BTREE
) ENGINE = InnoDB;
三、系统环境搭建
1、准备数据库资源
通过Navicat Premium 15登录数据库后,创建一个名称为bjwykjssm的数据库,并选择该数据库。通过SQL命令将资源中提供的car.sql脚本在Navicat Premium 15的新建查询中执行。其具体实现SQL命令如下。
1)创建数据库
CREATE DATABASE bjwykjssm;
2)创建车辆信息表
java
CREATE TABLE `car` (
`carId` int NOT NULL AUTO_INCREMENT COMMENT ' 车辆ID',
`carName` varchar(50) NULL DEFAULT NULL COMMENT '车辆名称',
`driver` varchar(50) NULL DEFAULT NULL COMMENT '驾驶员',
`carNumber` varchar(30) NULL DEFAULT NULL COMMENT '车牌号',
`buyTime` date NULL DEFAULT NULL COMMENT '车辆购买时间',
`carLogo` varchar(150) NULL DEFAULT NULL COMMENT '车标',
`isDel` int NULL DEFAULT 0 COMMENT '是否删除:1-已删除 0-未删除',
PRIMARY KEY (`carId`) USING BTREE
) ENGINE = InnoDB;
2、准备项目环境
Maven是一个先进的项目管理工具,它用于把源代码构建成可发布的项目(包括编译、打包、测试)。
2.1 创建maven项目
设置Maven:
设置Maven主程序路径和配置文件setting.xml, 并修改配置文件参数设置,
java
<!--设置Maven本地资源库路径-->
<localRepository>D:\repository</localRepository>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
Maven构件项目所使用的插件、第三方依赖库都集中存放在本地资源库中。
根据Maven约定优于配置原则,源代码位于/src/main/java路径下;资源文件位于/src/main/resources路径下;测试代码位于/src/test路径下;编译生成的class文件位于/target/classes路径下;项目产生的一个jar文件位于/target路径下。
2.2 配置pom.xml引入依赖资源
Maven自动从远程资源库下载项目所依赖的各种JAR包和Maven用到的插件到我们本地的资源库中。