vue实现与后台springboot传递数据【传值/取值 Axios 】

vue实现与后台springboot传递数据【传值/取值】

提示:帮帮志会陆续更新非常多的IT技术知识,希望分享的内容对您有用。本章分享的是node.js和vue的使用。前后每一小节的内容是存在的有:学习and理解的关联性。【帮帮志系列文章】:每个知识点,都是写出代码和运行结果且前后关联上的去分析和说明(能大量节约您的时间)。

所有文章都*不会*直接把代码放那里,让您自己去看去理解。我希望我的内容对您有用而努力~


文章目录

  • vue实现与后台springboot传递数据【传值/取值】
  • 前言
  • vue工程安装axios,及axios的语法
  • 一、编写网页界面
  • 二、编写后台对应的类
  • 三、启动
  • 总结


本文章是系列文章,技术栈内容为:【springboot+vue】【前后分离】
【详细图文,实操步骤分享,节约时间版】。最终完成一个商业化项目。内容有:
springboot知识
mybatisPlus知识
vue知识
node.js知识

本小节的内容是
vue篇章 之 : 09.vue实现与后台springboot传递数据【传值/取值】



每一个文章小节都会把 标题 说的很清楚。前后关联看,可以快速实现:前后分离。本质上,额外文章链接和文章自己标题内容关系不大。

前面小节文章已经实现springboot的创建,springboot关联前端数据swagger和springboot通过mybatisplus操作数据库
【2025年】基于电脑的jdk1.8通过idea创建springboot2.x版本(非常简洁快速)
【上榜文章,一文搞定】现在springboot是3.x以上版本,jdk版本至少要求17.但是很多时候我们电脑是jdk1.8(求稳定性和安全性)。文本分享本机电脑1.8的jdk。idea如何非常简洁快速的创建springboot
文章里面也有 为什么只能是jdk17起和地址指定为阿里云报错的解决办法

前面小节已经安装好node.js和分享了一些vue语法,及RESTful风格及安装配置swagger使用,和:
如何启动vue项目及vue语法组件化不同标签应对的作用说明
通过工具生成的vue案例(工具生成vue项目工程结构,里面有一个欢迎界面网页)为切入点,逐步逐步修改分享讲解,完成vue项目如何启动。及自行编写一些标签和样式来替换默认的内容,帮助理解包括里面的标签,js代码,样式如何配合的


前言

完成 前端 vue.js工程结构准备
前端能启动vue项目即可(vue项目的工程结构及语法分享在前面章节)。vue项目里面网页怎么写取后台的值和发送数据到后台,是本文章分享的内容:下面

完成 后台 springboot工程结构准备
包括springboot项目(dao、service、controller、pojo实体类)。controller类里面的方法能拿实现不同提交方式(get post put delete) 去调用service/dao。 dao通过mybatisPlus操作mysql数据库(前面章节有分享)

vue工程安装axios,及axios的语法

命令 npm install axios

可以在终端里面写命令。我是在 前面已经写好的 vue项目里: vsCode终端 去写的这个命令
在这里插入图片描述

axios语法:

get提交
axios.get('/user?uid=1').then(function(response){//提交后台成功,执行的内容(then里面),response是相应结果}).catch((function(error){//提交后台失败,执行的内容(catch里面),error是错误信息})
post提交
axios.post('/user',{name:'bob',age:18}).then(function(response){//提交后台成功,执行的内容(then里面),response是相应结果}).catch((function(error){//提交后台失败,执行的内容(catch里面),error是错误信息})

重要:axios语法写在哪里
其实下面有直接可以使用的案例
但,这一段分享一个概念:

vue提供了很多生命周期的函数,就是这个xxx.vue文件从创建,到加载/挂载,然后到使用,最后到销毁等等
不同的vue文件的生命周期 什么时候自动去调用函数

比如:
组件什么时候被创建?答:被使用的时候,在网页里面:逐行逐行 =标签= 加载下来,加载到您现在使用vue标签,如前面案例的:bangbangzhi标签(bangbangzhi标签表示我们自己创建的bangbangzhi.vue)。 需要显示bangbangzhi标签的时候:
bangbangzhi标签 会被创建 一个vue对象 ,然后需要就是加载。
最后用户切换网页了 \ 关闭网页了
组件就销毁
附:vue推荐组件开发,三个标签组成一个组件(js,标签,样式 这三个)【前面有分享】。这个组件可以是菜单栏,可以是网页头部,可以是网页尾部。。等等 当现在用户正在查看的网页,网页里面有用到这个组件的时候,组件就需要加载-显示

不同的生命周期,vue提供对应的不同函数(我们在代码里面写 methods: 这个是自定义函数,自己定义自己调用,和vue的生命周期没关系):

【现在我需要发送请求给后台,后台服务器发送数据给我们,所以:标签还没有显示之前,就需要自动去执行】
用:created函数,这个vue是自带的(加载组件显示之前的时候 会自动调用:)
调用之后,会声明一些对象来存储数据(存储后台发过来的数据)。生命周期结束(组件销毁。这个对象存数据也跟着销毁了~)


一、编写网页界面

App.vue里面修改:

<template><img alt="Vue logo" src="./assets/logo.png"><bangbangzhi></bangbangzhi><bangbangzhi></bangbangzhi><bangbangzhi></bangbangzhi> <!-- 这个标签是一个vue文件,前一小节分享了:《自行编写网页标签内容》 --><h1>{{ uD.uname }}</h1>  <!-- 取出ud里面的值 -->
</template><script>
//可以导入很多个自己写的组件   一个网页头部,尾部,菜单栏,左边div,中间内容。  哪个网页要用,就对应导入哪几个
import bangbangzhi from './components/bbz.vue' 
import axios from 'axios'export default {name: 'App',created:function(){ //创建当前vue对象的时候,自动执行created函数axios.get("http://localhost:8081/getUser").then((response)=>{  //后台把springboot的端口修改成了8081this.uD = response.data   //get提交到后台,将后台接收的值,放到uD变量里面})},data(){return {uD : ""  //当前仅仅声明uD变量,不给数据. 数据在  created里面赋值}},components: {bangbangzhi   //把上面我们自己在同层级位置的components文件夹里面创建的 vue文件 声明为一个标签}
}
</script>

这个是截屏,内容也不多,看vue文件的位置和里面有啥(就一个h1标签)
在script标签里面引入vue文件,并声明为一个标签。在template引用即可(可以多次,例子用了3次)
在这里插入图片描述


二、编写后台对应的类

编写后台controller

@RestController
@CrossOrigin//axios跨域的问题  不写可能报错:不信任其他地址的数据 加上这个注解即可
public class UserController {@GetMapping("/getUser")public User getUser(){ //这里没有写参数去接收前端的数据,是因为突出文章主题,其他少一点(需要接参数,正常写即可)User user = userDao.selectById(1);return user;}
}    

实体类

public class User {@TableIdprivate int uid;private String uname;//这个就是vue里面取值的成员变量private int uage;
...构造函数 get set 略
dao层使用mybatisPlus  [] 前面几个章节有

数据库
在这里插入图片描述


三、启动

在这里插入图片描述

您哪个网页需要使用后台的数据,就写上

axios.get("地址").then((response)=>{ this.变量名 = response.data   })//需要post 带数据,上面有语法分享

说明一下:我用的h1标签来举的例子,template标签可以复杂一点。有表格,循环标签,列表,if标签 ,等等等,vue语法:template标签从js里面 : {{ 取值 }} 或者 v-xxx取值。并不是文章分享的重点内容(本系列有),前面文章分享了vue的各种内容显示方法代码示例。后台也可以返回list集合,对象。

默认网页刷新就需要显示,就写在created:里面
点击按钮,才提交请求给后台,就写在自己定义的方法函数体里面,按钮绑定函数


总结

说明一下:整个这个系列实现前后分离的springboot+vue项目。序号文章一共也就10几篇,只有核心图文重点操作步骤来实现这个目标(基本上您边看边写:一个小时或者一上午就能跟着一起手搓一个前后分离项目,然后您可以自行添加功能和内容在您项目里面)

其他扩展细节知识点,本系列省略了(或者有链接)如:
axios还有一些案例,但是现在案例基本满足大部分情况,毕竟当前我们的目的是:快速手搓一个前后分离的全栈。
axios的其他功能及使用,管它*现在*用不用的上,内容全部丢进来。各位看官自行消化。那~可能会很多很多了(又耗时)。当前 系列: 手搓出来之后,您可以自行加功能和内容

(会陆续更新非常多的IT技术知识及泛IT的电商知识,可以点个关注,共同交流。ღ( ´・ᴗ・` )比心)
(也欢迎评论,提问。 我会依次回答~)

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

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

相关文章

二叉树路径总和

一、给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在根节点到叶子节点的路径&#xff0c;这条路径上所有节点值相加等于目标和 targetSum 。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 112. 路径总和 - 力扣&…

Matlab 模糊控制平行侧边自动泊车

1、内容简介 Matlab 233-模糊控制平行侧边自动泊车 可以交流、咨询、答疑 2、内容说明 略 3、仿真分析 略 4、参考论文 略

M0G3507完美移植江科大软件IIC MPU6050

经过两天两夜的查阅文献资料、整理学习&#xff0c;成功的把江科大的软件IIC读写MPU6050移植到MSPM0G3507&#xff0c;亲测有效&#xff01;&#xff01;包的&#xff0c;为了让大家直观地感受下&#xff0c;先上图。记得点个赞哦&#xff01; 学过江科大的STM32的小伙伴是不是…

CI/CD与DevOps流程流程简述(提供思路)

一 CI/CD流程详解&#xff1a;代码集成、测试与发布部署 引言 在软件开发的世界里&#xff0c;CI/CD&#xff08;持续集成/持续交付&#xff09;就像是一套精密的流水线&#xff0c;确保代码从开发到上线的整个过程高效、稳定。我作为一名资深的软件工程师&#xff0c;接下来…

大数据基础——Ubuntu 安装

文章目录 Ubuntu 安装一、配置电脑二、安装系统 Ubuntu 安装 一、配置电脑 1、进入VMware 2、选择配置类型 3、选择硬件兼容性版本 4、当前虚拟机的操作系统 选择“稍后安装操作系统”&#xff08;修改&#xff09; 5、选择虚拟机将来需要安装的系统 选中“Linux”和选择…

LeetCode百题刷003(449周赛一二题)

遇到的问题都有解决的方案&#xff0c;希望我的博客可以为你提供一些帮助 一、不同字符数量最多为 K 时的最少删除数 &#xff08;哈希表空间换时间&#xff09; 不同字符数量最多为 K 时的最少删除数 - 力扣 (LeetCode) 竞赛https://leetcode.cn/contest/weekly-contest-449/…

【网安等保】OpenEuler 24.03系统主机安全加固及配置优化实践指南

[ 知识是人生的灯塔&#xff0c;只有不断学习&#xff0c;才能照亮前行的道路 ] &#x1f4e2; 大家好&#xff0c;我是 WeiyiGeek&#xff0c;一个正在向全栈工程师(SecDevOps)前进的计算机技术爱好者&#xff0c;欢迎各位道友一起学习交流、一起进步 &#x1f680;&#xff0…

大模型赋能:2D 写实数字人开启实时交互新时代

在数字化浪潮席卷全球的当下&#xff0c;人工智能技术不断突破创新&#xff0c;其中大模型驱动的 2D 写实数字人正成为实时交互领域的一颗新星&#xff0c;引领着行业变革&#xff0c;为人们带来前所未有的交互体验。 一、2D 写实数字人概述 2D 写实数字人是通过计算机图形学…

Dockers部署oscarfonts/geoserver镜像的Geoserver

Dockers部署oscarfonts/geoserver镜像的Geoserver 说实话&#xff0c;最后发现要选择合适的Geoserver镜像才是关键&#xff0c;所以所以所以…&#x1f437; 推荐oscarfonts/geoserver的镜像&#xff01; 一开始用kartoza/geoserver镜像一直提示内存不足&#xff0c;不过还好…

关于解决MySQL的常见问题

一&#xff1a;MySQL输入密码时闪退 这有可能是因为MySQL服务没有开启。 打开系统配置&#xff08;直接搜索即可&#xff09;&#xff0c;查看MySQL服务是否开启。 此时显示的是已停止。确定是这个问题。 现在打开计算机管理&#xff08;直接搜索即可&#xff09;。 找到MyS…

LeetCode 热题 100 101. 对称二叉树

LeetCode 热题 100 | 101. 对称二叉树 大家好&#xff0c;今天我们来解决一道经典的二叉树问题——对称二叉树。这道题在 LeetCode 上被标记为简单难度&#xff0c;要求检查给定的二叉树是否轴对称。 问题描述 给你一个二叉树的根节点 root&#xff0c;检查它是否轴对称。 示…

图形化编程革命:iVX携手AI 原生开发范式

一、技术核心&#xff1a;图形化编程的底层架构解析 1. 图形化开发的效率优势&#xff1a;代码量减少 72% 的秘密 传统文本编程存在显著的信息密度瓶颈。以 "按钮点击→条件判断→调用接口→弹窗反馈" 流程为例&#xff0c;Python 实现需定义函数、处理缩进并编写 …

uniapp跨平台开发HarmonyOS NEXT应用初体验

之前写过使用uniapp开发鸿蒙应用的教程&#xff0c;简单介绍了如何配置开发环境和运行项目。那时候的HbuilderX还是4.22版本&#xff0c;小一年过去了HbuilderX的正式版本已经来到4.64&#xff0c;历经了多个版本的更新后&#xff0c;跨平台开发鸿蒙应用的体验大幅提升。今天再…

windows怎么修改DNS

好的&#xff0c;在 Windows 操作系统中修改 DNS 设置有几种方法&#xff0c;最常用的是通过“网络和 Internet 设置”。以下是详细步骤&#xff1a; 方法一&#xff1a;通过设置应用修改 DNS (适用于 Windows 10/11) 打开设置&#xff1a; 点击屏幕左下角的 Windows 开始按钮…

Java基本数据类型缓存池解析-源码剖析

抛出问题&#xff1a;new Integer(18) 与 Integer.valueOf(18) 的区别是什么&#xff1f; new Integer(18) 每次都会新建一个对象;Integer.valueOf(18) 会使⽤用缓存池中的对象&#xff0c;多次调用只会取同⼀一个对象的引用 Integer x new Integer(18); Integer y new Int…

WORD压缩两个免费方法

日常办公和学习中&#xff0c;Word文档常常因为包含大量图片、图表或复杂格式而导致文件体积过大&#xff0c;带来诸多不便&#xff0c;比如 邮件发送受限&#xff1a;许多邮箱附件限制在10-25MB&#xff0c;大文件无法直接发送 存储空间占用&#xff1a;大量文档占用硬盘或云…

罗技无线鼠标的配对方法

罗技鼠标的配对方法&#xff1a; 重新连接鼠标 请按照以下步骤将鼠标与 USB 接收器重新配对。 1.将USB接收器插入计算机。 2.将鼠标关闭电源。 3.按住并持续按住向右按钮&#xff0c;直到操作结束。 4.切换鼠标电源。 5. 单击一次左侧按钮。 6. 单击一次中间按钮。 7.全部松开&…

四、Hadoop 2.X vs 3.X:特性、架构与性能全解析

Hadoop 2.X 与 Hadoop 3.X 深度对比&#xff1a;版本特性、架构与性能剖析 在大数据处理的浪潮中&#xff0c;Hadoop 凭借其分布式存储与计算的强大能力&#xff0c;成为了业界的核心框架之一。随着技术的不断演进&#xff0c;Hadoop 也经历了多个重要版本的迭代。其中&#x…

【React中useReducer钩子详解】

useReducer 是 React 中用于管理复杂状态逻辑的 Hook&#xff0c;它通过 集中式状态更新逻辑 替代 useState&#xff0c;尤其适合处理多值关联状态或依赖前序状态更新的场景。以下是其核心要点&#xff1a; 1. 核心概念 Reducer 模式&#xff1a;灵感来自 JavaScript 的 Array…

【C++】C++函数指针详解与实用技巧

C函数指针详解与实用技巧 在C中&#xff0c;**函数指针&#xff08;Function Pointer&#xff09;**是一种强大而灵活的工具&#xff0c;常用于回调机制、策略模式、事件处理等场景。本文将从概念、语法、常见用法到实战示例&#xff0c;带你全面掌握C函数指针。 &#x1f9e0…