SpringBoot+VUE实现前后端分离Demo

SpringBoot+VUE实现前后端分离

  • 一,前端VUE项目
  • 二,后端SpringBoot项目

一,前端VUE项目

这里使用VUE UI创建一个VUE项目
命令行输入vue ui进入
SpringBoot+VUE实现前后端分离Demo_第1张图片
手动配置项目
SpringBoot+VUE实现前后端分离Demo_第2张图片
选中这三个
SpringBoot+VUE实现前后端分离Demo_第3张图片
点击下一步->点击创建项目

用IDEA打开刚才创建的项目
IDEA中的安装vue插件并重启
在这里插入图片描述

IDEA控制台中输入vue add axios安装axios

在这里插入图片描述
新建一个Show.vue
SpringBoot+VUE实现前后端分离Demo_第4张图片
在index,js的routes中配置它的路由
SpringBoot+VUE实现前后端分离Demo_第5张图片
编写Show,vue向后端请求数据并展示

<template>
    <div>
        <table>
            <tr>
                <td>IDtd>
                <td>姓名td>
                <td>性别td>
            tr>
            <tr v-for="user in users">
                <td>{{user.id}}td>
                <td>{{user.name}}td>
                <td>{{user.sex}}td>
            tr>
        table>
    div>
template>
<script>
    export default {
        name: "Show",
        data(){
            return{
                users:[
                    {
                        id:"",
                        name:"",
                        sex:"",
                    }
                ]
            }
        },
        created() {
            const _this=this
            axios.get('http://localhost:8888/user/showAll').then(function (resp) {
                _this.users=resp.data
            })
        }
    }
script>
<style scoped>
style>

二,后端SpringBoot项目

编写一个查询功能

SpringBoot+VUE实现前后端分离Demo_第6张图片

controller层返回json数据
SpringBoot+VUE实现前后端分离Demo_第7张图片
在spring boot中解决跨域问题
重写WebMvcConfigurer中的addCorsMappings()方法

@Configuration
public class CrosConfig implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOriginPatterns("*")
                .allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE")
                .allowCredentials(true)
                .maxAge(3600)
                .allowedHeaders("*");
    }
}

后端测试(注意前后端端口号的区分,VUE占用了8080和8081,在Springboot中修改后端的端口号)
在这里插入图片描述
数据输出成功
SpringBoot+VUE实现前后端分离Demo_第8张图片
前端发请求拿数据
SpringBoot+VUE实现前后端分离Demo_第9张图片
前端拿数据成功!!!
SpringBoot+VUE实现前后端分离Demo_第10张图片

你可能感兴趣的:(springboot,vue,spring,boot,java,vue.js)