SpringMVC:创建一个简单的SpringMVC框架S

目录

一、框架介绍

两个重要的xml文件 

SpringMVC执行流程 

二、Vscode搭建SpringMVC框架

1、maven创建webapp原型项目

2、pom.xml下添加springmvc的相关依赖

3、在web.xml配置

 4、springmvc.xml的配置

5、编写Controller控制器类

6、 编写JSP界面

7、项目结构图 


一、框架介绍

两个重要的xml文件 

        web.xml文件是Java Web应用程序的部署描述文件,用于配置Web应用程序的部署信息和配置参数。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"><display-name>spring_mvc</display-name><!-- springMVC的前端控制器,此处为名称显示在Web服务器管理页面的 --><servlet><servlet-name>springmvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!-- 如果以xxx-servlet.xml命名,并且位于/WEB-INF下,则服务器会自动识别,
不需要配置 init-param--><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc.xml</param-value></init-param><!--init-param配置是告诉服务器DispatcherServlet的配置文件在哪,此处是告诉服务器文件在src/classes下去找该配置文件 --><load-on-startup>1</load-on-startup><!-- 立即加载 --></servlet><servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping><!-- 此处为url匹配器,这里/表示处理所有请求,可以设置一些固定格式,来过滤非法请求。 -->
</web-app>

         springmvc.xml文件,该文件是springmvc的配置文件。该文件的名称可以自定,文件位置甚至可以放在任意位置,但这样做就要在web.xml配置相关文件信息和文件位置。

        具体配置方法:要配置init-param元素,param-value值就要修改为相对于web.xml所在的路径。上面web.xml的param-value值,说明DispatcherServlet的配置文件位于/项目名/src/resources目录下,此目录一般放java代码,打包后会该配置文件会存在于\项目名\WEB-INF\classes的目录下。

        如果不想配置init-param元素,则要将springmvc的配置文件命名为xxx-servlet.xml,并且文件位于WEB-INF文件夹下。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:aop="http://www.springframework.org/schema/aop"xmlns:tx="http://www.springframework.org/schema/tx"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/aophttp://www.springframework.org/schema/aop/spring-aop-3.0.xsdhttp://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-3.0.xsdhttp://www.springframework.org/schema/context     http://www.springframework.org/schema/context/spring-context-3.0.xsd"><!-- 配置controller --><bean id="login" name="/loginController" class="com.hfxt.controller.LoginController"></bean><!-- 配置映射处理器 :name来映射寻找controller (默认存在,可以省略不配置,如果用到另外两种需要配置) --><bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean><!-- 配置视图解析器 如何把handler 方法返回值解析为实际的物理视图  根据控制器返回的字符串拼接成jsp路径:/WEB-INF/page/xx.jsp --><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/page/"/><!-- 前缀 --><property name="suffix" value=".jsp"/><!-- 后缀 --></bean>
</beans>

SpringMVC执行流程 

 01、用户发送url请求到前端控制器DispatcherServlet拦截进行处理。

        以下是具体的DispatcherServlet前端拦截器配置,DispatcherServlet的配置文件可以放在项目的任意目录

在web.xml文件下配置:

<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

        该语句配置了Spring MVC框架中的DispatcherServlet。

        其中org.springframework.web.servlet.DispatcherServlet是DispatcherServlet的类路径。

02、DispatcherServlet收到请求调用HandlerMapping(处理器映射器) 

        HandlerMapping的实现一共有多种。以下BeanNameUrlHandlerMapping是Spring MVC 框架中最简单的通过name映射寻找controller的 HandlerMapping 实现。

在springmvc.xml文件里配置:

<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean>

<!-- 配置映射处理器 :name来映射寻找controller (默认存在,可以省略不配置,如果用到另外两种需要配置) -->

HandlerMapping的实现方式还有

        SimpleUrlHandlerMappingControllerClassNameHandlerMapping

03、HandlerMapping找到具体的处理器Handler(查找XML配置或注解配置),返回执行链。

         XML配置:在springmvc.xml文件里进行相关Controller类的配置

<bean id="login" name="/loginController" class="com.hfxt.controller.LoginController"></bean>

         注释配置:在Controller类中使用@Controller@RequestMapping等注解来指定请求路径与处理方法的映射关系。Spring框架会扫描这些注解,并根据它们建立映射关系,从而将请求路由到相应的Controller处理方法上。

@Controller
@RequestMapping("/example")
public class ExampleController {@RequestMapping("/hello")public String hello(Model model) {model.addAttribute("message", "Hello, Spring MVC!");return "helloPage";}
}

04、HandlerAdapter(处理器适配器)经过适配调用具体的处理器(Handler/Controller)

        HandlerAdapter适配器会找到合适的方法调用处理器Handler(因为Handler的定义方式不止一种)

05、Controller执行完成返回ModelAndView对象。

06、HandlerAdapter将Controller执行结果ModelAndView返回给DispatcherServlet。

07、DispatcherServlet将ModelAndView传给ViewReslover(视图解析器) 

        ViewReslover具体要在springmvc的配置文件里进行如下语句的具体配置,设置前缀和后缀。

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/page/"/><!-- 前缀 --><property name="suffix" value=".jsp"/><!-- 后缀 -->
</bean>
08、ViewReslover解析ModelAndView后返回具体View(视图)给DispatcherServlet。
09、DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中),再响应给用户。

二、Vscode搭建SpringMVC框架

1、maven创建webapp原型项目

参考:http://t.csdnimg.cn/fg98g

resources的lib文件夹放相关jar包

java文件夹下放相关java代码 

2、pom.xml下添加springmvc的相关依赖

<dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.3.30</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.3.30</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.0.1</version><scope>provided</scope></dependency>

只有添加完相关依赖(相当于引入相关jar包)后,才能配置springmvc。 

3、在web.xml配置

一、配置拦截器DispatcherServlet

<servlet-name>myspringmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

二、配置springmvc配置文件的地址 

<init-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/springmvc.xml</param-value></init-param>

 三、配置servlet映射 

​<servlet-mapping><servlet-name>myspringmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping>

 四、配置欢迎界面

<welcome-file-list><welcome-file>index.jsp</welcome-file>
</welcome-file-list>

最终配置代码:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"><display-name>spring_mvc</display-name><!-- springMVC的前端控制器 --><servlet><servlet-name>myspringmvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!--init-param配置文件的位置 如果springmvc.xml是以xxx-servlet.xml命名,并且位于/WEB-INF下则不需要配置 --><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc.xml</param-value></init-param><load-on-startup>1</load-on-startup><!-- 立即加载 --></servlet><servlet-mapping><servlet-name>myspringmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list>
</web-app>

 4、springmvc.xml的配置

        我们在web.xml文件下配置了springmvc.xml的路径。该文件位于以下文件夹(resources)下。也可以自定目录,根目录从web项目起。

        在配置springmvc之前,我们要生成其xml文件,eclipse可以通过可视化自动生成,而在vscode中我们可以手动创建并导入版本约束命名空间

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:aop="http://www.springframework.org/schema/aop"xmlns:tx="http://www.springframework.org/schema/tx"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/mvchttp://www.springframework.org/mvc/spring-mvc-4.0.xsdhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/aophttp://www.springframework.org/schema/aop/spring-aop-3.0.xsdhttp://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-3.0.xsdhttp://www.springframework.org/schema/context     http://www.springframework.org/schema/context/spring-context-3.0.xsd"></beans>

        然后我们就能在beans标签里配置具体内容。 

一、配置映射处理器

常见的映射处理器有:BeanNameUrlHandlerMapping,SimpleUrlHandlerMapping、ControllerClassNameHandlerMapping等。

​<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean>

二、配置视图解析器 :

                用于将控制器返回的字符串拼接成可访问的url路径(前提是真实存在)。

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/"/><property name="suffix" value=".jsp"/>
</bean>

三、配置包扫描器:用于组件的自动发现和自动装配。

<context:component-scan base-package="com.edu"/>
<mvc:annotation-driven/>
<!--启用对处理mvc注解的支持-->

最终配置代码:  

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:aop="http://www.springframework.org/schema/aop"xmlns:tx="http://www.springframework.org/schema/tx"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/mvchttp://www.springframework.org/mvc/spring-mvc-4.0.xsdhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/aophttp://www.springframework.org/schema/aop/spring-aop-3.0.xsdhttp://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-3.0.xsdhttp://www.springframework.org/schema/context     http://www.springframework.org/schema/context/spring-context-3.0.xsd"><!-- 配置controller<bean id="login" name="/loginController" class="com.hfxt.controller.LoginController"></bean> --><!-- 1、配置映射处理器 :name来映射寻找controller (默认存在,可以省略不配置,如果用到另外两种需要配置) --><context:component-scan base-package="com.edu"/><mvc:annotation-driven/><bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/page/"/><property name="suffix" value=".html"/></bean>
</beans>

5、编写Controller控制器类

        在java文件下创建包,并编写控制器类Controller,此类继承了抽象类AbstractController,覆写其方法。

package com.edu;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;@Controller
public class Calculate extends AbstractController {@RequestMapping("/calculate")@Overrideprotected ModelAndView handleRequestInternal(HttpServletRequest req, HttpServletResponse resp) throws Exception {ModelAndView mav=new ModelAndView();String x="";for(int i=1;i<=5;i++){String t=req.getParameter(Integer.toString(i));x+=t;}Integer result= count(x);System.out.println(result);mav.setViewName("result");mav.addObject("result", result);return mav;}protected Integer count(String x){String ture_result="ACCBD";Integer cnt=0;for(int i=0;i<x.length();i++){if(ture_result.charAt(i)==x.charAt(i)){cnt++;}}return cnt*20;}}

6、 编写JSP界面

JSP的页面文件放在webapp的文件夹下 。

 result.jsp

使用el表达式提取ModelAndView传递的值。

<?xml version="1.0" encoding="UTF-8" ?>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert title here</title>
</head>
<body><h1 color="red">您本次的测试成绩为:${result}分</h1></body>
</html>

index.jsp

用表单属性action发送数据到/examination/calculate上。

<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>C语言考试</title>
</head><body>
<form action="/examination/calculate" method="post"><p>1、以下哪个是C语言整形数据类型</p>
<p><input name="1" type="radio" value="A" />A、int <input name="1" type="radio" value="B" />B、char<input name="1" type="radio" value="C" />C、float<input name="1" type="radio" value="D" />D、double
</p>
<p>2、以下哪个是C语言浮点型数据类型</p>
<p><input name="2" type="radio" value="A" />A、int<input name="2" type="radio" value="B" />B、char<input name="2" type="radio" value="C" />C、float<input name="2" type="radio" value="D" />D、double 
</p>
<p>3、以下哪个是C语言中格式正确的标识符</p>
<p><input name="3" type="radio" value="A" />A、int
<input name="3" type="radio" value="B" />B、1ch
<input name="3" type="radio" value="C" />C、word
<input name="3" type="radio" value="D" />D、()!@#¥ 
</p>
<p>4、以下哪个是C语言的文件后缀</p>
<p><input name="4" type="radio" value="A" />A、.c<input name="4" type="radio" value="B" />B、.cpp<input name="4" type="radio" value="C" />C、.java<input name="4" type="radio" value="D" />D、.py
</p>
<p>5、以下哪个是C语言中的一维数组</p>
<p><input name="5" type="radio" value="A" />A、int a;<input name="5" type="radio" value="B" />B、chara;<input name="5" type="radio" value="C" />C、float a [] [] ;<input name="5" type="radio" value="D" />D、double a [] ;
</p><input type="submit"/>
</form>
</body>
</html>

7、项目结构图 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/332637.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【除自身以外数组的乘积】python

目录 思路&#xff1a; 代码&#xff1a; 思路&#xff1a; 直接计算前缀乘积&#xff0c;后缀乘积&#xff0c;然后相乘即可 开始我还在想&#xff0c;遍历一次i&#xff0c;怎么能同时计算前缀乘积和后缀乘积&#xff0c;事实上分开计算比较方便。。 代码&#xff1a; cl…

基于SpringBoot和Mybatis实现的留言板案例

目录 一、需求及界面展示 二、准备工作 引入依赖 .yml文件相关配置 数据库数据准备 三、编写后端代码 需求分析 代码结构 Model Mapper Service Controller 前端代码 四、测试 一、需求及界面展示 需求&#xff1a; 1. 输入留言信息&#xff0c;点击提交&…

hubilder Android模拟器华为手机连接不上

APP真机测试注意点&#xff1a; 1. 同一个局域网下 2. 手机连接USB模式&#xff08;华为选择USB配置&#xff1a;音频来源&#xff09; &#xff0c;开发者模式 3. 实在不行重启HBuilderX再运行真机 可是卡在了“正在安装手机端HBuilder调试基座...” 就没反应了&#xff1f;&…

Flask+Vue+MySQL天水麻辣烫管理系统设计与实现(附源码 配置 文档)

背景&#xff1a; 同学找到我期望做一个天水麻辣烫的网页&#xff0c;想复用以前做过的课设&#xff0c;结合他的实际需求&#xff0c;让我们来看看这个系统吧~ 项目功能与使用技术概述&#xff1a; 里面嵌入了6个子系统&#xff0c;其中餐饮系统可以进行餐馆信息添加、修改…

Jeecg | 完成配置后,如何启动整个项目?

前端启动步骤&#xff1a; 1. 以管理员身份打开控制台&#xff0c;切换到前端项目目录。 2. 输入 pnpm install 3. 输入 pnpm dev 4. 等待前端成功运行。 可以看到此时前端已经成功启动。 后端启动步骤&#xff1a; 1. 启动 mysql 服务器。 管理员身份打开控制台&#…

微服务-系统架构

微服务&#xff1a; 系统架构的演变 单一应用架构 早期的互联网应用架构&#xff0c;大量应用服务 功能 集中在一个包里&#xff0c;把大量的应用打包为一个jar包&#xff0c;部署在一台服务器&#xff0c;例如tomcat上部署Javaweb项目 缺点:耦合度高&#xff0c;一台服务器…

谷歌浏览器使用vue插件查看表单提交的数据

1.查看组件&#xff1a; 对应代码里主页面引用的组件名&#xff1a; 表单名称&#xff0c;对应组件里form表单名&#xff1a; 左边的层次结构&#xff1a; 右边层次结构&#xff1a;

【vue2配置】Vue Router

Vue Router官网 1、npm install vue-router4 2、创建模块&#xff0c;在src目录小创/views/map/MapIndex.vue模块和创router/index.js文件 3、在router/index.js配置路由 import Vue from "vue"; import Router from "vue-router"; // 引入模块 const Ma…

【限免】杂波环境下线性调频脉冲、巴克码、频率步进脉冲雷达MTI、脉冲压缩【附MATLAB代码】

来源&#xff1a;微信公众号&#xff1a;EW Frontier 本代码主要模拟杂波环境&#xff08;飞机、地杂波、鸟类信号&#xff09;下&#xff0c;Chirp脉冲、巴克码脉冲、频率步进脉冲雷达信号的脉冲压缩及MTI、​匹配滤波。 MATLAB主代码 % 定义参数 fs 1000; % 采样率 T 1; …

基于EV54Y39A PIC-IOT WA的手指数量检测功能开发(MPLAB+ADC)

目录 项目介绍硬件介绍项目设计开发环境及工程参考总体流程图硬件基本配置光照传感器读取定时器检测逻辑 功能展示项目总结 &#x1f449; 【Funpack3-2】基于EV54Y39A PIC-IOT WA的手指数量检测功能开发 &#x1f449; Github: EmbeddedCamerata/PIC-IOT_finger_recognition 项…

C++ prime 第五版 第14章 重载运算与类型转换

一、基本概念 重载的运算符是具有特殊名字的函数&#xff1a;它们的名字由关键字operator和其后要定义的运算符号共同组成。和其他函数一样&#xff0c;重载的运算符也包含返回类型、参数列表以及函数体。 我们不能为内置类型的运算对象重定义运算符。对于一个运算符函数来说&…

【Linux】 虚拟机可以ping通主机 主机却ping不通虚拟机 解决方法

我当时初学linux&#xff0c;需要虚拟机联网&#xff0c;且虚拟机和windows需要能相互ping通&#xff0c;我当时就是虚拟机一切正常&#xff0c;虚拟机显示有网可以ping通百度&#xff0c;也可以ping通windows&#xff0c;但是windows就是ping不通虚拟机&#xff0c;这个问题困…

如何关闭或者减少屏蔽 CloudFlare 的真人检测

经常浏览境外网站的应该常碰到一个真人检测的提示(如下图所示)。最近,明月就收到了一个知乎上的付费咨询:问我如何去掉这个提示,由此明月也特别的研究了一下这个“真人检测”,这算是 CloudFlare 的一个特色了,基本上大家看到站点访问有这个提示的几乎都是用了 CloudFlar…

list的模拟实现(一)

嗨喽大家好&#xff0c;时隔许久阿鑫又给大家带来了新的博客&#xff0c;list的模拟实现&#xff08;一&#xff09;&#xff0c;下面让我们开始今天的学习吧&#xff01; list的模拟实现&#xff08;一&#xff09; 1.list splice接口的使用 2.list尾插的实现 3.list的迭代…

Elasticsearch集群和Logstash、Kibana部署

1、 Elasticsearch集群部署 服务器 安装软件主机名IP地址系统版本配置ElasticsearchElk10.3.145.14centos7.5.18042核4GElasticsearchEs110.3.145.56centos7.5.18042核3GElasticsearchEs210.3.145.57centos7.5.18042核3G 软件版本&#xff1a;elasticsearch-7.13.2.tar.gz 示…

【vue3+elementuiplus】el-select下拉框会自动触发校验规则

场景&#xff1a;编辑弹框省份字段下拉框必填&#xff0c;触发方式change&#xff0c;有值第一次打开不会触发校验提示&#xff0c;关闭弹框再次打开触发必填校验提示&#xff0c;但是该字段有值 问题的原因是&#xff1a;在关闭弹层事件中&#xff0c;我做了resetfileds&…

使用docker完整搭建前后端分离项目

1、docker的优势&#xff0c;为啥用docker 2、docker的核心概念 镜像【Image】- 只读模板 容器【Container】- 运行镜像的一个外壳&#xff0c;相当于一个独立的虚拟机 仓库【repository】- 镜像的管理工具&#xff0c;可公开&#xff0c;可私有&#xff1b;类似git仓库 3、c…

排序算法(二)

选择排序 &#xff1a; 思想&#xff1a; 每一轮把最小元素和未排序数组的第一个交换位置&#xff0c;直到全部排好序&#xff0c;最终为一个升序结果 代码展示&#xff1a; #include <stdio.h>int main(void) {int i, j; // 循环变量int MinIndex; // 保存最小的值的…

MySQL大表删除方案

1.问题 在生产环境中&#xff0c;执行大表删除操作时&#xff0c;很容易因为占用了大量io资源导致其他事务被阻塞&#xff0c;最终事务不断堆积导致MySQL挂掉。 2.drop命令 drop命令&#xff0c;MySQL主要干了两件事&#xff1a; 清除buffer pool缓冲&#xff08;内存&…

jmeter之MD5加密接口请求教程

前言&#xff1a; 有时候在项目中&#xff0c;需要使用MD5加密的方法才可以登录&#xff0c;或者在某一个接口中遇到 登录获取token后才可以进行关联&#xff0c;下面介绍下遇到的常见使用 一、第一种方法&#xff1a;使用jmeter自带的函数助手digest 选择工具&#xff0c;选择…