手把手教你入门vue+springboot开发(二)--vue入门


前言

前面我们构建了一个查询用户信息的简单springboot后端demo,今天我们先搭建VSCode+vue的开发环境,然后在这个开发环境上构建一个demo,连接后台springboot demo查询用户信息。


一、开发环境搭建

1)首先去nodejs官网下载node-v20.14.0-x64.msi安装,网址如下:
https://nodejs.org/
2)按以下链接设置环境变量。
https://www.jb51.net/javascript/311637gm8.htm
3)VS官网下载VSCodeUserSetup-x64-1.89.1.exe安装
https://code.visualstudio.com/Download
以上过程如有问题自行搜索解决。

二、创建项目

首先打开VS Code,注意一定要以管理员身份运行,否则的话后面运行npm命令的时候会出错。
然后点击左侧导航菜单的“Open Folder”选择一个文件夹保存项目。
在这里插入图片描述
右键点击"demo"文件夹,选择"Open in Integrated Terminal"菜单打开内置命令行。
在这里插入图片描述
在VS Code下边会出现一个命令行输入窗口,输入vue create vue-demo命令创建vue-demo项目,选择Vue 3回车。
在这里插入图片描述
创建成功后会出现以下提示,意思是输入命令运行项目,如下图:
在这里插入图片描述
我们先运行试一下,运行成功会出现下图提示,在浏览器中打开网址即可。在命令行按“ctrl+c”可以停止运行。
在这里插入图片描述

三、编写代码

1.插件下载

项目创建好后有一些插件需要下载,当然也可以在写完代码后运行报错后再去下载,这些插件的作用我们先不说,在后续的代码中大家应该就能知道。依次运行以下命令下载插件。

npm install axios --save
npm install element-plus --save
npm install vue-router --save
npm install sass-loader sass --save
npm install @vueup/vue-quill --save
npm install pinia-persistedstate-plugin --save
npm install pinia --save

下载成功如下图
在这里插入图片描述
可以对比下载插件前后package.json文件,发现dependencies中会多出这些插件名称。
在这里插入图片描述

2.编写代码

1)在src目录下新建目录utils,在utils目录下新建request.js,这个文件主要是导入axios,使用它与后端交互,输入代码:

//导入axios  npm install axios
import axios from 'axios';

//定义一个变量,记录公共的前缀  ,  baseURL
const baseURL = 'http://localhost:8088';
const instance = axios.create({ baseURL })

export default instance;

注意这里的baseURL填写的是后台地址与端口,我这里是在本机运行springboot后台程序,端口是8088,这个可以见第一篇。
2)在src目录下新建目录api,在api目录下新建user.js,这个文件主要实现使用request从后端交互数据业务,输入代码:

import request from '@/utils/request.js'

//用户信息查询
export const userListService = ()=>{
    return request.get('/user/selectAll')
}

这里get里面填写的是后台URL路径,这个可以见第一篇。
3)在src目录下新建目录views,在views目录下新建UserInfo.vue,这个文件主要实现UI界面,输入代码:

<script setup>

import { ref } from 'vue'

//用户信息数据
const users = ref([
])

//查询用户信息
import { userListService } from '@/api/user.js'
const userList = async () => {
    let result = await userListService();

    users.value = result.data;
}

userList()

//import { QuillEditor } from '@vueup/vue-quill'
import '@vueup/vue-quill/dist/vue-quill.snow.css'
//import { Plus } from '@element-plus/icons-vue'

</script>
<template>
    <el-card class="page-container">
        <template #header>
            <div class="header">
                <span>用户信息</span>
            </div>
        </template>
        <!-- 用户列表 -->
        <el-table :data="users" style="width: 100%">
            <el-table-column label="id" width="400" prop="id"></el-table-column>
            <el-table-column label="用户名" prop="userName"></el-table-column>
            <el-table-column label="密码" prop="password"> </el-table-column>
            <el-table-column label="性别" prop="sex"></el-table-column>
            <el-table-column label="电话号码" prop="telephone"></el-table-column>
            <template #empty>
                <el-empty description="没有数据" />
            </template>
        </el-table>
    </el-card>
</template>
<style lang="scss" scoped>
.page-container {
    min-height: 100%;
    box-sizing: border-box;

    .header {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}
</style>

4)在src目录下新建目录router,在router目录下新建index.js,这个文件主要实现URL path与views中UI界面的映射关系配置,输入代码:

import { createRouter, createWebHistory } from 'vue-router'

//导入组件
import UserInfoVue from '@/views/UserInfo.vue'

//定义路由关系
const routes = [
    { path: '/', component: UserInfoVue }
]

//创建路由器
const router = createRouter({
    history: createWebHistory(),
    routes: routes
})

//导出路由
export default router

5)修改src目录下main.js文件,输入代码:

import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import router from '@/router'
import App from './App.vue'
import locale from 'element-plus/dist/locale/zh-cn.js'

const app = createApp(App);
app.use(router)
app.use(ElementPlus,{locale});
app.mount('#app')

6)修改src目录下App.vue文件,输入代码:

<script setup>
</script>
<template>
  <router-view></router-view>
</template>
<style scoped>
</style>

整体目录结构见下图,红色为需要增加的,蓝色为需要修改的。
在这里插入图片描述

四、测试验证

输入命令npm run serve运行项目
在浏览器输入“http://localhost:8080”,此时查不到数据。
这是由于跨域问题引起的,可以在springboot的demo项目中修改UserController.java文件,在UserController类实现之前增加@CrossOrigin解决跨域,然后重新运行后台程序。
在这里插入图片描述
在浏览器中刷新“http://localhost:8080”,可以查询到后台数据。如下图
在这里插入图片描述

此时也可以用IDEAU工具在users数据表中增加记录,然后刷新网页就可以更新数据。


总结

至此,vue+springboot前后台数据就打通了,编程的细节实现我们先放一放,下一步我们先做一个简单登录问题来深入理解一下。

Spring BootVue-Element-Admin和MyBatis是一种常见的技术组合,用于构建现代化的Web应用程序。下面是一个简要的入门程。 1. 首先,我们需要设置Spring Boot项目。可以使用Spring Initializr(https://start.spring.io/)来初始化一个基本的Spring Boot项目。在依赖项中添加Spring Web、Spring Data JPA和MyBatis等必要的依赖项。 2. 在Spring Boot项目中,我们需要创建实体类和数据库表的映射。使用JPA注解来定义实体类,并使用MyBatis注解来指定数据库表的映射。 3. 接下来,我们需要创建一个数据访问层(DAO)来处理与数据库的交互。使用MyBatis的注解或XML映射文件来定义SQL查询和操作。 4. 在Service层,编写业务逻辑代码来处理DAO返回的数据,并与其他组件进行交互。 5. 在Controller层,处理HTTP请求和响应,将数据传递给前端页面或接收前端发送的数据。使用Spring MVC注解来定义请求映射和参数解析。 6. 在前端方面,可以使用Vue-Element-Admin来构建用户界面。Vue是一种流行的JavaScript框架,用于构建灵活的单页面应用程序。Element-Admin是一个基于Vue的组件库,提供了丰富的UI组件和布局。 7. 在Vue-Element-Admin中,我们可以使用Vue Router来实现页面之间的导航和路由。使用axios来发送HTTP请求与后端进行数据交互。 8. 在Vue组件中,我们可以通过调用后端的API来获取数据并渲染到前端页面上。使用Element-Admin提供的布局和UI组件来美化页面。 通过上述步骤,我们可以实现一个基本的Spring BootVue-Element-Admin和MyBatis的入门程。这个程可以帮助初学者了解如何搭建和使用这个技术组合来构建现代化的Web应用程序。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值