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

javaweb中的请求与响应--基于postman工具的应用(附带postman的详细安装步骤)

一、前言

后端的第一天感觉难度就上来了,可能是基础太过薄弱了吧。目前看视频已经有点跟不上了,果然15天想要拿下还是太勉强了点。30天还差不多。不知道读者们有没有好好的去学这方面的知识,没有什么是学不会的,关键是坚持。

Postman这款应用一定要好好的去熟悉一下,挺重要的。

明天试着做一下综合案例,ヾ(◍°∇°◍)ノ゙。

二、Postman简介

Postman 是一个流行的 API 开发工具,主要用于测试、调试和管理 API。它提供了一个用户友好的界面,使开发者能够轻松地发送 HTTP 请求、查看响应以及分析请求的结果。以下是 Postman 的主要特点和功能:

发送 HTTP 请求

  • Postman 允许用户发送各种类型的 HTTP 请求,如 GET、POST、PUT、DELETE 等,可以设置请求头、请求体、参数等。

组织和管理请求

  • 用户可以创建多个请求集合,每个集合可以包含多个请求,方便组织和管理不同的 API 请求。

自动化测试

  • Postman 支持创建测试脚本,可以自动化执行 API 的测试,验证响应的正确性和性能。

环境和变量

  • 可以设置环境变量和全局变量,用于在不同的环境中管理 API 的请求和测试。

实时调试

  • 提供实时的响应预览和格式化,方便开发者查看 API 返回的数据,支持多种数据格式,如 JSON、XML、HTML 等。

协作与分享

  • Postman 允许用户分享请求和集合,方便团队成员协作,还可以导出和导入请求集合以便备份或分享给其他开发者。

集成其他工具

  • 支持与其他开发工具和服务集成,如 Swagger、GitHub、Jenkins 等,扩展了其功能和应用场景。

三、postman的安装

第一步:访问官网

Postman API Platform | Sign Up for Freeicon-default.png?t=N7T8https://www.postman.com/

第二步:下载

四、各种类型的请求

温馨提示:此部分只进行代码上的讲解,方法部分在全套源代码中。

1. 简单实体参数

//1.简单实体参数@RequestMapping("/simpleParam")public String simpleParam(String name,int age) {System.out.println(name+":"+age);return "OK";}

分析:

注解 @RequestMapping

  • @RequestMapping("/simpleParam") 指定了处理的 URL 路径为 "/simpleParam"。当有请求到达这个路径时,Spring MVC 将调用 simpleParam 方法来处理请求。

方法签名

  • public String simpleParam(String name, int age) 是控制器方法的签名。它接收两个参数:name(String 类型)和 age(int 类型)。

方法体

  • 方法体内首先使用 System.out.println(name+":"+age); 打印接收到的 name 和 age 参数值到控制台。
  • 然后方法返回字符串 "OK"。

参数绑定

  • Spring MVC 会根据请求中的参数名字和方法的参数名字进行自动绑定。例如,如果有一个 HTTP GET 请求发送到 /simpleParam,并且请求参数为 name=John 和 age=30,那么 Spring MVC 将自动将 name 绑定为 "John",将 age 绑定为整数 30。

返回值

  • 控制器方法的返回值为一个字符串 "OK"。在 Spring MVC 中,这个字符串通常表示请求处理成功,并返回给客户端。

结果展示:

2. 复杂实体参数

//2.复杂实体参数@RequestMapping("/complacePojo")public String complacePojo(user user){System.out.println(user);return "OK";}

代码分析:

  • 1.@RequestMapping("/complacePojo") 指定了处理的 URL 路径为 "/complacePojo"。当有请求到达这个路径时,Spring MVC 将调用 complacePojo 方法来处理请求。
  • 2.public String complacePojo(user user) 是控制器方法的签名。它接收一个名为 user 的参数,类型为 user。这里的 user 可能是一个自定义的 Java Bean 类,用于封装用户提交的数据。
  • 3.方法体内首先使用 System.out.println(user); 打印接收到的 user 对象到控制台。

        然后方法返回字符串 "OK"。

  • 4.Spring MVC 将尝试将 HTTP 请求中的参数与 user 类的属性进行自动绑定。例如,如果请求提交了 user 对象的属性 name 和 age,Spring MVC 将会尝试将这些值设置到 user 对象的对应属性上。
  • 5.控制器方法的返回值为一个字符串 "OK"。在 Spring MVC 中,这个字符串通常表示请求处理成功,并返回给客户端。

结果展示:

3. 数组参数

//3.数组参数@RequestMapping("/arrayParam")public String arrayParam(String[]hobby){System.out.println(Arrays.toString(hobby));return "OK";}

代码分析:

  • public String arrayParam(String[] hobby) 是控制器方法的签名。它接收一个名为 hobby 的参数,类型为 String[]。这表示它可以接收一个名为 hobby 的数组作为 HTTP 请求的参数。
  • System.out.println(Arrays.toString(hobby)); 打印接收到的 hobby 数组内容到控制台。这行代码将数组转换为字符串形式并输出,以便查看实际接收到的数据。
  • Spring MVC 将尝试将 HTTP 请求中的参数绑定到 hobby 数组上。例如,如果请求中包含多个名为 hobby 的参数(如 hobby=readinghobby=traveling),Spring MVC 将会将这些值存储在 hobby 数组中。
  • 这种方法适用于接收客户端传递的数组形式的数据,例如多选框选择、多个复选框的值等。通过定义方法参数为数组,Spring MVC 能够直接将这些值绑定到数组元素中。

注意事项

确保请求中的参数命名正确,并且与方法参数的名称相匹配。Spring MVC 将根据参数名进行自动绑定,因此名称不匹配可能导致绑定失败或错误的数据处理。

结果展示:

4. 集合参数

//4.集合传参@RequestMapping("/ListParam")public String ListParam(@RequestParam List<String>hobby){System.out.println(hobby);return "OK";}

代码分析:

  • public String ListParam(@RequestParam List<String> hobby) 是控制器方法的签名。它接收一个名为 hobby 的参数,类型为 List<String>。使用 @RequestParam 注解明确指定了要从请求中获取的参数名为 hobby
  • Spring MVC 将尝试将 HTTP 请求中名为 hobby 的参数的多个值绑定到 hobby 列表中。例如,如果请求中包含多个 hobby 参数(如 hobby=reading&hobby=traveling),Spring MVC 将这些值存储在 hobby 列表中。
  • 这种方法适用于需要接收多个同名参数的情况,例如多选框选择、多个复选框的值等。通过定义方法参数为 List<String> 类型,Spring MVC 能够直接将这些值绑定到列表中。

结果展示:

5. 日期和时间参数

//5.日期时间传参@RequestMapping("/dateParam")public String dateParam(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime updateTime){System.out.println(updateTime);return "OK";}

代码分析:

  • public String dateParam(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime updateTime) 是控制器方法的签名。它接收一个名为 updateTime 的参数,类型为 LocalDateTime。使用 @DateTimeFormat 注解指定了日期时间的格式为 "yyyy-MM-dd HH:mm:ss",以便正确解析请求中的日期时间字符串。
  • Spring MVC 将尝试将 HTTP 请求中的日期时间参数按照指定的格式 "yyyy-MM-dd HH:mm:ss" 解析为 LocalDateTime 对象,并将其传递给 updateTime 参数。
  • 这种方法适用于需要接收特定格式的日期时间参数的情况,例如记录最后更新时间、指定某个事件发生的时间等。

注意事项:

确保请求中的日期时间字符串格式与指定的 @DateTimeFormat 注解中的格式相匹配,否则会导致解析失败或者获得不正确的数据。

结果展示:

6. Json参数

//6.Json参数@RequestMapping("/jsonParam")public String jsonParam(@RequestBody user user){System.out.println(user);return "OK";}

代码分析:

  • public String jsonParam(@RequestBody user user) 是控制器方法的签名。它使用 @RequestBody 注解来指示 Spring MVC 从请求体中获取 JSON 数据,并尝试将其转换为 user 对象。这里的 user 类型是自定义的,通常应该包含与请求体 JSON 结构相匹配的字段。
  • @RequestBody 注解告诉 Spring MVC 从 HTTP 请求的主体中提取数据,并尝试将其转换为 user 对象。Spring MVC 使用默认的 JSON 转换器(通常是 Jackson)来完成从 JSON 到 Java 对象的反序列化过程。
  • 这种方法适用于需要接收复杂结构的 JSON 数据的情况,例如通过 REST API 提交用户信息、创建资源等操作。

注意事项

确保请求的 JSON 结构与 user 对象的字段名和类型相匹配,否则反序列化可能会失败或者得到不正确的数据。

user 类型必须有默认的无参构造函数,以便 JSON 反序列化库可以实例化对象。

结果展示:

7. 单个路径参数

//7.单个路径参数@RequestMapping("/pathParam/{id}")public String pathParam(@PathVariable int id){System.out.println(id);return "OK";}

代码分析:

  • @RequestMapping("/pathParam/{id}") 指定了处理的 URL 路径为 "/pathParam/{id}"。{id} 是一个占位符,表示这个路径可以接受一个名为 id 的变量作为参数。当有符合这个路径的 GET 请求到达时,Spring MVC 将调用 pathParam 方法来处理请求。
  • @PathVariable int id 注解在方法参数上,指示 Spring MVC 将 URL 中的 {id} 值映射到方法的 id 参数上。在这个例子中,Spring MVC 将提取路径中的 id 值,并将其转换为 int 类型,然后传递给方法 pathParam
  • Spring MVC 能够根据 URL 路径中的占位符 {id},将其解析为方法参数 id。这使得我们可以在路径中传递参数,而不是在请求体或查询参数中传递。
  • 这种方法适用于需要从 URL 中获取特定信息的情况,例如获取资源的详细信息,根据 ID 查询特定记录等操作。

注意事项:

确保路径中的变量名 {id} 与 @PathVariable 注解中的参数名 id 保持一致,以确保正确的参数绑定。

如果路径参数类型不匹配(例如路径中是数字,但方法参数是字符串),Spring MVC 可能会抛出类型转换错误或者返回 404 错误。

结果展示:

8. 多个路径参数

//8.多个路径参数@RequestMapping("pathParam2/{id}/{name}")public String pathParam2(@PathVariable int id,@PathVariable String name){System.out.println(id+":"+name);return "OK";}

代码分析:

基本原理和单个路径大致相同

注意事项:

确保路径中的变量名 {id} 和 {name} 与 @PathVariable 注解中的参数名 id 和 name 保持一致,以确保正确的参数绑定。

结果展示:

五、响应

一般应用的时候为了防止太过混乱,会有一个统一的标准,因为只是认识,所以在这里就不介绍了,想要了解的读者可以去看源代码。里面包含这一部分。

1. 响应-字符串

//9.字符串@RequestMapping("/strParam")public String strParam(){System.out.println("Hello World");return "OK";}
  • System.out.println("Hello World"); 这行代码会在控制台打印输出 "Hello World"。它用于在方法被调用时输出一条消息到控制台,这在调试和跟踪代码执行流程时非常有用。
  • 这种方法适用于需要执行某些逻辑或操作,但不需要返回动态生成的内容或者模板渲染的情况。例如,可以在这里执行一些后台任务、记录日志或者简单的逻辑处理。
  • 如果方法的返回值是 "OK",Spring MVC 将会尝试查找与请求对应的视图或者处理下一个处理程序,具体取决于应用程序的配置和处理链的设置。

2. 响应-数组

//10.数组@RequestMapping("/arrParam")public Address arrParam(){Address address = new Address();address.setProvince("河南");address.setCity("郑州");return address;}
  • Address address = new Address(); 创建了一个 Address 对象,假设这是一个自定义的 Java 类,用来表示地址信息。
  • address.setProvince("河南"); 设置地址对象的省份为 "河南"。
  • address.setCity("郑州"); 设置地址对象的城市为 "郑州"。
  • return address; 返回这个填充了省份和城市信息的 Address 对象。
  • 控制器方法返回的是一个 Address 对象。在 Spring MVC 中,如果方法返回的是一个对象,Spring MVC 会自动将其转换为 JSON 格式(默认情况下),并作为 HTTP 响应体返回给客户端。
  • 这种方法适用于需要从服务器端返回某个 Java 对象的情况,比如获取用户地址信息、商品信息等。客户端可以通过 HTTP GET 请求访问 /arrParam 路径,并获取到 JSON 格式的地址信息。
  • Address 类必须是可序列化的,并且通常需要正确实现 toString()equals() 和 hashCode() 方法,以便在转换为 JSON 格式时能够正确工作。
  • 在实际应用中,可以使用更复杂的对象结构,例如包含多个属性的对象,甚至嵌套对象,Spring MVC 会自动处理这些情况并将其转换为相应的 JSON 格式。

3. 响应-集合

//11.集合@RequestMapping("/listParam")public List<Address> listParam(){List<Address> list = new ArrayList<>();Address address = new Address();address.setProvince("山东");address.setCity("菏泽");Address address1 = new Address();address1.setProvince("陕西");address1.setCity("西安");list.add(address);list.add(address1);return list;}
  • List<Address> list = new ArrayList<>(); 创建了一个 ArrayList 对象 list,用来存储 Address 对象。
  • 创建了两个 Address 对象 address 和 address1,分别代表不同的地址信息。
  • address 的省份设置为 "山东",城市设置为 "菏泽"。
  • address1 的省份设置为 "陕西",城市设置为 "西安"。
  • list.add(address); 将 address 对象添加到 list 列表中。
  • list.add(address1); 将 address1 对象添加到 list 列表中。
  • 控制器方法返回的是一个 List<Address> 对象,即包含两个填充了省份和城市信息的 Address 对象的列表。在 Spring MVC 中,这些对象会被自动转换为 JSON 数组格式,并作为 HTTP 响应体返回给客户端。

六、全套源代码

目录

text1代码

package com.von.demo5;import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.*;
import pojo.Address;
import pojo.user;import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;//请求处理类
@RestController
public class text1 {//springboot方式请求//1.简单实体参数@RequestMapping("/simpleParam")public String simpleParam(String name,int age) {System.out.println(name+":"+age);return "OK";}//2.复杂实体参数@RequestMapping("/complacePojo")public String complacePojo(user user){System.out.println(user);return "OK";}//3.数组参数@RequestMapping("/arrayParam")public String arrayParam(String[]hobby){System.out.println(Arrays.toString(hobby));return "OK";}//4.集合传参@RequestMapping("/ListParam")public String ListParam(@RequestParam List<String>hobby){System.out.println(hobby);return "OK";}//5.日期时间传参@RequestMapping("/dateParam")public String dateParam(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime updateTime){System.out.println(updateTime);return "OK";}//6.Json参数@RequestMapping("/jsonParam")public String jsonParam(@RequestBody user user){System.out.println(user);return "OK";}//7.单个路径参数@RequestMapping("/pathParam/{id}")public String pathParam(@PathVariable int id){System.out.println(id);return "OK";}//8.多个路径参数@RequestMapping("pathParam2/{id}/{name}")public String pathParam2(@PathVariable int id,@PathVariable String name){System.out.println(id+":"+name);return "OK";}
}

text2代码

package com.von.demo5;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import pojo.Address;import java.util.ArrayList;
import java.util.List;
@RestController
public class text2 {//测试响应数据//9.字符串@RequestMapping("/strParam")public String strParam(){System.out.println("Hello World");return "OK";}//10.数组@RequestMapping("/arrParam")public Address arrParam(){Address address = new Address();address.setProvince("河南");address.setCity("郑州");return address;}//11.集合@RequestMapping("/listParam")public List<Address> listParam(){List<Address> list = new ArrayList<>();Address address = new Address();address.setProvince("山东");address.setCity("菏泽");Address address1 = new Address();address1.setProvince("陕西");address1.setCity("西安");list.add(address);list.add(address1);return list;}
}

text3代码

package com.von.demo5;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import pojo.Address;
import pojo.Result;import java.util.ArrayList;
import java.util.List;
@RestController
public class text3 {//使用result规范管理响应数据//9.字符串@RequestMapping("/strParam")public Result strParam(){System.out.println("Hello World");return Result.success("Hello World");}//10.数组@RequestMapping("/arrParam")public Result arrParam(){Address address = new Address();address.setProvince("河南");address.setCity("郑州");return Result.success(address);}//11.集合@RequestMapping("/listParam")public Result listParam(){List<Address> list = new ArrayList<>();Address address = new Address();address.setProvince("山东");address.setCity("菏泽");Address address1 = new Address();address1.setProvince("陕西");address1.setCity("西安");list.add(address);list.add(address1);return Result.success(list);}
}

Address方法

package pojo;public class Address {private String province;private String city;@Overridepublic String toString() {return "Address{" +"province='" + province + '\'' +", city='" + city + '\'' +'}';}public String getProvince() {return province;}public void setProvince(String province) {this.province = province;}public String getCity() {return city;}public void setCity(String city) {this.city = city;}
}

Result方法

package pojo;public class Result {private int code;//1代表成功,0代表失败private String msg;//提示信息private Object data;//数据datapublic Result() {}public Result(int code, String msg, Object data) {this.code = code;this.msg = msg;this.data = data;}public int getCode() {return code;}public void setCode(int code) {this.code = code;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public Object getData() {return data;}public void setData(Object data) {this.data = data;}public static Result success(Object data) {return new Result(1, "success", data);}public static Result success() {return new Result(1, "success", null);}public static Result error(String msg) {return new Result(0, msg, null);}@Overridepublic String toString() {return "Result{" +"code=" + code +", msg='" + msg + '\'' +", data=" + data +'}';}
}

user方法

package pojo;public class user {private String name;private int age;private Address address;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public Address getAddress() {return address;}public void setAddress(Address address) {this.address = address;}@Overridepublic String toString() {return "user{" +"name='" + name + '\'' +", age=" + age +", address=" + address +'}';}
}

相关文章:

javaweb中的请求与响应--基于postman工具的应用(附带postman的详细安装步骤)

一、前言 后端的第一天感觉难度就上来了&#xff0c;可能是基础太过薄弱了吧。目前看视频已经有点跟不上了&#xff0c;果然15天想要拿下还是太勉强了点。30天还差不多。不知道读者们有没有好好的去学这方面的知识&#xff0c;没有什么是学不会的&#xff0c;关键是坚持。 Po…...

StarRocks下载使用说明和基础操作

简介 StarRocks 是一款高性能分析型数据仓库&#xff0c;使用向量化、MPP 架构、CBO、智能物化视图、可实时更新的列式存储引擎等技术实现多维、实时、高并发的数据分析。StarRocks 既支持从各类实时和离线的数据源高效导入数据&#xff0c;也支持直接分析数据湖上各种格式的数…...

桥接模式案例

桥接模式&#xff08;Bridge Pattern&#xff09;是一种结构型设计模式&#xff0c;它将抽象部分与实现部分分离&#xff0c;使它们可以独立变化。桥接模式通过创 建一个桥接接口&#xff0c;将抽象部分和实现部分连接起来&#xff0c;从而实现两者的解耦。下面是一个详细的桥接…...

Spring源码二十二:Bean实例化流程五

上一篇Spring源码二十一&#xff1a;Bean实例化流程四&#xff0c;咱们主要分析里createBeanInstance方法Spring给我们提供给的FactoryMethod方法&#xff0c;举例说明了factoryMethod属性如何使用&#xff0c;同时简单讨论了具体实现逻辑。 这一篇咱们将进入反射实例化Bean&am…...

Unity3D中UI层级改变详解

在Unity3D开发中&#xff0c;UI层级的调整是常见的需求&#xff0c;它直接关系到用户界面(UI)元素的显示顺序。在Unity的UI系统中&#xff0c;主要使用UGUI&#xff08;Unitys Graphical User Interface&#xff09;来实现界面布局和元素展示。本文将详细讲解Unity3D中如何改变…...

centos安装数据库同步工具sqoop并导入数据,导出数据,添加定时任务

目录 1.安装jdk 1.1上传jdk安装包到/opt目录下并解压 1.2解压 1.3配置环境变量 2.安装hadoop 2.1.下载hadoop 2.2.解压hadoop 2.3配置环境变量 3.安装sqoop 3.1下载 3.2解压 3.3下载依赖包并复制到指定位置 3.3.1下载commons-lang-2.6-bin.tar.gz 3.3.2将mysql-c…...

asp .net core 避免请求body数据量过大

方法1&#xff0c; 全局避免 引入包 dotnet add package Microsoft.AspNetCore.Http.Features using Microsoft.AspNetCore.Http.Features;public void ConfigureServices(IServiceCollection services) {services.Configure<FormOptions>(options >{// 设置允许的最…...

搭建discuz论坛(lvs+nginx+http+mysql+nfs)8台服务器

搭建discuz论坛&#xff08;lvsnginxhttpmysqlnfs&#xff09; 一、IP规划 服务名IP地址服务LVS1192.168.100.110keepalivedipvsadmLVS2192.168.100.111keepalivedipvsadmnginx1192.168.100.113nginxnginx2192.168.100.114nginxnfs192.168.100.116nfs-utilweb1192.168.100.11…...

就业平台小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;学生管理&#xff0c;企业管理&#xff0c;企业类型管理&#xff0c;留言板管理&#xff0c;系统管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;招聘信息&#xff0c;简历&#xff0c;我的 …...

hid-ft260驱动学习笔记 5 - ft260_i2c_probe

目录 1. 保存ft260_device到私有数据 2. 初始化I2C设备分配属性 3. 添加I2C适配器 4. 初始化GPIO 5. ft260_i2c_algo 5.1 ft260_functionality 5.2 ft260_i2c_xfer 5.3 ft260_smbus_xfer 6. ft260_i2c_quirks 这个函数是i2c的接口probe函数。 1. 保存ft260_device到私…...

Android上如何使用perfetto分析systrace

Android上如何使用perfetto分析systrace Perfetto 是一个用于性能分析的工具&#xff0c;提供了对 Android 系统内部工作情况的详细视图。它可以用来替代传统的 systrace 工具&#xff0c;提供更加全面的性能分析功能。以下是如何使用 Perfetto 分析 Systrace 数据的详细指南&…...

React Hooks学习笔记

一、usestate的使用方法-初始化state函数 import React, { useState } from "react"; function App() {const [count, setCount] useState(0);return (<div><p>点击{count}次</p><button onClick{() > setCount(count 1)}>点击</bu…...

BGP第二日

上图为今日所用拓扑 &#xff0c;其中R1和R4&#xff0c;R3和R5为EBGP邻居&#xff0c;R1和R3为IBGP邻居&#xff0c;AS200区域做OSPF动态路由 一.BGP建立邻居的六种状态 1.idle 空闲状态&#xff1a;建立邻居最初的状态 2.Connect 连接状态&#xff1a;在…...

rabbitmq集群创建admin用户之后,提示can access virtual hosts是No access状态

问题描述&#xff1a; 因业务需要使用的rabbitmq是3.7.8版本的&#xff0c;rabbitmq在3.3.0之后就允许使用guest账号的权限了&#xff0c;所以需要创建一个administrator标签的用户。 如下操作创建的用户&#xff1a; 创建完成之后就提示如下的报错&#xff1a; 注&#xff1a…...

ARM功耗管理之多核处理器启动

安全之安全(security)博客目录导读 思考&#xff1a;SecureBoot&#xff1f;多核处理器启动流程&#xff1f;PSCI启动方式&#xff1f; 一般嵌入式系统使用的都是对称多处理器&#xff08;Symmetric Multi-Processor, SMP&#xff09;系统&#xff0c;包含了多个cpu, 这几个cp…...

java使用easypoi模版导出word详细步骤

文章目录 第一步、引入pom依赖第二步、新建导出工具类WordUtil第三步、创建模版word4.编写接口代码5.导出结果示例 第一步、引入pom依赖 <dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-spring-boot-starter</artifactId><…...

Android 内部保持数据的方式

Android内部保持数据的方式主要有五种&#xff0c;每种方式都有其特定的用途和优点。以下是详细的介绍&#xff1a; SQLite数据库 定义&#xff1a;SQLite是一个轻量级的、跨平台的数据库&#xff0c;所有的信息都存储在单一文件内&#xff0c;占用内存小&#xff0c;并且支持…...

uniapp 表格,动态表头表格封装渲染

1.接口表格数据&#xff1a; {"headers": [{"label": "实例名","name": "v1","order": 1,"hide": false,"dateTypeValue": null},{"label": "所属科室","name&quo…...

beyond Compare连接 openWrt 和 VsCode

连接步骤总结 1. 新建会话 -> 文件夹比较 2.点击浏览文件夹 3.在弹出页面 配置 ftp 3.1&#xff09;选中ftp 配置文件 3.2)选中ssh2 3.3)填写我们需要远端连接的主机信息 先点击连接并浏览 得到下方文件夹 弹出无效登录&#xff0c;说明需要密码 我们返回右键刚刚创建的新 …...

量化机器人能否识别市场机会?

量化机器人的设计和应用是为了通过高级算法和大数据分析&#xff0c;精确地识别和把握市场中的交易机会。这些机器人的能力不仅仅局限于执行预定的交易策略&#xff0c;更包括在复杂和快速变化的市场环境中识别利润机会。 首先&#xff0c;量化机器人能够处理和分析大量的市场…...

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档&#xff1a;Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后&#xff0c;会在本地和远程创建数据库&#xff1a; npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库&#xff1a; 现在&#xff0c;您的Cloudfla…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

【C语言练习】080. 使用C语言实现简单的数据库操作

080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统&#xff0c;主要的模块包括管理员&#xff1b;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

基于IDIG-GAN的小样本电机轴承故障诊断

目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) ​梯度归一化(Gradient Normalization)​​ (2) ​判别器梯度间隙正则化(Discriminator Gradient Gap Regularization)​​ (3) ​自注意力机制(Self-Attention)​​ 3. 完整损失函数 二…...

三分算法与DeepSeek辅助证明是单峰函数

前置 单峰函数有唯一的最大值&#xff0c;最大值左侧的数值严格单调递增&#xff0c;最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值&#xff0c;最小值左侧的数值严格单调递减&#xff0c;最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...