idea新建springboot后端到前端_码云开源项目:利用SpringBoot+Vue 实现留言版

一.新建Vue项目和SpringBoot项目

新建Vue项目

新建文件夹SpringBoot-Vue-MessageBoard创建Vue项目使用vue ui命令(需要vue 3.0选择刚才的目录 名字为Vue创建后V还是小写 创建后可以改为大写 取消git初始化 手动配置 取消 打开 创建项目,不保存预设

新建SpringBoot项目

用IDEA打开SpringBoot-Vue-MessageBoard这个目录 创建SpringBoot项目右键 选择Spring Initializr 选择这四个 名字改为SpringBoot

二. 后端

配置application.properties

#Mysqlspring.datasource.url=jdbc:mysql://localhost:3306/enaium?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghaispring.datasource.username=rootspring.datasource.password=rootspring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.jpa.show-sql= truespring.jpa.properties.hibernate.format_sql = true#Serverserver.port=8181

写实体类

package cn.enaium.message.entity;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;import javax.persistence.Entity;import javax.persistence.Id;/** * Project: message * ----------------------------------------------------------- * Copyright © 2020 | Enaium | All rights reserved. */@Data@Entity@NoArgsConstructor@AllArgsConstructorpublic class Message {    @Id    private Long id;    private String author;    private String message;    private String time;}

实体类Jpa

package cn.enaium.message.repository;import cn.enaium.message.entity.Message;import org.springframework.data.jpa.repository.JpaRepository;/** * Project: message * ----------------------------------------------------------- * Copyright © 2020 | Enaium | All rights reserved. */public interface MessageRepository extends JpaRepository {}

Controller

package cn.enaium.message.controller;import cn.enaium.message.entity.Message;import cn.enaium.message.repository.MessageRepository;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.RestController;import java.text.SimpleDateFormat;import java.util.Date;import java.util.List;/** * Project: message * ----------------------------------------------------------- * Copyright © 2020 | Enaium | All rights reserved. */@RestControllerpublic class Controller {    @Autowired    private MessageRepository messageRepository;    @RequestMapping("/getMessages")    private List getMessages() {        return messageRepository.findAll();//遍历所有留言    }    @GetMapping("/postMessage")    private String postMessage(@RequestParam String author, @RequestParam String message) {        if(author.replaceAll(" ","").equals("") || message.replaceAll(" ","").equals("")) {            return "filed";        }//判断名字和留言是否为空        messageRepository.save(new Message((long) (messageRepository.findAll().size() + 1),author,message,new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())));//保存留言到数据库        return "success";    }}

解决跨源请求问题

4b940795b62a6d00e409cd856e61d783.png
package cn.enaium.message.config;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.CorsRegistry;import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;/** * Project: message * ----------------------------------------------------------- * Copyright © 2020 | Enaium | All rights reserved. */@Configurationpublic class CorsConfig implements WebMvcConfigurer {    @Override//重写这个方法    public void addCorsMappings(CorsRegistry registry) {        registry.addMapping("/**")                .allowedOrigins("*")                .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS")                .allowCredentials(true)                .maxAge(3600)                .allowedHeaders("*");    }}

三. 前端

安装插件axios和Element UI

ca0c24bece0733e6227310eeae378d62.png
1508aecee55019c68bc045caeec00bde.png

写Home页面

留言版

留言By Enaium

路由页面

import Vue from 'vue'import VueRouter from 'vue-router'import Home from '../views/Home.vue'Vue.use(VueRouter)const routes = [    {        path: '/',        name: 'Home',        component: Home    }]const router = new VueRouter({    mode: 'history',    routes})export default router

四. 运行

运行SpringBootcd 到Vue使用npm run serve运行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值