秋招突击——第三弹——Java的SSN框架快速入门——SpringMVC

2024-06-15 17:44

本文主要是介绍秋招突击——第三弹——Java的SSN框架快速入门——SpringMVC,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 说明
    • SpringMVC简介
      • 入门案例
      • 入门案例的工作流程
        • 配置环境的问题
        • 步骤总结
        • 注释学习
        • 开发模式
        • Severlet容器类配置
        • 入门案例工作流程分析
        • Bean加载控制
      • Postman工具请求
    • 请求和响应
      • 请求映射路径
        • 请求参数
        • 普通参数
          • 设置过滤器,对输入进行处理
        • Json数据传递参数
        • 注释学习
        • 日期型参数传递
      • 响应数据
        • 响应的不同内容
    • REST风格(重要)
      • 风格简介
      • 入门案例
        • 注解学习
        • 总结
      • 快速开发
    • 案例:SSM整合
      • 表现层和前端数据数据传输协议实现
    • SSM整合——异常处理
      • 统一集中异常
      • 统一抛出异常
    • SSM整合——前后台协议联调
      • 列表功能
      • 添加功能
      • 修改功能
      • 删除功能
      • 汇总
    • 拦截器
      • 拦截器的概念
      • 入门案例
      • 拦截器的参数
      • 拦截器链配置
    • 总结

说明

  • 不能看过就跳过,截图可以,但是如果提到了不会的概念,要回去翻一下,然后,把翻到的东西,在粘贴到当前的目录下方,住打一个快捷。

SpringMVC简介

  • web开发技术,和serverlet相类似
  • 基于Java实现的MVC模型的轻量级web框架
    在这里插入图片描述

学习目标

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

  • 数据层
    • MyBatis
  • 表现层
    • SpringMVC

入门案例

  • 下述实在pom中定义坐标
    在这里插入图片描述

  • 然后是spring技术,就需要创建对应的bean,需要使用注解进行说明

  • 什么是bean

    • 在这里插入图片描述
    • 这里是使用注解进行开发的,web应用是标注在表现层的,所以需要使用Controller体现
    • 在这里插入图片描述
  • 相关说明

    • RequestMapping说明访问路径
    • 函数是执行对应路径的时候,执行的函数
      在这里插入图片描述
  • SpringMVC的配置类,具体有两个操作,分别如下

    • 指明是Spring的配置类,所以要增加@Configuration说明
    • 指明Bean的搜索路径,所以要增加@ComponentScan
      在这里插入图片描述

在这里插入图片描述

  • Spring的环境启动了,需要要求Tomcat加载Spring启动的东西
    • 告诉Tomcat容器,加载Spring的配置
    • 配置拦截所有请求,说明那些请求交给SpringMVC处理

入门案例的工作流程

  • 导入坐标
    在这里插入图片描述

  • 创建对应的controller对象
    在这里插入图片描述

  • 创建对应的配置类,加载对应的bean,并加载扫描空间

在这里插入图片描述

  • 创建对应的tomcat的配置类,说明容器的对象
    • 定义一个servlet容器启动的配置类,在里面加载spring的配置

在这里插入图片描述

配置环境的问题
  • 这里出现了配置环境的问题,原来下载的是java10,jdk22,然后对应的tomcat是10.0,跑不起来,这里换成java 8,然后jdk1.8,重新下载新的tomcat就行了。
  • 最终的运行结果如下

在这里插入图片描述

步骤总结

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

注释学习

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

开发模式

在这里插入图片描述

Severlet容器类配置

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

入门案例工作流程分析
  • 本质是将springmvc的配置,加载到tomcat的容器中,然后由tomcat统一进行处理。
    在这里插入图片描述
  • 所有的请求都是由Springmvc完成的。
    在这里插入图片描述
Bean加载控制

在这里插入图片描述

  • 要求是springmvc加载controller中的bean,然后要求spring加载业务层的bean,互不干扰。
    具体解决办法

在这里插入图片描述

精确配置,适配所有数据库技术

  • 这一种主要使用
@ComponentScan({"com.itheima.service","com.itheima.dao"})

尽量扩大范围,但是排除部分内容

  • 过滤掉使用controller注解的bean
@ComponentScan(value="com.itheima",excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION,classes = Controller.class)
)

将spring和springmvc两个配置都加载到tomcat中

在这里插入图片描述

  • 或者使用如下的方式,简化开发

在这里插入图片描述

Postman工具请求

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

请求和响应

请求映射路径

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

请求参数

后台不区分post请求和get请求
正常就是名称对名称,如果对不上,就是用@RequestParam

普通参数

在这里插入图片描述

  • 如果get请求中的参数和形参的名称不一样,就要使用RequestParam进行标记,保证请求中的变量名赋值给形参

在这里插入图片描述

  • 如果传入对象,只需要和对象的成员数据类型相同,会自动构成对应的成员
    在这里插入图片描述

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

设置过滤器,对输入进行处理
  • 过滤器是在配置文件中设置的
    在这里插入图片描述
Json数据传递参数
  • 在pom中添加坐标
    在这里插入图片描述

  • 设置发送json的请求
    在这里插入图片描述

  • 在config中增加对应的EnableWebMvc注释
    在这里插入图片描述

@EnableWebMvc  // 开启有json数据转换为对象的功能
  • 接受数据的追求

在这里插入图片描述

  • json对象的格式
    在这里插入图片描述
  • json集合对象的格式

在这里插入图片描述

注释学习
  • RequestBody学习

在这里插入图片描述

日期型参数传递
  • 自己定义格式,使用注释@DateTimeFormat
    *

  • 使用convert接口实现

在这里插入图片描述

响应数据

  • 响应页面
  • 响应数据
    • 文本数据
    • json数据
响应的不同内容
  • 什么都不加,默认是返回页面
  • 加上responseBody是返回对应文本信息

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

在这里插入图片描述
使用HTTPMessageConverter二接口实现

  • 将jackson数据进行转换

在这里插入图片描述

REST风格(重要)

风格简介

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

在这里插入图片描述

入门案例

  • 设置http请求动作

在这里插入图片描述

  • 设置形参

在这里插入图片描述

注解学习

在这里插入图片描述

总结

在这里插入图片描述

快速开发

在这里插入图片描述

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

案例:SSM整合

表现层和前端数据数据传输协议实现

在这里插入图片描述

在这里插入图片描述

  • 通过controller返回的数据

在这里插入图片描述

SSM整合——异常处理

统一集中异常

  • 在运行会出现异常

在这里插入图片描述

  • 常见的异常类型
    在这里插入图片描述

  • 异常处理方式——所有异常抛出到表现层进行处理,使用切面思想AOP进行处理

    • 这里使用spring已经统一实现的异常处理模块统一处理

在这里插入图片描述

  • 对应的注解
    在这里插入图片描述
    在这里插入图片描述

统一抛出异常

  • 常见的异常种类

在这里插入图片描述

  • 每一类的具体处理方式

在这里插入图片描述
编码实现

  • 分类定义对应的异常处理类型

在这里插入图片描述

  • 定义异常码

在这里插入图片描述

  • 触发自定义异常
    在这里插入图片描述
  • 拦截并处理异常

在这里插入图片描述

  • 异常情况对比

在这里插入图片描述

SSM整合——前后台协议联调

列表功能

  • 首先这里回顾一下,要增加网页返回功能,让部分网络请求过渡到对应路径中,通过springmvcsupprt进行过滤

在这里插入图片描述

  • 并在对应配置类中增加组件扫描配置

在这里插入图片描述
books页面分析

  • 下述是列表页的相关分析,create创建页面是调用的函数,调用getall函数,然后在发送get请求,然后将结果使用datalist进行显示
    在这里插入图片描述

添加功能

  • 这里是根据添加的结果判是否返回成功,并给出对应的操作界面变化,这里需要改变一下对应save,update结构
    在这里插入图片描述
  • 前端处理具体操作
  • 这里要求弹出小窗时,就把数据删除,保证数据清空
    在这里插入图片描述
  • 在下述操作中,根据后台返回的操作,前台给出对应界面操作
    在这里插入图片描述

修改功能

  • 先弹出编辑窗口,然后在添加数据
    • 点击编辑按钮时,查询数据,发送ajax请求
      • 这里是核心,传入请求参数,并将结果进行返回
    • 编辑后添加数据,并进行保存

在这里插入图片描述

删除功能

  • 具体操作流程
    • 弹出提示框
    • 做删除业务
    • 取消删除操作
      在这里插入图片描述

汇总

在这里插入图片描述

拦截器

拦截器的概念

在这里插入图片描述

  • 作用
    • 在指定操作的前后执行预先设定的代码
    • 阻止原始方法的执行
      在这里插入图片描述
  • 注意拦截器和过滤器的区别,拦截器是在springmvc框架下的,但是过滤器是在springmvc之前的,是在serverlet之前的。

入门案例

编程流程

  • 制作拦截器的功能类
  • 配置拦截器的执行位置
    拦截器是给表现层是个用的,需要定义在controller中使用

在controller中声明一个拦截器类,声明为组件

  • 实现handlerinterceptor方法

在这里插入图片描述

在config中配置拦截器对应配置类,自动装配组件,并指定使用方法
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
简化开发的方式
在这里插入图片描述

执行流程

在这里插入图片描述

拦截器的参数

  • 主要是request应用的比较多
    在这里插入图片描述

在这里插入图片描述

拦截器链配置

在这里插入图片描述

  • 用的少

在这里插入图片描述

总结

这里过得比较快,最多在学一周,这个就得过一遍,然后再根据项目具体的开始封装。

这篇关于秋招突击——第三弹——Java的SSN框架快速入门——SpringMVC的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1064136

相关文章

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

电脑桌面文件删除了怎么找回来?别急,快速恢复攻略在此

在日常使用电脑的过程中,我们经常会遇到这样的情况:一不小心,桌面上的某个重要文件被删除了。这时,大多数人可能会感到惊慌失措,不知所措。 其实,不必过于担心,因为有很多方法可以帮助我们找回被删除的桌面文件。下面,就让我们一起来了解一下这些恢复桌面文件的方法吧。 一、使用撤销操作 如果我们刚刚删除了桌面上的文件,并且还没有进行其他操作,那么可以尝试使用撤销操作来恢复文件。在键盘上同时按下“C

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�