手把手带你快速搭建一个SpringBoot+Vue前后端分离项目

开发环境

IDEA,MySQL,Navicat

1.创建数据库并添加一些数据

在这里插入图片描述

2.创建前端项目

1.cmd 创建项目,注意这里需要Vue3或者以上,不是的同学可以用其它方式创建前端项目,或者更新到Vue3以上也行。
在这里插入图片描述

进入到如下页面:
在这里插入图片描述
我先运行了一下之前的例子确保环境没问题,
在这里插入图片描述
2.点击项目管理进入创建页面
在这里插入图片描述
3.选择文件夹创建该项目,选择好了点击创建
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.出现这里只需要等它创建就好了(可能需要等30秒左右)
在这里插入图片描述
4.可以看到已经创建好了
在这里插入图片描述
4.点击“任务”–“serve”–“运行”(这里也要等一小会儿)
在这里插入图片描述
5.点击输出就可以看到地址
在这里插入图片描述
6.点击地址进去
在这里插入图片描述
进到这个页面恭喜你已经成功将前端项目创建好了。
现在把前端项目在IDEA中打开(直接把这个文件夹拖进IDEA就可以)

在这里插入图片描述
7.现在我们创建一个Person.vue
在这里插入图片描述
在这里插入图片描述

  <div>
    <h1>这是Person</h1>
  </div>

8.进入App.vue添加如下代码

      <router-link to="/person">Person</router-link>

在这里插入图片描述
9.进入router -> index.js中添加以下代码:(注意有个逗号)

,
  {
    path:'/person',
    name:'About',
    component: () => import('../views/Person')
  }

在这里插入图片描述
再进入App.vue添加一个竖线(刚刚忘了)
在这里插入图片描述

10.运行程序(需要有npm),终端输入如下代码:

npm run serve

在这里插入图片描述
11.运行结果:
在这里插入图片描述
完美!!!
前端就准备好了,现在我们去创建Spring Boot项目

3.创建SpringBoot项目

在这里插入图片描述

在这里插入图片描述
点击next
在这里插入图片描述
在这里插入图片描述
点击finsh完成创建

2.创建实体
代码如下:

package com.sadhu.entity;


import lombok.Data;

import javax.persistence.Entity;
import javax.persistence.Id;

/**
 * @author wang
 */

//与数据库表绑定
@Entity
//自动生成setter 和getter
@Data
public class Person {
    @Id
    private Long id;
    private String name;
    private String sex;
    private int age;
}

在这里插入图片描述
这里需要测试一下,先直接跳过直接创建controller

3.创建repository
文件结构:
在这里插入图片描述
代码:

public interface PersonRepositroy extends JpaRepository {
}

4.创建controller
文件结构:
在这里插入图片描述
代码:

@RestController
@RequestMapping("/person")
public class PersonController {
    private PersonRepositroy personRepositroy;
    @GetMapping("/findAll")
    public List<Person> findAll(){
        return personRepositroy.findAll();
    }
}

5.创建yml文件
先删掉Application.properties
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
添加如下代码:(数据库账号密码记得改)

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test
    username: root
    password: 123456

    jpa:
      show-sql: true
      properties:
        hibernate:
          format_sql: true

server:
  port: 8182

需要再pom.xml中添加依赖

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>

在这里插入图片描述

运行一下:
在这里插入图片描述

现在后端的也写好了

4.前后端连再一起

1.先在前端中添加如下代码
代码:

<template>
  <div>
    <h1>这是Person</h1>

    <tr>
      <td>{{persons[0].id}}</td>
      <td>{{persons[0].name}}</td>
      <td>{{persons[0].sex}}</td>
      <td>{{persons[0].age}}</td>

    </tr>

    <tr v-for="item in persons">
      <td>{{item.id}}</td>
      <td>{{item.name}}</td>
      <td>{{item.sex}}</td>
      <td>{{item.age}}</td>
    </tr>
  </div>
</template>

<script>
export default {
  name: "Person",
  data() {
    return {
      persons: [
        {
          id: 1,
          name: 'wang',
          sex: '男',
          age: 18
        }
      ]
    }
  },
  created() {
    const _this = this;
    axios.get('http://localhost:8182/person/findAll').then(function (resp){
      _this.persons=resp.data;
      console.log(resp.data)
    })
  }
}
</script>

<style scoped>

</style>

在这里插入图片描述
注意:开发环境中应该有axios 如果没有请在终端输入

vue add axios

他会自动安装
在这里插入图片描述
这这个情况就是没有管理员权限,把IDEA以管理员身份运行就可以,如下图
在这里插入图片描述

2.然后去配置后端
新建如下文件并添加代码:
代码如下:

package com.sadhu.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class CrosConfig implements WebMvcConfigurer {

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

}

在这里插入图片描述

5.最后把前后端都启动起来看看

在这里插入图片描述
OK 和完美

6.总结,有问题可以评论或者私信

这是我学习是做的笔记,按照步骤来能跑通,中途会遇到一些问题,通常百度就能解决。冲冲冲!!!

  • 28
    点赞
  • 195
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

漠上尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值