基于springboot+mybatis+vue的项目实战之前端

news2024/11/17 17:30:59

步骤:

1、项目准备:新建项目,并删除自带demo程序,修改application.properties.

2、使用Apifox准备好json数据的mock地址

3、编写基于vue的静态页面

4、运行

整个的目录结构如下:

0、项目准备

新建项目,并删除自带demo程序,修改application.properties.

必须配置,注意必须修改为自己的数据库名称,以及数据库连接的账号密码。

# 应用服务 WEB 访问端口
server.port=8080
#下面这些内容是为了让MyBatis映射
#指定Mybatis的Mapper文件
mybatis.mapper-locations=classpath:mappers/*xml
#指定Mybatis的实体目录
mybatis.type-aliases-package=com.example.mybatis.entity

#数据库连接
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/heima
spring.datasource.username=root
spring.datasource.password=123
#开启mybatis的日志输出
mybatis.configuration.logimpl=org.apache.ibatis.logging.stdout.StdOutImpl
#开启数据库表字段
#实体类属性的驼峰映射
mybatis.configuration.map-underscore-to-camel-case=true

一、使用Apifox准备好json数据的mock地址

1、登录网页版Apifox

Apifox - API 文档、调试、Mock、测试一体化协作平台。拥有接口文档管理、接口调试、Mock、自动化测试等功能,接口开发、测试、联调效率,提升 10 倍。最好用的接口文档管理工具,接口自动化测试工具。Apifox = Postman + Swagger + Mock + JMeter。集接口文档工具、接口Mock工具、接口自动化测试工具、接口调试工具于一体,提升 10 倍研发效率。是最好用的API文档工具,API自动化测试工具,API Mock工具,接口文档管理工具,接口文档生成工具。icon-default.png?t=N7T8https://apifox.com/2、在Apifox中新建项目,新建接口,以及设置地址、请求和响应参数等。

没有特别合适的视频教程,可以参考,从10:53开始看,理解大概的原理。具体操作参照截图所示。Day03-03. 前端工程化_哔哩哔哩_bilibili

根据contrller文件中的访问地址,设置apifox的访问地址。

点击“快捷请求”,会出现测试数据。这个云端地址就是我们前端页面要使用的mock地址。

mock地址的json数据测试成功。

{
    "code": 1,
    "msg": "success",
    "data": [
        {
            "id": 1,
            "author": "陶渊明",
            "gender": "1",
            "dynasty": "东晋末至南朝宋初期",
            "title": "诗人和辞赋家",
            "style": "古今隐逸诗人之宗"
        },
        {
            "id": 3,
            "author": "李商隐",
            "gender": "2",
            "dynasty": "唐代",
            "title": "诗坛鬼才",
            "style": "无"
        },
        {
            "id": 4,
            "author": "李白",
            "gender": "1",
            "dynasty": "唐代",
            "title": "诗仙",
            "style": "豪放飘逸的诗风和丰富的想象力"
        },
        {
            "id": 5,
            "author": "李清照",
            "gender": "2",
            "dynasty": "宋代",
            "title": "女词人",
            "style": "婉约风格"
        },
        {
            "id": 6,
            "author": "杜甫",
            "gender": "1",
            "dynasty": "唐代",
            "title": "诗圣",
            "style": "反映社会现实和人民疾苦"
        },
        {
            "id": 7,
            "author": "苏轼",
            "gender": "1",
            "dynasty": "北宋",
            "title": "文学家、书画家,诗神",
            "style": "清新豪健的诗风和独特的艺术表现力"
        },
        {
            "id": 9,
            "author": "王维",
            "gender": "1",
            "dynasty": "11",
            "title": "11",
            "style": "11"
        },
        {
            "id": 12,
            "author": "王维",
            "gender": "0",
            "dynasty": "唐代11",
            "title": "诗佛11",
            "style": "空灵、寂静11"
        },
        {
            "id": 13,
            "author": "2221111",
            "gender": "22",
            "dynasty": "22",
            "title": "22",
            "style": "22"
        },
        {
            "id": 14,
            "author": "王维",
            "gender": "1",
            "dynasty": "唐代",
            "title": "诗佛",
            "style": "空灵、寂静"
        },
        {
            "id": 17,
            "author": "0000",
            "gender": "1",
            "dynasty": "0000",
            "title": "000",
            "style": "000"
        },
        {
            "id": 18,
            "author": "热帖",
            "gender": "0",
            "dynasty": "特瑞",
            "title": "特热",
            "style": "天热"
        },
        {
            "id": 19,
            "author": "热帖",
            "gender": "0",
            "dynasty": "特瑞",
            "title": "特热",
            "style": "天热"
        },
        {
            "id": 20,
            "author": "热舞",
            "gender": "0",
            "dynasty": "问题",
            "title": "特",
            "style": "他"
        },
        {
            "id": 21,
            "author": "111",
            "gender": "1",
            "dynasty": "11111",
            "title": "11111",
            "style": "1111"
        },
        {
            "id": 22,
            "author": "3333",
            "gender": "0",
            "dynasty": "333",
            "title": "33",
            "style": "33"
        }
    ]
}

二、编写基于vue的静态页面

2.1 拷贝axios和vue的被包含文件

2.2 编写html文件

编写vue页面,将异步请求的地址,编写为刚刚测试成功的mock地址。

这两个包含文件,拷贝进去即可。

peot_list_nofenye.html的代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>诗人信息</title>
</head>

<script src="./js/vue.js"></script>
<script src="./js/axios-0.18.0.js"></script>

<body>

<h1 align="center">诗人信息列表展示</h1>

<div id="app" align="center">
  <table border="1" cellspacing="0" width="60%">
    <tr>
      <th>序号</th>
      <th>姓名</th>
      <th>性别</th>
      <th>朝代</th>
      <th>头衔</th>
      <th>风格</th>
      <th>操作</th>
    </tr>
    <tr align="center" v-for="(peot,index) in tableData">
      <td>{{peot.id}}</td>
      <td>{{peot.author}}</td>
      <td>{{peot.gender}}</td>
      <td>{{peot.dynasty}}</td>
      <td>{{peot.title}}</td>
      <td>{{peot.style}}</td>
      <td class="text-center">
        <!--a :href="'peot_edit.html?id='+peot.id"-->
        <!--button type="button" @click="deleteId(peot.id)-->
        修改
        删除
      </td>

    </tr>
  </table>
</div>
</body>



<script>
  new Vue({
    el: "#app",
    data() {
      return {
        tableData: []
      }
    },
    mounted(){
      //peotfindAll
      axios.get('https://mock.apifox.com/m1/3761592-3393136-default/peotfindAll?apifoxApiId=171587808').then(res=>{
        if(res.data.code){
          this.tableData = res.data.data;
        }
      });
    },

  });
</script>
</html>

三、运行

3.1 启动项目

3.2 地址栏访问  http://localhost:8080/peot_list_nofenye.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1656000.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【可实战】被测需求理解(需求文档是啥样的、从哪些角度进行需求评审、需求分析需要分析出哪些内容、如何提高需求分析能力)

产品人员会产出一个需求文档&#xff0c;然后组织一个需求的宣讲。测试人员的任务就是在需求宣讲当中&#xff0c;分析需求有没有存在一些问题&#xff0c;然后在需求宣讲结束之后通过分析需求文档&#xff0c;分析里面的测试点并预估一个排期。 一、需求文档是什么样的&#x…

西红柿叶病害检测(yolov8模型,从图像、视频和摄像头三种路径识别检测,包含登陆页面、注册页面和检测页面)

1.基于最新的YOLOv8训练的西红柿病害检测模型&#xff0c;和基于PyQt5制作的可视西红柿病害系统&#xff0c;包含登陆页面、注册页面和检测页面&#xff0c;该系统可自动检Bacterial Spot, Early_Blight, Healthy, Late_blight, Leaf Mold, Target_Spot, black spot&#xff0c…

同步时序电路的分析方法

同步时序电路的分析方法 基本步骤 Step1&#xff1a;写方程式 时钟方程 &#xff1a;各个触发器时钟信号的逻辑表达式&#xff0c;同步时序电路可省去不写 输出方程&#xff1a;时序电路的输出逻辑表达式&#xff0c;通常为现态和输入变量的函数 驱动方程 &#xff1a;各触发器…

【Java】初识网络编程

文章目录 前言✍一、互联网的发展1.独立模式2.网络的出现局域网LAN广域网WAN ✍二、网络编程概述✍三、网络编程中的术语介绍IP地址端口号协议OSI七层模型TCP\IP四层模型 ✍四、协议的层级之间是如何配合工作的 前言 在本文中&#xff0c;会对网络编程的一些术语进行解释&#…

【npm】解决npm包突然消失MODULE_NOT_FOUND

今天折腾新特性时需要升级nodejs&#xff0c;安装新版后npm离奇消失了。C:\Users\**用户名\AppData\Roaming\npm\node_modules下只有cnpm&#xff0c;没有npm的目录。重装nodejs也不好使。 机智如我&#xff0c;试了下cnpm -v是正常的&#xff0c;而且能看到nodejs&#xff0c;…

start.spring.io不支持java8,idea使用阿里云又报错

做项目的时候&#xff0c;我们可以发现&#xff0c;访问https://start.spring.io/ 创建脚手架项目的时候&#xff0c;最低是java 17了 但是对于很多项目来说&#xff0c;还是在用java8&#xff0c;这该怎么办呢&#xff1f; 值得庆幸的是&#xff0c;阿里云也同样有相同功能的…

掌握MySQL常用的命令

前言 MySQL是一个流行的开源关系型数据库管理系统&#xff0c;广泛应用于各种应用场景。熟练掌握MySQL的常用命令&#xff0c;对于数据库管理员和开发人员来说至关重要。本文将介绍MySQL数据库的一些基础术语、SQL语言分类&#xff0c;以及DDL、DML、DQL和DCL等操作&#xff0…

浅了解UE5

1.什么是UE5 UE5&#xff08;Unreal Engine 5&#xff09;是一款由Epic Games开的游戏引擎&#xff0c;它是UE4的后续版本。UE5于2021年5月首次发布&#xff0c;并在2022年正式发布。UE5引入了许多令人兴奋的新功能和改进&#xff0c;以下是一些主要的介绍&#xff1a; 1. 光线…

编程入门(六)【Linux系统基础操作四】

读者大大们好呀&#xff01;&#xff01;!☀️☀️☀️ &#x1f525; 欢迎来到我的博客 &#x1f440;期待大大的关注哦❗️❗️❗️ &#x1f680;欢迎收看我的主页文章➡️寻至善的主页 文章目录 &#x1f525;前言&#x1f680;if else条件控制基本的if语句带else的if语句嵌…

通俗易懂讲解 nginx-rtmp-module 是干嘛的?

文章目录 概述安装 nginx 和 nginx-rtmp-module配置 Nginx启动 Nginx使用示例推流拉流转码鉴权与安全自动录制 概述 nginx-rtmp-module 是一个用于 Nginx 的第三方模块&#xff0c;它扩展了 Nginx 服务器的功能&#xff0c;使其能够处理实时流媒体数据&#xff0c;特别是支持 …

leetcode刷题(5): STL的使用

文章目录 56. 合并区间解题思路c实现 55. 跳跃游戏解题思路c 实现 75. 颜色分类解题思路c 实现 36 下一个排列解题思路c 实现 56. 合并区间 题目: 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间&a…

仓库管理系统需求调研要点

仓库管理系统需求调研 一、仓库的作用 仓库分类 原材料仓库&#xff1a;用于存放生产所需的原材料和零部件&#xff0c;需要保持原材料的质量和数量稳定。半成品仓库&#xff1a;存放生产过程中的半成品和在制品&#xff0c;需要保持良好的生产流程和及时出库。成品仓库&#x…

tabby多个窗口同时执行插件

一、插件名称 安装插件quick-cmds 二、使用 点击右上角图标&#xff0c;选中命令单机即可。快捷键ALTQ唤出列表&#xff0c;不用每次用鼠标点击右上角&#xff0c;巴适的板。 ctrl enter发送全部

EditReady for Mac激活版:专业视频转码工具

对于视频专业人员来说&#xff0c;一款高效的视频转码工具是不可或缺的。EditReady for Mac正是这样一款强大的工具&#xff0c;它拥有简洁直观的操作界面和强大的功能&#xff0c;让您的视频处理工作事半功倍。 EditReady for Mac支持多种视频格式的转码&#xff0c;并且支持常…

旺店通·企业奇门和金蝶云星空单据接口对接

旺店通企业奇门和金蝶云星空单据接口对接 源系统:金蝶云星空 金蝶K/3Cloud&#xff08;金蝶云星空&#xff09;是移动互联网时代的新型ERP&#xff0c;是基于WEB2.0与云技术的新时代企业管理服务平台。金蝶K/3Cloud围绕着“生态、人人、体验”&#xff0c;旨在帮助企业打造面向…

【解决】Android Studio Toast点击不显示

问题描述 开发Android程序过程中&#xff0c;突然发现在Android studio的模拟机上&#xff0c;运行测试程序&#xff0c;Toast弹框不能使用了&#xff0c;但是解决方法非常粗暴和直接&#xff1a;重新加载一个新的虚拟机或清空当前虚拟机的数据&#xff0c;然后再重启。 明显&a…

如何把多个文件(夹)向上移动1层(或多层)(在批量复制前或后进行)

首先&#xff0c;需要用到的这个工具&#xff1a; 度娘网盘 提取码&#xff1a;qwu2 蓝奏云 提取码&#xff1a;2r1z 假定情况是&#xff0c;我要把下图里的4个文件夹内部的全部文件&#xff0c;合并到04的当前位置来&#xff08;4个文件夹里面各有5个兔兔的图片&#xff09…

【教学类-53-01】20240509“去掉背景的png彩色图片”转“黑色影子图”

作品展示 背景需求&#xff1a; 刚写完蒙德里安涂色学具&#xff0c;准备开课&#xff0c;转眼班级就“百日咳“”隔离3周&#xff0c;o(╥﹏╥)o 我的AI对话大师只剩1个月的有效期&#xff0c;剩下9万6千次也马上就作废了。 最后一个月可以尽量多用掉一些&#xff0c;我从小…

JVM的垃圾回收

JVM简介 JVM 是 Java Virtual Machine 的简称&#xff0c;意为 Java虚拟机。 虚拟机:是指通过软件模拟的具有完整硬件功能、运行在一个完全隔离的环境中完整计算机系统 1.JVM的内存区域划分 jvm是一个java进程 每一个java进程就是一个jvm实例 一个进程运行过程中 就要从操作系…