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

Javaweb之SpringBootWeb案例之自动配置案例的自定义starter测试的详细解析

3.2.4.3 自定义starter测试

阿里云OSS的starter我们刚才已经定义好了,接下来我们就来做一个测试。

今天的课程资料当中,提供了一个自定义starter的测试工程。我们直接打开文件夹,里面有一个测试工程。测试工程就是springboot-autoconfiguration-test,我们只需要将测试工程直接导入到Idea当中即可。

 

测试前准备:

  1. 在test工程中引入阿里云starter依赖

    • 通过依赖传递,会把autoconfigure依赖也引入了

    <!--引入阿里云OSS起步依赖-->
    <dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-oss-spring-boot-starter</artifactId><version>0.0.1-SNAPSHOT</version>
    </dependency>

  2. 在test工程中的application.yml文件中,配置阿里云OSS配置参数信息(从以前的工程中拷贝即可)

    #配置阿里云OSS参数
    aliyun:oss:endpoint: https://oss-cn-shanghai.aliyuncs.comaccessKeyId: LTAI5t9MZK8iq5T2Av5GLDxXaccessKeySecret: C0IrHzKZGKqU8S7YQcevcotD3Zd5TcbucketName: web-framework01

  3. 在test工程中的UploadController类编写代码

    @RestController
    public class UploadController {
    ​@Autowiredprivate AliOSSUtils aliOSSUtils;
    ​@PostMapping("/upload")public String upload(MultipartFile image) throws Exception {//上传文件到阿里云 OSSString url = aliOSSUtils.upload(image);return url;}
    ​
    }

编写完代码后,我们启动当前的SpringBoot测试工程:

  • 随着SpringBoot项目启动,自动配置会把AliOSSUtils的bean对象装配到IOC容器中

用postman工具进行文件上传:

通过断点可以看到自动注入AliOSSUtils的bean对象:

相关文章:

Javaweb之SpringBootWeb案例之自动配置案例的自定义starter测试的详细解析

3.2.4.3 自定义starter测试 阿里云OSS的starter我们刚才已经定义好了&#xff0c;接下来我们就来做一个测试。 今天的课程资料当中&#xff0c;提供了一个自定义starter的测试工程。我们直接打开文件夹&#xff0c;里面有一个测试工程。测试工程就是springboot-autoconfigurat…...

java包的相关概念

包&#xff1a;有效地管理类的一个机制。 包名的目的&#xff1a;通过隶属不同的包有效的区分不同源文件中名字相同的类 包语句 声明&#xff1a;通过关键字 package声明包语句。 位置&#xff1a;源文件中的第一条语句。 作用&#xff1a;为该源文件中声明的类指定包名。 …...

window搭建本地mongo数据库并导入数据

1 window下载mongo数据库 官网&#xff1a;www.mongodb.com 选择 Products > Community Edition 就能进入社区版 在这里下载 windows 版对应的安装包 注意&#xff1a;6.0.1 版本的 MongoDB 配置环境变量有问题&#xff0c;并且我不知道怎么解决&#xff0c;如果想要避免出…...

如何为Android车载应用开发通知?

如何为Android车载应用开发通知&#xff1f;在开发车载应用的通知时&#xff0c;开发者需要考虑到驾驶安全&#xff0c;确保通知不会分散驾驶员的注意力。这通常意味着通知应该是非侵入性的&#xff0c;或者在不影响驾驶的情况下提供信息。开发者可以使用Android的通知API来创建…...

centos上部署k8s

环境准备 四台Linux服务器 主机名 IP 角色 k8s-master-94 192.168.0.94 master k8s-node1-95 192.168.0.95 node1 k8s-node2-96 192.168.0.96 node2 habor 192.168.0.77 镜像仓库 三台机器均执行以下命令&#xff1a; 查看centos版本 [rootlocalhost Work]# cat /…...

网络安全: Kali Linux 进行 MSFvenom 程序利用

目录 一、实验 1.环境 2. Kali Linux 进行 MSFvenom 程序利用 3. 创建计划任务自动运行 MSFvenom 程序 二、问题 1.在线加密解密 2.MSF 运行失败 3.MobaXterm 连接Ubuntu 失败 一、实验 1.环境 &#xff08;1&#xff09;主机 表1 主机 系统版本IP备注Kali Linux20…...

浅显易懂C语言指针!!!(三)

文章目录 Pointers as function arguments - call by reference//函数传值vs传引用 Pointers as function arguments - call by reference//函数传值vs传引用 #include<stdio.h> void Increment(int a){//increment 增加 a a 1;//&#xff1b;函数中的是形式参数 形参…...

01 LM 算法及 Cpp 实现

文章目录 01 LM 算法及 Cpp 实现1.1 应用1.2 阻尼法推导1.3 Cpp 算法实现 01 LM 算法及 Cpp 实现 1.1 应用 LM 算法用于解决非线性最小二乘问题 min ⁡ x F ( x ) 1 2 ∥ f ( x ) ∥ 2 2 (1) \min _x F(x)\frac{1}{2}\|f(\boldsymbol{x})\|_2^2 \tag{1} xmin​F(x)21​∥f(x…...

【网络安全架构】互联网正对中国社会、经济、文化等各个领域产生巨大影响‘

摘 要&#xff1a; 中国互联网近年来飞速发展&#xff0c;普及率达到38.4%。已稳居世界第一网民大国的地位。互联网正对社会、经济、文化等各个领域产生巨大影响。2011年12月21日“泄密门”事件&#xff0c;再次敲响网络安全的警钟。网络攻击和入侵都是根据网络模型不同层次的特…...

【笔记】Android ServiceStateTracker 网络状态变化逻辑及SPN更新影响

业务简介 在网络状态变化的时候&#xff08;数据或WiFi&#xff09;&#xff0c;会更新SPN。 基于Android U的代码分析。 分类&#xff1a;SPN Data_Dic-的博客-CSDN博客 功能逻辑 状态说明 飞行模式下注册上WFC的话&#xff0c;注册状态MD上报 regState: NOT_REG_MT_NOT…...

2PC和3PC的区别是什么

2PC提交协议是什么 二阶段提交是指&#xff0c;在计算机网络一级数据库领域内&#xff0c;为了使基于分布式系统的架构下的所有节点在进行事务提交时保持一致性而设计的一种算法。在分布式系统中&#xff0c;每个节点虽然可以知晓自己操作的成功和失败&#xff0c;但是无法知道…...

redis未设置密码被植入挖矿脚本

最近一台测试linux响应速度贼慢&#xff0c;检查发现cpu消耗高达100%&#xff01;查看进程杀死后过段时间又重启了&#xff0c;一时间也摸不到头绪。无意间发现启动redis的时候cpu瞬间拉到了100%&#xff0c;主要就是zzh和newinit.sh两个脚本。百度了一下说是被植入了挖矿脚本&…...

轮询--一起学习吧之架构

一、定义 轮询&#xff08;Polling&#xff09;是一种CPU决策如何提供周边设备服务的方式&#xff0c;又称“程控输出入”&#xff08;Programmed I/O&#xff09;。这种方式是由CPU定时发出询问&#xff0c;依序询问每一个周边设备是否需要其服务&#xff0c;有即给予服务&am…...

【开发工具】Git模拟多人开发场景理解分支管理和远程仓库操作

我们来模拟一个多人多分支的开发场景。假设你有一个新的空白远程仓库,假设地址是 https://github.com/user/repo.git。 克隆远程仓库到本地 $ git clone https://github.com/user/repo.git这会在本地创建一个 repo 目录,并自动设置远程主机为 origin。 创建本地开发分支并推送…...

从零学习Linux操作系统 第三十一部分 ansible常用模块介绍

一、ansible运行模块的两种方式 Ad-Hoc方式 ##利用ansible命令直接完成管理&#xff0c;主要用于临时命令使用场景 playbook方式 ##ansible脚本&#xff0c;主要用于大型项目场景&#xff0c;需要前期的规划&#xff0c;相当于shell当中的脚本 二、如何查看模块帮助 ansible…...

【Linux C | 网络编程】多播的概念、多播地址、UDP实现广播的C语言例子

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…...

HarmonyOS NEXT应用开发案例——滑动页面信息隐藏与组件位移效果

介绍 在很多应用中&#xff0c;向上滑动"我的"页面&#xff0c;页面顶部会有如下变化效果&#xff1a;一部分信息逐渐隐藏&#xff0c;另一部分信息逐渐显示&#xff0c;同时一些组件会进行缩放或者位置移动。向下滑动时则相反。 效果图预览 使用说明 向上滑动页面…...

ffmpeg 转码过程中参数含义

ffmpeg 转码过程中参数含义 frame 649 fps 73 q28.0 size 3072kB time00:00:25.88 bitrate 972.4kbits/ frame 694 fps 74 q28.0 size 3328kB time00:00:27.68 bitrate 984.9kbits/ frame 732 fps 74 q28.0 size 3584kB time00:00:29.20 bitrate1005.5kbits/ fram…...

探索c++——了解c++的魅力

前言&#xff1a;c是一门既面向对象又面向过程的语言。 不同于java纯粹的面向对象和c纯粹的面向过程。 造成c该特性的原因是c是由本贾尼大佬在c的基础上增添语法创建出来的一门新的语言。 它既兼容了c&#xff0c; 身具面向过程的特性。 又有本身的面向对象的特性。 面向对象和…...

Oracle常用语句语法

1 第一章Oracle命令 转载至 Oracle常用语句语法汇总 https://www.modb.pro/db/1759752946170548224 a) 系统管理员连接 conn */* as sysdba b) 查询当前用户 show user c) 创建新用户 create user 用户名 identified by 密码&#xff08;密码不能以数字开头&#xff09;。例如…...

AudioSeal效果展示:对抗白噪声、混响、变速变调攻击的鲁棒性案例

AudioSeal效果展示&#xff1a;对抗白噪声、混响、变速变调攻击的鲁棒性案例 1. 音频水印技术新标杆 想象一下&#xff0c;当你听到一段AI生成的语音时&#xff0c;如何确认它的真实来源&#xff1f;这就是AudioSeal要解决的核心问题。作为Meta开源的语音水印系统&#xff0c…...

STEP3-VL-10B实战案例:科研论文截图→公式识别→LaTeX还原→语义解释生成

STEP3-VL-10B实战案例&#xff1a;科研论文截图→公式识别→LaTeX还原→语义解释生成 1. 引言&#xff1a;当科研遇上多模态AI 如果你经常需要阅读英文论文&#xff0c;特别是那些数学、物理、计算机科学领域的文章&#xff0c;一定遇到过这样的困扰&#xff1a;论文里密密麻…...

YOLOv9镜像快速上手:一行命令跑通推理,小白也能玩转目标检测

YOLOv9镜像快速上手&#xff1a;一行命令跑通推理&#xff0c;小白也能玩转目标检测 1. 为什么选择YOLOv9镜像 目标检测作为计算机视觉的核心任务&#xff0c;在安防监控、自动驾驶、工业质检等领域有着广泛应用。而YOLO系列模型以其速度快、精度高的特点&#xff0c;成为该领…...

Comsol模拟混凝土中水分传递 低气压下水分转移引起的水泥浆龄期微观结构变化 低气压(AP)...

Comsol模拟混凝土中水分传递 低气压下水分转移引起的水泥浆龄期微观结构变化 低气压&#xff08;AP&#xff09;会影响混凝土中的水分传递&#xff0c;进而影响其微观结构和体积特性&#xff0c;但对其热力学机制却知之甚少 可文献复现 水泥基材料内部的水分运动会直接改变孔隙…...

如何用AnythingLLM打造你的智能文档聊天机器人:5大核心功能全解析

如何用AnythingLLM打造你的智能文档聊天机器人&#xff1a;5大核心功能全解析 【免费下载链接】anything-llm 这是一个全栈应用程序&#xff0c;可以将任何文档、资源&#xff08;如网址链接、音频、视频&#xff09;或内容片段转换为上下文&#xff0c;以便任何大语言模型&…...

纯本地运行!AgentCPM深度研报助手,手把手教你离线生成研究报告

纯本地运行&#xff01;AgentCPM深度研报助手&#xff0c;手把手教你离线生成研究报告 1. 为什么选择本地研报生成工具&#xff1f; 在信息爆炸的时代&#xff0c;专业研究报告的撰写面临三大痛点&#xff1a; 时间压力&#xff1a;从零开始撰写一份深度报告平均需要40-60小…...

IndexTTS 2.0情感控制效果:用自然语言描述生成对应语气语音

IndexTTS 2.0情感控制效果&#xff1a;用自然语言描述生成对应语气语音 1. 引言&#xff1a;语音合成的革命性突破 想象一下这样的场景&#xff1a;你正在制作一部动画短片&#xff0c;主角需要说一句"我受够了&#xff01;"——但你不只是想让它"说出来"…...

如何用开源OCR突破效率瓶颈?Umi-OCR三大核心优势深度解析

如何用开源OCR突破效率瓶颈&#xff1f;Umi-OCR三大核心优势深度解析 【免费下载链接】Umi-OCR Umi-OCR: 这是一个免费、开源、可批量处理的离线OCR软件&#xff0c;适用于Windows系统&#xff0c;支持截图OCR、批量OCR、二维码识别等功能。 项目地址: https://gitcode.com/G…...

MWGA 双线编译技术方案:一份代码,双端生成

核心技术原理MWGA 的双线编译基于模块化架构与跨平台编译引擎&#xff0c;实现「一份代码&#xff0c;双向生成」。代码分层&#xff1a; 将代码划分为核心业务逻辑层与端侧 UI 适配层。核心层包含数据模型、算法、权限校验等通用功能&#xff0c;纯 C# 编写且不依赖端侧 API&a…...

深入解析visualization_msgs::Marker:从基础到实战应用

1. visualization_msgs::Marker是什么&#xff1f; 如果你正在用ROS做机器人开发&#xff0c;肯定遇到过这样的需求&#xff1a;想让机器人在rviz里显示一些自定义的图形&#xff0c;比如路径规划时的参考线、传感器检测到的障碍物轮廓&#xff0c;甚至是简单的文字提示。这时候…...