当前位置: 首页 > news >正文

SpringMVC(二)

视频链接:https://www.bilibili.com/video/BV1oP4y1K7QT?vd_source=9545770e4a2968c05878ffac8589ec6c
视频选集:P45— P83

文章目录

  • 1.SpringMVC拦截器
    • 1.1 拦截器执行原理
    • 1.2 拦截器执行的时机
    • 1.3 拦截器实现的两种方式
    • 1.4 拦截器实现的步骤
    • 1.5 开发权限验证拦截器
    • 1.6 注册拦截器+测试功能
  • 2.SSM整合
    • 2.1 整合的步骤
    • 2.2 建库+建表
    • 2.3 创建项目+目录修改+pom.xml文件修改
    • 2.4 添加applicationContext_ mapper.xml文件
    • 2.5 添加applicationContext_ service.xml文件
    • 2.6 添加spirngmvc.xml文件
    • 2.7 web.xml文件开发
    • 2.8 实体类user
    • 2.9 接口文档分析
    • 2.10 UserMapper.java接口
    • 2.11 UserMapper.xml实现
    • 2.12 service接口
    • 2.13 service接口实现类
    • 2.14 单元测试类测试业务逻辑层的功能
    • 2.15 控制器开发
    • 2.16 浏览器测试功能
    • 2.17 改造控制器支持跨域访问+端口修改
    • 2.18 Element UI前端框架介绍
    • 2.19 node.js的安装
    • 2.20 前端项目构建
    • 2.21 前端项目运行+效果演示
    • 2.22 Vue项目结构分析
    • 2.23 组件和路由配置
    • 2.24 钩子函数created()
    • 2.25 表单详解
    • 2.26 更新分析
    • 2.27 删除功能
    • 2.28 分页插件
    • 2.29 增加用户
    • 2.30 清空数据

1.SpringMVC拦截器

  • 针对请求和响应进行的额外的处理.在请求和响应的过程中添加预处理,后处理和最终处理.
  • SpringMVC中的Interceptor拦截器,它的主要作用是拦截指定的用户请求,并进行相应的预处理与后处理。
  • 其拦截的时间点在“处理器映射器根据用户提交的请求映射出了所要执行的处理器类,并且也找到了要执行该处理器类的处理器适配器,在处理器适配器执行处理器之前”。
  • 当然,在处理器映射器映射出所要执行的处理器类时,已经将拦截器与处理器组合为了一个处理器执行链,并返回给了中央调度器。

1.1 拦截器执行原理

在这里插入图片描述

1.2 拦截器执行的时机

  1. preHandle ():在请求被处理之前进行操作【预处理】
  2. postHandle():在请求被处理之后,但结果还没有渲染前进行操作,可以改变响应结果【后处理】
  3. afterCompletion:所有的请求响应结束后执行善后工作,清理对象,关闭资源【最终处理】

1.3 拦截器实现的两种方式

  • 继承HandlerInterceptorAdapter的父类
  • 实现Handlerlnterceptor接口,实现的接口,推荐使用实现接口的方式

Handlerlnterceptor接口中含有三个方法:preHandle ()、postHandle()、afterCompletion

1.4 拦截器实现的步骤

  1. 改造登录方法,在session中存储用户信息,用于进行权限验证
  2. 开发拦截器的功能.实现HandlerInterceptor接口,重写preHandle()方法
  3. 在springmvc . xml文件中注册拦截器

1.5 开发权限验证拦截器

在这里插入图片描述
定义拦截器:

在这里插入图片描述

1.6 注册拦截器+测试功能

在这里插入图片描述
展示拦截效果:
在这里插入图片描述

2.SSM整合

2.1 整合的步骤

0)建库,建表
1)新建Maven项目,选择webapp模板
2)修改目录
3)修改pom.xml文件(使用老师提供)
4)添加jdbc.properties属性文件
5)添加SqlMapConfig.xml文件(使用模板)
6)添加applicationContext_ mapper.xml文件(数据访问层的核心配置文件)
7)添加applicationContext_ service.xml文件(业务逻辑层的核心配置文件)
8)添加spirngmvc.xml文件
9)删除web.xml文件,新建,改名,设置中文编码,并注册spirngmvc框架,并注册spring框架
10)新建实体类user
11)新建UserMapper.java接口
12)新建UserMapper.xml实现增删查所有功能,没有更新
13)新建service接口和实现类
14)新建测试类,完成所有功能的测试
15)新建控制器,完成所有功能
16)浏览器测试功能

2.2 建库+建表

建表:
在这里插入图片描述
插入值:
在这里插入图片描述
展示效果:
在这里插入图片描述

2.3 创建项目+目录修改+pom.xml文件修改

创建项目:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
目录修改:
在这里插入图片描述
按照这样的方式创建test,java,resource,并修改文件属性:
在这里插入图片描述
创建controller,mapper,service,pojo
在这里插入图片描述
pom.xml文件修改:

版本号集中定义
在这里插入图片描述
在这里插入图片描述
后面实现依赖:
在这里插入图片描述
插件配置:
在这里插入图片描述

2.4 添加applicationContext_ mapper.xml文件

添加jdbc.properties属性文件【粘贴复制】:
在这里插入图片描述
添加SqlMapConfig.xml文件:
在这里插入图片描述
在这里插入图片描述
开发spring,配置applicationContext_mappr.xml文件:
在这里插入图片描述
在这里插入图片描述

2.5 添加applicationContext_ service.xml文件

在这里插入图片描述
在这里插入图片描述

2.6 添加spirngmvc.xml文件

在这里插入图片描述
在这里插入图片描述

2.7 web.xml文件开发

  1. 删除web.xml文件,新建,改名,
  2. 设置中文编码,并注册spirngmvc框架,并注册spring框架【整个是web项目,发送到远程的tomcat服务器上在那里启动驱动器】

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.8 实体类user

先添加可视化:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.9 接口文档分析

在这里插入图片描述
编写userMapper接口,需要按照接口文档要求编写:【注释为查询接口要求】
在这里插入图片描述

2.10 UserMapper.java接口

分页查询接口:
在这里插入图片描述
增加接口:
在这里插入图片描述

删除接口:
在这里插入图片描述

行数接口:
在这里插入图片描述

2.11 UserMapper.xml实现

运用动态代理

创建UserMapper.xml文件:
在这里插入图片描述
在这里插入图片描述
编写代码
在这里插入图片描述
在这里插入图片描述
分页查询:
在这里插入图片描述
增加功能:【按顺序粘贴属性】
在这里插入图片描述

删除功能:
在这里插入图片描述

按条件计算总行数:
在这里插入图片描述

namespace:
在这里插入图片描述

2.12 service接口

查询用户页数,增加,删除
在这里插入图片描述

2.13 service接口实现类

在这里插入图片描述

2.14 单元测试类测试业务逻辑层的功能

spring测试依赖:【在上面已经依赖】
在这里插入图片描述
在test/java下面创建test/MyTest.java
第一个测试:
在这里插入图片描述
其它测试方法:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.15 控制器开发

开发分页查找功能:
在这里插入图片描述
其它方法:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.16 浏览器测试功能

在这里插入图片描述
在这里插入图片描述
去除冗余:

在这里插入图片描述

改为
在这里插入图片描述

2.17 改造控制器支持跨域访问+端口修改

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.18 Element UI前端框架介绍

Element UI官网地址:https://element.eleme.cn/#/zh-CN/component/installation
Element UI是Vue使用的前端的框架,通过官网可以自行学习.

2.19 node.js的安装

查看版本编号
node -V
npm-v

node.js的安装是为了使当前的计算机使用vue的框架,预安装的工具.有点类似于运行java程序时必须安装JDK一样的道理.

2.20 前端项目构建

在这里插入图片描述

2.21 前端项目运行+效果演示

File->Settings
在这里插入图片描述
然后重启IDEA,运行后端程序
再打开前端项目,File->Open
在这里插入图片描述
在这里插入图片描述

2.22 Vue项目结构分析

在这里插入图片描述

2.23 组件和路由配置

在这里插入图片描述

2.24 钩子函数created()

在这里插入图片描述

2.25 表单详解

在这里插入图片描述
在这里插入图片描述

2.26 更新分析

在这里插入图片描述
在这里插入图片描述

2.27 删除功能

在这里插入图片描述
在这里插入图片描述

2.28 分页插件

在这里插入图片描述

2.29 增加用户

在这里插入图片描述
在这里插入图片描述

2.30 清空数据

在这里插入图片描述

在这里插入图片描述

相关文章:

  • 操作系统第九讲——线程的实现方式和多线程模型
  • 爬虫——第一次笔记 urllib的基本使用 urllib一个类型,六个方法 urllib下载 urllib请求对象的定制
  • 神经网络电子书,神经网络入门书
  • 面试说:聊聊JavaScript中的数据类型
  • 深入理解计算机系统——第三章 Machine-Level Representation of Programs
  • C# ZXing.net解码测试(QRCode、DataMatrix、1D-Barcode一维码条码)
  • 新手轻松日赚300+搬砖项目详解
  • 信号分析与处理——对于傅里叶信号一些整理
  • 2023陕西师范大学择校分析
  • 数字藏品带给联盟链有哪些机会?
  • 搭建mybatis环境实现crud
  • ROS2入门学习
  • 【JavaSE】类和对象重点知识荟萃
  • JavaScript DOM——修改 HTML 内容
  • 【二叉树:3】线索二叉树
  • 【从零开始安装kubernetes-1.7.3】2.flannel、docker以及Harbor的配置以及作用
  • ECMAScript入门(七)--Module语法
  • ES10 特性的完整指南
  • es6(二):字符串的扩展
  • Intervention/image 图片处理扩展包的安装和使用
  • Sass Day-01
  • Vue实战(四)登录/注册页的实现
  • windows下使用nginx调试简介
  • 复习Javascript专题(四):js中的深浅拷贝
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 嵌入式文件系统
  • 写给高年级小学生看的《Bash 指南》
  • 延迟脚本的方式
  • 移动端 h5开发相关内容总结(三)
  • 带你开发类似Pokemon Go的AR游戏
  • 翻译 | The Principles of OOD 面向对象设计原则
  • 好程序员大数据教程Hadoop全分布安装(非HA)
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (+4)2.2UML建模图
  • (C++)八皇后问题
  • (ZT) 理解系统底层的概念是多么重要(by趋势科技邹飞)
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (顺序)容器的好伴侣 --- 容器适配器
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • (转)树状数组
  • (转)我也是一只IT小小鸟
  • .jks文件(JAVA KeyStore)
  • .Net Core缓存组件(MemoryCache)源码解析
  • .Net Remoting(分离服务程序实现) - Part.3
  • .Net Web项目创建比较不错的参考文章
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .net 调用php,php 调用.net com组件 --
  • .Net 知识杂记
  • .NET/C# 将一个命令行参数字符串转换为命令行参数数组 args
  • .NET简谈设计模式之(单件模式)
  • .Net小白的大学四年,内含面经
  • /bin、/sbin、/usr/bin、/usr/sbin