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

面试准备第一版ssm spring-springmvc

请写出spring中常用的依赖注入方法:

1、setter  

2、构造方法注入

3、字段注入

Setter 注入

  • 通过公共的 setter 方法进行依赖注入。
  • 优点:可选依赖,能更清晰地看到依赖关系。
  • 缺点:依赖在构造时不可用,可能导致使用时为空。

小案例:

spring-setter-injection-example
|-- src
|   |-- main
|   |   |-- java
|   |   |   |-- com
|   |   |   |   `-- example
|   |   |   |       |-- AppConfig.java
|   |   |   |       |-- UserController.java
|   |   |   |       |-- UserService.java
|   |   |       `-- Application.java
|   |   `-- resources
|   |       `-- application.properties
 

package com.example;import org.springframework.stereotype.Component;@Component
public class UserService {public void performUserOperation() {System.out.println("Performing user operation...");}
}

package com.example;import org.springframework.stereotype.Component;@Component
public class UserService {public void performUserOperation() {System.out.println("Performing user operation...");}
}
package com.example;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;@Component
public class UserController {private UserService userService;// Setter 方法进行依赖注入@Autowiredpublic void setUserService(UserService userService) {this.userService = userService;}public void handleRequest() {userService.performUserOperation();}
}

package com.example;import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;@Configuration
@ComponentScan(basePackages = "com.example")
public class AppConfig {
}

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class AppConfig {@Beanpublic UserService userService() {return new UserService(userRepository());}@Beanpublic UserRepository userRepository() {return new UserRepository();}
}

package com.example;import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;public class Application {public static void main(String[] args) {// 创建 Spring 上下文ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);// 获取 UserController beanUserController userController = context.getBean(UserController.class);// 处理请求userController.handleRequest(); // 调用方法,实际使用 UserService}
}
  • 本示例展示了如何使用 setter 方法进行依赖注入。
  • 通过 @Autowired 注解,Spring 自动注入 UserService 实例到 UserController 中。
  • 通过主应用类,我们创建了 Spring 上下文并运行了应用。

import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;public class MainApplication {public static void main(String[] args) {ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);UserService userService = context.getBean(UserService.class);userService.performUserOperation();}
}

Spring 面试中,常被问到的注解包括以下几种,它们各自有不同的用途和功能

1. @Component
用途:标识一个 Spring 管理的组件。
场景:用于自动扫描并注册类为 Spring 上下文中的 bean。
2. @Service
用途:用于标识服务层的组件。
场景:通常与业务逻辑相关的类,便于组织和识别业务服务。
3. @Repository
用途:用于数据访问层的组件。
场景:表示一个持久化操作的类,支持异常转换。
4. @Controller
用途:标识一个 Spring MVC 控制器。
场景:用于处理 HTTP 请求并返回响应,通常与前端交互相关。
5. @Autowired
用途:用于自动注入依赖。
场景:可以用于构造函数、属性和方法中,Spring 会自动解析依赖。
6. @Value
用途:用于从配置文件中注入属性值。
场景:常用于将外部配置的值注入到 bean 中。
7. @Configuration
用途:标识一个类为 Spring 的配置类。
场景:用于定义 bean 和相关的依赖关系,替代 XML 配置。
8. @Bean
用途:用于在配置类中定义一个 Spring bean。
场景:标识一个方法的返回值为 Spring 管理的 bean。
9. @PostConstruct 和 @PreDestroy
用途:在 bean 初始化后和销毁前执行特定的方法。
场景:用于资源的初始化和清理。
10. @Transactional
用途:用于声明事务管理。
场景:通常用于服务层的方法,标识该方法的操作需要事务支持。
11. @RequestMapping
用途:用于映射 HTTP 请求到控制器的方法。
场景:用于定义请求的 URL、请求方法(GET、POST 等)。
12. @PathVariable 和 @RequestParam
用途:用于提取 URL 中的变量和请求参数。
场景:用于处理 RESTful 风格的请求。
总结
了解这些注解的用途、场景以及它们之间的关系,可以帮助你在面试中更好地回答相关问题。同时,结合实际项目中的使用经验,会让你的回答更具说服力。

使用场景:
代码说明
@Configuration:标识 AppConfig 类为 Spring 的配置类,表示它可以包含 bean 定义。

@Bean:在 userService() 和 userRepository() 方法上使用 @Bean 注解,表明这两个方法返回的对象是 Spring 管理的 bean。

依赖注入:在 userService() 方法中,调用 userRepository() 方法以获取 UserRepository 实例,从而实现了依赖注入。
 

@Autowired@Resource 都是用于依赖注入的注解,但它们之间有一些关键的区别。以下是它们的主要特点和区别:

1. @Autowired

  • 来源:是 Spring Framework 提供的注解。
  • 功能:自动注入 Spring 容器中的 Bean。默认情况下,Spring 会通过类型进行自动装配,如果有多个符合条件的 Bean,可以通过 @Qualifier 注解指定具体的 Bean。
  • 作用范围:可以用在构造函数、Setter 方法和字段上。
  • 必需性:默认情况下,@Autowired 注解的 Bean 是必需的。如果找不到匹配的 Bean,会抛出异常。可以通过 required = false 参数设置为可选。

@Resource

  • 来源:是 Java EE(Java Enterprise Edition)提供的注解,属于 JNDI(Java Naming and Directory Interface)。
  • 功能:根据名称进行注入,优先级高于类型。也可以通过 type 属性指定类型。
  • 作用范围:主要用于字段和 Setter 方法。
  • 必需性:如果指定的 Bean 名称不存在,通常会抛出异常,但行为可能会依赖于具体的实现和容器配置。

在 Spring MVC 中,有多种注解用于处理请求、定义控制器、处理依赖注入等。以下是一些常用的 Spring MVC 注解及其功能:

1、@Controller:标识一个类为控制器,处理请求和返回视图。

@Controller
public class UserController {
    // 处理请求的方法
}

@RestController:是 @Controller@ResponseBody 的组合,表示该控制器的每个方法都返回 JSON 或 XML 格式的响应。

@RestController
public class UserRestController {
    @GetMapping("/users")
    public List<User> getUsers() {
        // 返回用户列表
    }
}

@RequestMapping:用于映射 HTTP 请求到特定的方法或类上。可以指定请求的方法类型(GET、POST等)、URL路径等。

@RequestMapping(value = "/users", method = RequestMethod.GET)
public List<User> getUsers() {
    // 返回用户列表
}

@RequestMapping(value = "/users", method = RequestMethod.GET)
public List<User> getUsers() {
    // 返回用户列表
}

@GetMapping@PostMapping@PutMapping@DeleteMapping:简化版的 @RequestMapping,用于分别处理不同类型的 HTTP 请求。

@GetMapping("/users")
public List<User> getUsers() {// 返回用户列表
}@PostMapping("/users")
public void createUser(@RequestBody User user) {// 创建用户
}
@RequestParam:用于获取请求中的参数

@GetMapping("/users")
public User getUser(@RequestParam("id") Long id) {
    // 根据 id 获取用户
}
@GetMapping("/users/{id}")
public User getUser(@PathVariable("id") Long id) {
    // 根据 id 获取用户
}

@ResponseBody:表示方法返回的对象将自动序列化为 JSON 或 XML 格式,并写入 HTTP 响应体。
@GetMapping("/users")
@ResponseBody
public List<User> getUsers() {
    // 返回用户列表
}

GET 请求

  • 请求参数通常通过 URL 查询字符串传递。例如:/users?name=John&age=30

  • 可以使用 @RequestParam 注解获取查询参数。

  • @GetMapping("/users")
    public List<User> getUsers(@RequestParam String name) {
        // 根据名称获取用户
    }
     

POST 请求

  • 请求参数通常包含在请求体中,数据格式可以是 JSON、XML 或表单数据。

  • 可以使用 @RequestBody 注解将请求体中的数据映射到 Java 对象

  • @PostMapping("/users")
    public ResponseEntity<User> createUser(@RequestBody User user) {
        // 创建新用户
    }
    @RequestBody

  • @RequestBody 用于将请求体中的 JSON 数据映射到 Java 对象,通常用于处理创建和更新资源的 POST 和 PUT 请求。

控制层接收代码:

在 Postman 中发送一个包含 List 的 POST 请求非常简单。以下是详细步骤和示例:

步骤

  1. 打开 Postman:确保你已经安装并打开了 Postman。

  2. 创建新请求

    • 点击 “+” 创建一个新的请求选项卡。
  3. 选择请求方法

    • 在请求方法下拉菜单中选择 POST
  4. 输入 URL

    • 在 URL 输入框中输入你的 API 端点,例如 http://localhost:8080/api/users
  5. 设置请求头

    • 在 “Headers” 标签下,添加一个新头部:
      • Key: Content-Type
      • Value: application/json
  6. 编写请求体

    • 切换到 “Body” 标签。
    • 选择 raw 选项。
    • 在右侧下拉菜单中选择 JSON
  7. 输入 JSON 数据

    • 在文本框中输入一个 JSON 数组,示例如下:
 

json

复制代码

[ {"name": "John", "age": 30}, {"name": "Jane", "age": 25} ]

示例

以下是你在 Postman 中应该输入的完整设置:

  • 请求方法POST
  • URLhttp://localhost:8080/api/users
  • 请求头
    • Content-Type: application/json
  • 请求体
 

json

复制代码

[ {"name": "John", "age": 30}, {"name": "Jane", "age": 25} ]

发送请求

点击 “Send” 按钮发送请求。你将看到返回的响应,通常是你所创建的用户列表或其他响应数据。

注意事项

  • 确保后端服务正在运行,并且 URL 和端口正确。
  • 确保你的 JSON 数据格式正确,符合 JSON 语法。

通过以上步骤,你可以轻松地在 Postman 中列举并发送一个包含 List 的 POST 请求。如果你有其他问题或需要进一步的帮助,请告诉我!

在 Postman 中发送一个数组非常简单。以下是具体步骤和示例,帮助你发送一个包含数组的 POST 请求。

步骤

  1. 打开 Postman:确保 Postman 已经安装并运行。

  2. 创建新请求

    • 点击 “+” 按钮,打开一个新的请求选项卡。
  3. 选择请求方法

    • 在请求方法下拉菜单中选择 POST
  4. 输入 URL

    • 在 URL 输入框中输入你的 API 端点,例如 http://localhost:8080/api/users
  5. 设置请求头

    • 点击 “Headers” 标签。
    • 添加一个新的头部:
      • Key: Content-Type
      • Value: application/json
  6. 编写请求体

    • 切换到 “Body” 标签。
    • 选择 raw 选项。
    • 在右侧下拉菜单中选择 JSON
  7. 输入 JSON 数组

    • 在文本框中输入一个 JSON 数组。例如,如果你要发送用户数组,可以这样写:
 

json

复制代码

[ "Item 1", "Item 2", "Item 3" ]

示例

以下是你在 Postman 中应该输入的完整设置:

  • 请求方法POST
  • URLhttp://localhost:8080/api/users
  • 请求头
    • Content-Type: application/json
  • 请求体
 

json

复制代码

[ "Item 1", "Item 2", "Item 3" ]

发送请求

完成以上设置后,点击 “Send” 按钮发送请求。你将看到返回的响应。

注意事项

  • 确保你的后端服务正在运行,并且 URL 和端口正确。
  • 确保 JSON 数据格式正确,符合 JSON 语法。

通过以上步骤,你可以轻松地在 Postman 中发送一个包含数组的 POST 请求。如果你有其他问题或需要进一步的帮助,请告诉我!

在 Postman 中发送一个包含 Map 的 POST 请求也很简单。以下是详细步骤和示例,帮助你发送一个包含 Map 的请求体。

步骤

  1. 打开 Postman:确保 Postman 已经安装并运行。

  2. 创建新请求

    • 点击 “+” 按钮,打开一个新的请求选项卡。
  3. 选择请求方法

    • 在请求方法下拉菜单中选择 POST
  4. 输入 URL

    • 在 URL 输入框中输入你的 API 端点,例如 http://localhost:8080/api/map
  5. 设置请求头

    • 点击 “Headers” 标签。
    • 添加一个新的头部:
      • Key: Content-Type
      • Value: application/json
  6. 编写请求体

    • 切换到 “Body” 标签。
    • 选择 raw 选项。
    • 在右侧下拉菜单中选择 JSON
  7. 输入 JSON 对象

    • 在文本框中输入一个 JSON 对象,代表 Map。例如:
 

json

复制代码

{ "key1": "value1", "key2": "value2", "key3": "value3" }

示例

以下是你在 Postman 中应该输入的完整设置:

  • 请求方法POST
  • URLhttp://localhost:8080/api/map
  • 请求头
    • Content-Type: application/json
  • 请求体
 

json

复制代码

{ "key1": "value1", "key2": "value2", "key3": "value3" }

发送请求

完成以上设置后,点击 “Send” 按钮发送请求。你将看到返回的响应,通常是处理后的结果。

注意事项

  • 确保后端服务正在运行,并且 URL 和端口正确。
  • 确保 JSON 数据格式正确,符合 JSON 语法。

相关文章:

面试准备第一版ssm spring-springmvc

请写出spring中常用的依赖注入方法&#xff1a; 1、setter 2、构造方法注入 3、字段注入 Setter 注入&#xff1a; 通过公共的 setter 方法进行依赖注入。优点&#xff1a;可选依赖&#xff0c;能更清晰地看到依赖关系。缺点&#xff1a;依赖在构造时不可用&#xff0c;可能导…...

Ubuntu学习笔记 - Day1

文章目录 学习目标&#xff1a;学习内容&#xff1a;学习笔记&#xff1a;Linux简介基于Linux内核的系统 Ubuntu简介GNU简介 远程连接Ubuntu查看Ubuntu的IP地址Mac连接Ubuntu此时可能显示报错&#xff0c;连接被拒绝解决办法连接成功连接退出 学习目标&#xff1a; 一周掌握 Li…...

挑战Java面试题复习第4天,坚持就是胜利

挑战第 4 天 Excption与Error包结构OOM 知识点SOF 知识点线程程序进程知识点有些字段不想序列化&#xff0c;怎么办&#xff1f;说说 IO 流Java IO与 NIO的区别 Excption与Error包结构 运行时异常&#xff08;RuntimeException&#xff09;&#xff1a; 包括RuntimeException…...

Android 虚拟化框架(AVF)指南

Android 虚拟化框架&#xff08;AVF&#xff09;指南 一、项目介绍二、项目特色三、如何使用AVF四、总结 随着移动设备的普及和应用场景的多样化&#xff0c;安全性和隐私保护成为了移动操作系统的重要课题。Android作为全球最广泛使用的移动操作系统之一&#xff0c;一直在不断…...

day-77 超级饮料的最大强化能量

思路 动态规划&#xff1a;因为每一步要么选A&#xff0c;要么选B&#xff0c;所以问题可以转换为求最后一步从A选或从B选中的较大值 解题过程 定义而二维数组dp,dp[i][0]表示最后一步从A取能获得的最大能量&#xff0c;dp[i][1]表示最后一步从B取能获得的最大能量状态转换方程…...

有道小P 1.0.8 | 完全免费的AI全科学习助手,家长的好帮手

有道小P是一款由网易有道出品的完全免费的AI全科学习助手&#xff0c;专为中小学生设计。它支持多种输入方式&#xff0c;包括文字、语音和拍照识别&#xff0c;能够覆盖十个科目的所有题型&#xff0c;提供详细的解析和逐步解答&#xff0c;帮助孩子们理解和吸收知识。此外&am…...

vue项目中如何在路由变化时增加一个进度条

在 Vue.js 项目中&#xff0c;使用路由&#xff08;如 Vue Router&#xff09;时&#xff0c;为了提升用户体验&#xff0c;你可能会想要在路由变化时显示一个进度条。这可以通过多种方式实现&#xff0c;其中一种流行的做法是使用第三方库&#xff0c;如 vue-loading-bar 或 n…...

如何解决mingw64安装后配置完环境变量仍然执行不了gcc命令以及Vscode中的环境路径配置中找不到gcc

配置环境变量教程很多&#xff0c;就不多说&#xff0c;说下耗费一小时解决的问题&#xff1a;mingw64安装后配置完环境变量仍然执行不了gcc命令 配置 了N次了&#xff0c;都还是在终端找不到指令&#xff0c;然后&#xff0c;将路径放到第一个&#xff0c;然后再看下&#xf…...

3-petalinux2018.3 摸索记录 - 命令驱动 _ 交叉编译链

一、命令行控制GPIO 对于ps端设备&#xff0c;在板卡的linux系统中&#xff0c;切换到/sys/class/gpio路径下可以看到目前挂载的gpio设备。 export&#xff1a; 导入用户空间 gpiochip&#xff1a; 系统中gpio寄存器信息 unexport&#xff1a; 移除用户空间 以MIO40和MIO42…...

【二分查找】——模板

二分查找模板题 一、题目要求 给定一个长度为n的非递减数组和一个数字target&#xff0c;要求找到数组中第一个大于等于target的位置pos&#xff0c;数组下标从 0 开始。如果不存在大于等于target的数字&#xff0c;则输出 -1。 二、输入格式 第一行&#xff1a;为两个正整…...

从可逆计算看DSL的设计要点

低代码平台的可视化设计器本质上是DSL&#xff08;Domain Specific Language&#xff09;的结构化编辑器。可视化设计器将编辑的结果序列化成文本格式时所采用的规范就是一种DSL语法定义。 Nop平台基于可逆计算原理&#xff0c;提出了一整套系统化的构建机制来简化DSL的设计和…...

axios竟态问题

竟态问题 在我们日常开发经常遇到一些竟态问题 例子1 现象1 表格分页&#xff0c;如果设置请求loading, 先切换到分页第99页&#xff0c;迅速在又切换到第1页&#xff0c;最后列表显示的是第99页数据。 原因 由于第99页请求数据花费时间可能500ms,第1页数据只需要100ms,第1页…...

如何批量注册多个Outlook邮箱账号并避免关联

批量注册多个Outlook邮箱账号时&#xff0c;如何避免账号之间的关联性是一个重要的考量因素。会在此文一起探讨如何高效且安全地批量注册多个Outlook邮箱账号&#xff0c;并提供一些实用的建议来确保这些账号不会被关联。 一、Outlook邮箱批量注册机制 在深入注册流程之前&…...

如何在安卓設備上設置全局代理?

對於安卓用戶來說&#xff0c;設置全局代理是維護網路隱私一種有效的方法&#xff0c;可以幫助在所有應用中使用同一個代理伺服器。本文將詳細介紹如何在安卓設備上進行全局代理設置。全局代理指的是通過一個代理伺服器來轉發設備上所有應用程式的網路請求。這樣&#xff0c;所…...

操作系统实验记录

实验零:虚拟机安装 一、安装vmware虚拟机 与vmware匹配搜索结果 - 考拉软件 (rjctx.com),下载17.5.1版本即可下载后对照教程安装 二、下载iso虚拟驱动 搜索清华大学镜像网站,点击再搜ubuntu,下载这个4.1GB的iso文件安装后打开vmware虚拟机 三、配置vmware虚拟机 右键管…...

FastAPI 路径参数详解:动态路径与数据校验的灵活实现

FastAPI 路径参数详解&#xff1a;动态路径与数据校验的灵活实现 本文全面介绍了在 FastAPI 中使用路径参数的技巧和实现方式。路径参数允许 API 动态响应不同路径中的请求信息&#xff0c;结合 URL&#xff08;Uniform Resource Locator&#xff09;和 URI&#xff08;Unifor…...

【STM32】SD卡

(一)常用卡的认识 在学习这个内容之前&#xff0c;作为生活小白的我对于SD卡、TF卡、SIM卡毫无了解&#xff0c;晕头转向。 SD卡&#xff1a;Secure Digital Card的英文缩写&#xff0c;直译就是“安全数字卡”。一般用于大一些的电子设备比如&#xff1a;电脑、数码相机、AV…...

我一口气记录下整个接口自动化测试过程!

一、为什么选用postman postman调试工具无论对于开发和测试小白&#xff0c;还是技术大牛来说应该都耳熟能详&#xff0c;在过去的几年里大家对这款工具应用最广的用途是把当作接口调试的测试工具&#xff0c;它能发送几乎所有类型的HTTP请求&#xff0c;操作界面非常简洁美观…...

【VS中Git同步提交 报错:访问.vs/FileContentIndex/xxx.vsidx权限不允许】

参考&#xff1a; Git commit vsidx file access denied in Visual Studio 一劳永逸的方法&#xff1a; 在VSCode里&#xff0c;Git->设置->选项&#xff1a;编辑.gitignore文件&#xff0c;如下图&#xff1a; 忽略整个.vs文件夹&#xff0c;再重新提交就不会有涉及…...

Linux下Nginx的安装与使用

Linux下Nginx的安装与使用 博客&#xff1a; www.lstar.icu 开源地址 Gitee 地址&#xff1a; https://gitee.com/lxwise/iris-blog_parent Github 地址&#xff1a; https://github.com/lxwise/iris-blog_parent 序言 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势&#xff1a;专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发&#xff0c;是一款收费低廉但功能全面的Windows NAS工具&#xff0c;主打“无学习成本部署” 。与其他NAS软件相比&#xff0c;其优势在于&#xff1a; 无需硬件改造&#xff1a;将任意W…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad&#xff08;Adaptive Gradient Algorithm&#xff09;是一种自适应学习率的优化算法&#xff0c;由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率&#xff0c;适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架&#xff0c;相比 MapReduce 具有以下核心优势&#xff1a; 内存计算&#xff1a;数据可常驻内存&#xff0c;迭代计算性能提升 10-100 倍&#xff08;文档段落&#xff1a;3-79…...

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat&#xff08;I/O Statistics&#xff09;是Linux系统下用于监视系统输入输出设备和CPU使…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...