Spring Boot+Vue项目从零入手

server/2025/3/13 21:58:37/

Spring Boot+Vue项目从零入手

一、前期准备

在搭建spring boot+vue项目前,我们首先要准备好开发环境,所需相关环境和软件如下:

1、node.js

检测安装成功的方法:node -v

2、vue

检测安装成功的方法:vue -V

3、Visual Studio Code

这个软件是编写vue代码的工具,也可以使用idea,这个视情况而定。

4、jdk

检测安装成功的方法:java -version和javac -version

5、mysql

6、idea

7、navicat

二、搭建vue页面

2.1、创建vue项目

1.打开cmd窗口,进入准备建立vue项目的文件夹,通过vue create XXX建立一个vue项目,第一步

Vue CLI v5.0.8
P1ease pick a preset:
Default ([Vue 3] babe1,eslint)
Default ( [Vue2]babel,eslint)
Manually select features

选择Manually select features回车

然后选择Babel和Router

选择2.X

输入y

选择In package.json

输入n

等待项目创建。

扩展

npm加速:

npm config set registry https://registry.npm.taobao.org

2.2、运行

cd XXX

npm run serve

测试项目是否能正常运行,可适当建立参数测试回显功能

vue项目可选择使用idea或者VSC打开,其中vsc调出终端快捷键ctrl+shift+Y

测试代码:在app.vue中

<h1>{{name}}</h1>
data(){return{name:"凡大帅哥!"}}
2.3、引入Element UI组件

npm i element-ui -S

element UI有文档,地址:element.eleme.io/#/zh-CN/component/container

首先使用命令安装组件,然后打开main.js

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';Vue.use(ElementUI,{size:"small"});

加入上面这几句话引入

测试:

<el-button type="danger">这是el</el-button>
2.4、官网扒取示例代码

去官网扒取示例代码,调整为自己需要的网页效果

Container 布局容器

home.vue

<template><div style="height:100%"><el-container style="height: 100%"><el-aside width="200px" style="background-color: rgb(238, 241, 246);height: 100%;overflow: hidden;"><el-menu :default-openeds="['1', '3']"><el-submenu index="1"><template slot="title"><i class="el-icon-message"></i>导航一</template><el-menu-item-group><template slot="title">分组一</template><el-menu-item index="1-1">选项1</el-menu-item><el-menu-item index="1-2">选项2</el-menu-item></el-menu-item-group><el-menu-item-group title="分组2"><el-menu-item index="1-3">选项3</el-menu-item></el-menu-item-group><el-submenu index="1-4"><template slot="title">选项4</template><el-menu-item index="1-4-1">选项4-1</el-menu-item></el-submenu></el-submenu><el-submenu index="2"><template slot="title"><i class="el-icon-menu"></i>导航二</template><el-menu-item-group><template slot="title">分组一</template><el-menu-item index="2-1">选项1</el-menu-item><el-menu-item index="2-2">选项2</el-menu-item></el-menu-item-group><el-menu-item-group title="分组2"><el-menu-item index="2-3">选项3</el-menu-item></el-menu-item-group><el-submenu index="2-4"><template slot="title">选项4</template><el-menu-item index="2-4-1">选项4-1</el-menu-item></el-submenu></el-submenu><el-submenu index="3"><template slot="title"><i class="el-icon-setting"></i>导航三</template><el-menu-item-group><template slot="title">分组一</template><el-menu-item index="3-1">选项1</el-menu-item><el-menu-item index="3-2">选项2</el-menu-item></el-menu-item-group><el-menu-item-group title="分组2"><el-menu-item index="3-3">选项3</el-menu-item></el-menu-item-group><el-submenu index="3-4"><template slot="title">选项4</template><el-menu-item index="3-4-1">选项4-1</el-menu-item></el-submenu></el-submenu></el-menu></el-aside><el-container><el-header style="text-align: right; font-size: 12px;border-bottom: 1px solid #ccc;line-height: 60px;"><el-dropdown><i class="el-icon-setting" style="margin-right: 15px"></i><el-dropdown-menu slot="dropdown"><el-dropdown-item>查看</el-dropdown-item><el-dropdown-item>新增</el-dropdown-item><el-dropdown-item>删除</el-dropdown-item></el-dropdown-menu></el-dropdown><span>王小虎</span></el-header><el-main><el-table :data="tableData"><el-table-column prop="date" label="日期" width="140"></el-table-column><el-table-column prop="name" label="姓名" width="120"></el-table-column><el-table-column prop="address" label="地址"></el-table-column></el-table></el-main></el-container>
</el-container></div></template><script>
// @ is an alias to /src
import HelloWorld from '@/components/HelloWorld.vue'export default {name: 'HomeView',components: {HelloWorld},data() {const item = {date: '2016-05-02',name: '王小虎',address: '上海市普陀区金沙江路 1518 弄'};return {tableData: Array(10).fill(item)}}
}
</script>

写一个全局css——gloable.css,放在assets目录下

html,body,div{margin: 0;padding: 0;
}
html,body{height: 100%;
}

在main.js中引入

import './assets/gloable.css'

app.vue

<template><div id="app"><router-view/></div>  
</template><style>
#app {height: 100%;
}</style>

三、搭建SpringBoot框架

1、创建Springboot项目,勾选Lombok(简化java代码的插件)、web——Spring Web(相当于SpringMVC)、sql——MyBatis Framework+MySql Driver

版本不要选太高了

pom配置阿里云仓库

<repositories>
<repository>
<id>nexus-aliyun</id>
<name>nexus-a1 i yun</name>
<ur1>http ://maven . aliyun. com/nexus/content/ groups /pub1ic/</ur1>
<re1eases>
<enab1ed>true</enal1ed>
</releases>
<snapshots>
<enab1ed>false</enab1ed>
</snapshots>
</repository>
</repositories>
<p1uginRepositories>
<p1uginRepository>
<id>pub1ic</id>
<name>aliyun nexus</name>
<ur1>http: //maven . aliyun. com/nexus/content/ groups/pub1ic/</ur1>
<re1eases>
<enab1ed>true</enab1ed>
</releases>
<snapshots>
<enabled>false</enab1ed>
</snapshots>
</p1uginRepository>
</p1uginRepositories>

创建好项目后先启动,确认项目可以正常运行,再将vue整个拖入Springboot项目中

也可不拖入,访问时将地址写全

配置vue启动

再配置tomcat的地方点+,选择npm,下方选择vue的package.json,下方run的下一格写serve

四、接口整合


http://www.ppmy.cn/server/174726.html

相关文章

DeepSeek进阶应用(一):结合Mermaid绘图(流程图、时序图、类图、状态图、甘特图、饼图)

&#x1f31f;前言: 在软件开发、项目管理和系统设计等领域&#xff0c;图表是表达复杂信息的有效工具。随着AI助手如DeepSeek的普及&#xff0c;我们现在可以更轻松地创建各种专业图表。 名人说&#xff1a;博观而约取&#xff0c;厚积而薄发。——苏轼《稼说送张琥》 创作者&…

facebook游戏投广:提高广告关键数据的方法

在当今竞争激烈的数字营销领域&#xff0c;游戏广告的投放效果直接关系到游戏公司的市场表现和盈利能力。然而&#xff0c;许多游戏公司在广告投放上面临着诸多挑战&#xff0c;如高昂的成本、低效的转化率以及难以追踪的效果。那么&#xff0c;如何才能通过数据分析真正提升游…

【一起来学kubernetes】8、k8s中的Ephemeral-Storage详解

前言分类配置与管理资源限制与请求&#xff1a;资源配额&#xff1a;驱逐机制&#xff1a; 使用场景说明注意事项拓展 前言 K8s中的Ephemeral-Storage是指在Pod生命周期内可用的临时存储空间&#xff0c;Ephemeral-Storage是Pod可以使用的本地存储&#xff08;如emptyDir、某些…

代码块与设计模式

文章目录 1.代码块1.1基本介绍基本语法 1.2代码块的好处和案例演示1.3代码块使用注意事项和细节讨论!!! 2.单例设计模式2.1什么是设计模式2.2什么是单例模式2.2.1饿汉式2.2.2懒汉式2.2.3比较 1.代码块 1.1基本介绍 代码化块又称为初始化块,属于类中的成员[即是类的一部分]&am…

从波士顿动力到Figure AI:探寻人工智能驱动的机器人智能化

一、引言 1.1 研究背景与意义 在科技飞速发展的当下,机器人智能化已成为全球科技竞争的关键领域,深刻影响着人类社会的生产与生活方式。从工业制造到日常生活服务,从医疗保健到探索未知领域,机器人正逐步渗透进各个行业,展现出巨大的发展潜力与应用价值。其智能化水平的…

从零开始学机器学习——分类器详解

首先给大家介绍一个很好用的学习地址:https://cloudstudio.net/columns 今天我们将结合第一章节中清洗得到的菜品数据,利用多种分类器对这些数据进行训练,以构建有效的模型。在这个过程中,我会详细讲解每一种分类器的原理及其重要性。 尽管这些知识点对于实践来说并不是必…

批量在 Word 的指定位置插入页,如插入封面、末尾插入页面

我们经常会碰到需要在 Word 文档中插入新的页面的需求&#xff0c;比如在 Word 文档末尾插入一个广告页、给 Word 文档插入一个说明封面&#xff0c;在 Word 文档的中间位置插入新的页面等等。相信这个操作对于大部分小伙伴来说都不难&#xff0c;难的是同时给多个 Word 文档插…

C++20 新特性总结

简要总结 C20 引入了四项非常大的更新, 分别是: 概念(Concepts). 用来简化模板编程, 强化表达能力. 并且使得出错原因更容易查找.模块(Modules). 这是代码组织方面非常大的更新. 提供了新的方式来组织代码, 并且可以减少编译时间.范围库(Ranges and Views). 轻量级的, 非拥有…