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

springBoot与Web后端基础

数据结构专栏小知识总结分享题目历练场功能包与集合类介绍java EE一、基本架构与spring Boot1.1 两个基本架构b/s 架构 : 客户端只需要浏览器,应用程序的逻辑与数据都在服务器上.c/s 架构 : 单独开发与维护客户端.1.2 spring Boot入门可以帮助我们非常快速的构建应用程序,简化开发,提高效率.二 、入门程序需求 : 向着端口发送请求,得到回复数据2.1 创建一个spring Boot工程,勾选相关依赖勾选maven2.2 定义一个controller类,添加注解,表明当前是一个请求处理类3.3为什么一个main方法就将web应用启动了?spring starts 起步依赖,因为依赖存在连续性质,来包含着tomcat起步依赖,将程序启动在tomcat服务器中.三、HTTP协议3.1 http特点超文本传输协议,规定了浏览器与服务器之间的数据传输规则基于TCP协议面向连接安全。一次请求一次响应对事务没有记忆能力每次请求与响应都是独立的。请求协议部分与响应协议部分3.2.1 请求数据格式一般分为请求行请求头请求体三部分3.2.2 请求数据获取服务器会对http协议的请求进行解析,并进行封装(Http Servlet Request),在调用controller方法的时候传递给方法.package com.six; import jakarta.servlet.http.HttpServletRequest; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; RestController public class requestController { RequestMapping(/request) public String request(HttpServletRequest request){ //1.获得请求方式 String method request.getMethod(); // GET System.out.println(method method); //2.获得请求路径 String path request.getRequestURI(); // /requset System.out.println(path path); StringBuffer path2 request.getRequestURL(); // http://localhost:8080/requset System.out.println(path2 path2); //3.获得请求参数name ,age String name request.getParameter(name); String age request.getParameter(age); System.out.println(name name); System.out.println(age age); //4.获得请accept求头 String accept request.getHeader(accept); System.out.println(accept accept); //5.获得请求协议 String protocol request.getProtocol(); System.out.println(protocol protocol); return ok; } }3.3.1响应数据格式状态码总共分为5类重定向3.3.2响应数据设置服务器会对http协议的请求进行解析,并进行封装(Http Servlet Response),在调用controller方法的时候传递给方法.通常情况下不需要设置状态码与相应头。服务器会根据具体情况进行设置。package com.six; import jakarta.servlet.http.HttpServletResponse; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.io.IOException; RestController public class responseController { RequestMapping(/response) public void response(HttpServletResponse response) throws IOException { //设置响应头 response.setHeader(name, duoduo); //设置响应状态码 response.setStatus(200); //设置响应体 response.getWriter().write(h1duoduo is very pretty/h1); } // 使用spring自带进行设置 RequestMapping(/response2) public ResponseEntityString response2(){ // 泛型表示响应体的数据类型 return ResponseEntity.status(401). header(name, duoduo). body(h1duoduo is very pretty/h1); } }前后端数据读取基本步骤四、分层解耦4.1三层架构Controller : 控制层,接受前段发送的请求,对请求进行处理,并响应数据Service : 业务逻辑层Dao : 数据访问层,负责数据的访问操作,增删改查…不同架构之间通过面向接口方式进行关联的好处:面向接口优点4.2分层解耦高内聚,低耦合耦合 : 层与层,模块与模块之间的关连程度.内聚 : 各个模块之间功能联系层与层之间的解耦4.3 IOC 与 DIComponent : 将当前类交给IOC管理。查看bean是默认是类名字母小写,当然在注解时也可以添加val值进行命名.Autowired : 在实例化语句上添加注释,会从IOC中挑选相对应的对象并赋值到新建对象上。属性注入 (最为简单快捷 但是隐藏了类之间的以来环境,可能破摔类的封装性)构造函数注入//构造器注入 private final userService userService; Autowired public userController(userService userService) { this.userService userService; }setter注入private userService userService; Autowired public void setUserService(userService userService) { this.userService userService; }当一个接口实现了多个实现类,怎么指定导入那个类方案2,3均为bean 的名字,不是类名resource 与 autowired的区别前者是Java EE提供的规范后者是spring框架提供的。前者是按照名字进行注入后者是按照类型进行注入。总结到这里我的分享就先结束了~,希望对你有帮助我是dylan 下次见~无限进步

相关文章:

springBoot与Web后端基础

🚗🚗🚗🚗🚗🚗🚗 数据结构专栏🚗🚗🚗🚗🚗🚗🚗🚗🚗🚗 🛹&#x1…...

山东大学软件学院2026年毛中特期末考试题目

授课老师:tpp开卷考试,可以携带课本和手写纸质材料多看CSDN上的往年题和PPT上的思考题……一、简答题1. 为什么要没收封建地主的土地归农民所有?2. 社会主义建设道路初步探索的意义。3. 中国共产党对于全面建成小康社会的探索。二、论述题1. …...

喜马拉雅下载XM格式无法导出播放怎么办?常见原因和xm转mp3处理方法整理

在使用喜马拉雅下载有声小说或课程后,有些用户会遇到这样的问题:音频已经成功下载,但导出到电脑、U盘或者其它播放器后却无法播放,文件显示为 .xm 格式。这种情况在整理音频资料、复制到车载设备或者分享给他人时比较常见。从实际…...

A-index算法在多媒体内容真实性检测中的应用与优化

1. 项目背景与核心挑战在数字内容爆炸式增长的今天,多媒体内容的真实性检测已成为信息安全领域的关键课题。我最近完成了一个关于A-index算法在内容真实性检测中的应用研究项目,这个技术能够有效识别经过深度伪造(Deepfake)处理的…...

Murata村田贴片电感原厂原装一级代理分销经销

序号 品牌 元件类别 型号 描述 包装 1 MURATA 电感 LQG15HSR12J02D 0402 120NH 5% 10000 2 MURATA 电感 LQG15HSR18J02D 0402 180NH 5% 10000...

Ztasemi智塔科技原厂原装一级代理商分销经销

品牌 元件类别 型号 描述 包装 数量 Ztasemi MOSFET ZT12P06D TO252 2500 10,000...

5分钟完成GPU显存健康诊断:memtest_vulkan终极实战指南

5分钟完成GPU显存健康诊断:memtest_vulkan终极实战指南 【免费下载链接】memtest_vulkan Vulkan compute tool for testing video memory stability 项目地址: https://gitcode.com/gh_mirrors/me/memtest_vulkan 在现代计算应用中,GPU显存稳定性…...

2026山东大学软件学院创新项目实训博客(四)

【智绘博弈】画风建模——为什么要给AI加上记忆项目:智绘博弈 —— 人机对抗绘画猜词与心理解读系统角色:AI 识别 & 心理解读模块负责人日期:2026.4.20 - 2026.5.3一、本周目标前三周完成了AI猜词的核心功能:模型选型、API接入…...

中考失利不用慌!漳州华起技工学校,给初三生另一条升学坦途

相信很多漳州的初三家长都有过这样的焦虑:孩子马上中考,成绩一直不理想,担心考不上高中,不知道以后该怎么办;还有的家长,孩子已经中考失利,面对五花八门的择校信息,不知道该选哪所学…...

为OpenClaw智能体工作流配置Taotoken作为其模型供应商的详细步骤

为OpenClaw智能体工作流配置Taotoken作为其模型供应商的详细步骤 1. 准备工作 在开始配置之前,请确保您已经拥有有效的Taotoken API Key。可以在Taotoken控制台的API Key管理页面创建新的密钥。同时,您需要确定要使用的模型ID,这些信息可以…...

3步搞定:让PS4/PS5手柄在Windows上获得完美游戏体验

3步搞定:让PS4/PS5手柄在Windows上获得完美游戏体验 【免费下载链接】DS4Windows Like those other ds4tools, but sexier 项目地址: https://gitcode.com/gh_mirrors/ds/DS4Windows 还在为Windows游戏不支持PlayStation手柄而烦恼吗?DS4Windows这…...

魔兽世界GSE宏编译器终极指南:告别复杂操作,实现一键智能连招

魔兽世界GSE宏编译器终极指南:告别复杂操作,实现一键智能连招 【免费下载链接】GSE-Advanced-Macro-Compiler GSE is an alternative advanced macro editor and engine for World of Warcraft. 项目地址: https://gitcode.com/gh_mirrors/gs/GSE-Adv…...

终极解密:wxapkg-convertor 实战指南,高效反编译微信小程序源码

终极解密:wxapkg-convertor 实战指南,高效反编译微信小程序源码 【免费下载链接】wxapkg-convertor 一个反编译微信小程序的工具,仓库也收集各种微信小程序/小游戏.wxapkg文件 项目地址: https://gitcode.com/gh_mirrors/wx/wxapkg-convert…...

3步解决Cursor编辑器试用限制:跨平台设备标识重置指南

3步解决Cursor编辑器试用限制:跨平台设备标识重置指南 【免费下载链接】go-cursor-help 解决Cursor在免费订阅期间出现以下提示的问题: Your request has been blocked as our system has detected suspicious activity / Youve reached your trial request limit. …...

KMS智能激活工具:Windows和Office永久激活终极指南

KMS智能激活工具:Windows和Office永久激活终极指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统频繁弹出激活提示而烦恼吗?Office文档突然变成只读模…...

终极免费激活方案:KMS_VL_ALL_AIO智能激活工具完整指南

终极免费激活方案:KMS_VL_ALL_AIO智能激活工具完整指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统频繁弹出激活提示而烦恼吗?Office突然变成只读模…...

激光雷达发射、接收、扫描、处理器四大核心器件的主流供应商及选型关键指标是什么?

激光雷达的四大核心器件——发射、接收、扫描、处理器,共同决定了系统的探测距离、分辨率与可靠性。以下从主流供应商与选型指标两个维度展开。 一、发射模块:能量之源,决定探测距离与功耗 发射模块的核心是激光器,负责产生高功率激光脉冲。其核心指标与主流玩家如下: 核…...

如何在macOS上使用HSTracker免费提升炉石传说胜率:终极指南

如何在macOS上使用HSTracker免费提升炉石传说胜率:终极指南 【免费下载链接】HSTracker A deck tracker and deck manager for Hearthstone on macOS 项目地址: https://gitcode.com/gh_mirrors/hs/HSTracker HSTracker是一款专为macOS平台设计的免费开源炉石…...

3分钟掌握B站视频下载:BilibiliDown全功能解析与实战指南

3分钟掌握B站视频下载:BilibiliDown全功能解析与实战指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirror…...

ZYNQ开发者避坑指南:关于QSPI启动,你必须知道的‘双FSBL’策略与JTAG模式切换技巧

ZYNQ开发者避坑指南:QSPI启动的双FSBL策略与JTAG模式切换实战解析 在嵌入式系统开发领域,Xilinx ZYNQ系列SoC因其独特的ARM处理器FPGA架构而广受欢迎。然而,随着Vivado工具链的迭代更新,许多开发者在使用QSPI Flash固化程序时遇到…...

终极指南:3步掌握Harepacker-resurrected游戏资源编辑完整教程

终极指南:3步掌握Harepacker-resurrected游戏资源编辑完整教程 【免费下载链接】Harepacker-resurrected All in one .wz file/map editor for MapleStory game files 项目地址: https://gitcode.com/gh_mirrors/ha/Harepacker-resurrected 想要为《冒险岛》…...

ASMRoner:一站式ASMR音声资源管理工具,轻松构建个人音频库

ASMRoner:一站式ASMR音声资源管理工具,轻松构建个人音频库 【免费下载链接】asmr-downloader A tool for download asmr media from asmr.one(Thanks for the asmr.one) 项目地址: https://gitcode.com/gh_mirrors/as/asmr-downloader 你是否曾经…...

ADRC太难调?试试这个‘拆解版’:手把手教你用C语言实现非线性跟踪微分器(TD)

非线性跟踪微分器(TD)的C语言实战:从原理到嵌入式实现 在工业控制和信号处理领域,我们经常需要从带有噪声的传感器信号中提取出干净的测量值和其微分信号。传统的一阶或二阶滤波器虽然简单,但在快速性和平滑性之间往往难以兼顾。这就是非线性…...

如何从零打造智能机器狗:openDogV2完整开发指南

如何从零打造智能机器狗:openDogV2完整开发指南 【免费下载链接】openDogV2 项目地址: https://gitcode.com/gh_mirrors/op/openDogV2 想要亲手制作一只能够自主行走、感知环境的智能机械伙伴吗?openDogV2开源项目为你提供了从机械设计到AI集成的…...

如何快速解锁NCM音乐文件:完整免费转换指南

如何快速解锁NCM音乐文件:完整免费转换指南 【免费下载链接】ncmppGui 一个使用C编写的极速ncm转换GUI工具 项目地址: https://gitcode.com/gh_mirrors/nc/ncmppGui 你是否曾在音乐平台下载了心爱的歌曲,却发现只能在特定应用中播放?N…...

别再傻傻重装Office了!一招搞定0xC004F074激活报错,问题出在‘software protection’服务

破解Office激活困局:深入剖析0xC004F074错误与software protection服务的关联 当你满心欢喜地安装完Office,准备大展拳脚时,屏幕上突然跳出"0xC004F074"这个令人窒息的错误代码——这恐怕是许多办公族都经历过的噩梦。更令人抓狂的…...

免费音乐解锁神器:浏览器端一键解密20+加密音乐格式的终极指南

免费音乐解锁神器:浏览器端一键解密20加密音乐格式的终极指南 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址…...

H5maker:零代码快速构建专业级互动页面的开源解决方案

H5maker:零代码快速构建专业级互动页面的开源解决方案 【免费下载链接】h5maker h5编辑器类似maka、易企秀 账号/密码:admin 项目地址: https://gitcode.com/gh_mirrors/h5/h5maker 问题与解决方案:为什么需要H5制作工具? …...

JPEGView:重新定义轻量级图像查看的3个关键突破

JPEGView:重新定义轻量级图像查看的3个关键突破 【免费下载链接】jpegview Fork of JPEGView by David Kleiner - fast and highly configurable viewer/editor for JPEG, BMP, PNG, WEBP, TGA, GIF and TIFF images with a minimal GUI. Basic on-the-fly image pr…...

如何在10分钟内为Xiaomusic创建你的第一个自定义语音命令插件

如何在10分钟内为Xiaomusic创建你的第一个自定义语音命令插件 【免费下载链接】xiaomusic 使用小爱音箱播放音乐,音乐使用 yt-dlp 下载。 项目地址: https://gitcode.com/GitHub_Trending/xia/xiaomusic Xiaomusic是一个开源音乐播放器项目,它让你…...