首页 > 其他分享 >我的第一个项目(十二) :分数和生命值的更新(后端增删查改的"改")

我的第一个项目(十二) :分数和生命值的更新(后端增删查改的"改")

时间:2023-04-27 22:25:29浏览次数:41  
标签:分数 life return req update score 查改 增删 public

好家伙,写后端,这多是一件美逝.

关于这个项目的代码前面的博客有写 

我的第一个独立项目 - 随笔分类 - 养肥胖虎 - 博客园 (cnblogs.com)

 

现在,我们登陆进去了,我开始和敌人战斗,诶,打到一百分了,我现在要把这个分数保存起来

 

 

1.前端先把测试样例写好

 随便写一个测试样例

<template>
  <div>
    <div ref="stage"></div>
    <button @click="http">网络请求测试</button>
  </div>
</template>
  
<script>
import { canvas, main_1 } from "panghu-planebattle-esm"
import bus from '../js/eventBus'
export default {
  data() {
    return {
      player: {
        id:'',
        loginName: 123456,
        life: 100,
        score: score,
      },
    }
  },
  methods:{
    http(){
      setInterval(() => {
      this.axios.post('http://localhost:3312/sys-user/update', this.player)
        .then((resp) => {

          console.log("this is update", resp);
          let data = resp.data;
          //
          if (data.success) {
            console.log({
              message: '修改成功',
              type: 'success'
            });
          }
        })
    }, 5000)
    }
  },

 

 (确实是非常朴实无华的测试样例)

 

 

2.随后我们来到后端

来到controller类中添加接口

 

    @PostMapping("update")
    public CommonResp update(@RequestBody SysUserUpdateReq req){
//        zxcv1234
        CommonResp resp = new CommonResp<>();
        sysUserService.update(req);
        return resp;
    }

 

 

3.在req文件下添加一个SysUserUpdateReq类

因为这个我们只做对数据的更新,所以只用LoginName,life,score就可以了

 

package com.wulaoda.loginhouduan.req;

public class SysUserUpdateReq {
    private String LoginName;

    private int life;

    private int score;

    public String getLoginName() {
        return LoginName;
    }

    public void setLoginName(String loginName) {
        LoginName = loginName;
    }

    public int getLife() {
        return life;
    }

    public void setLife(int life) {
        this.life = life;
    }

    public int getScore() {
        return score;
    }

    public void setScore(int score) {
        this.score = score;
    }

    @Override
    public String toString() {
        return "SysUserUpdateReq{" +
                "LoginName='" + LoginName + '\'' +
                ", life=" + life +
                ", score=" + score +
                '}';
    }
}

 

4.编写业务

这里Mybatis-plus提供的update方法

嘶,参数看不懂

 然后,改怎么写啊...不会啊...

必应我来了

mybatis-plus入门学习-BaseMapper - 掘金 (juejin.cn)

mybatis-plus update更新操作的三种方式_mybatisplus的uodate_波神小波的博客-CSDN博客

直接就对着抄

 

//数据更新
    @Override
    public SysUserUpdateResp update(SysUserUpdateReq req){//重写
          //网上的例子
//        LambdaUpdateWrapper<User> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
//        lambdaUpdateWrapper.eq(User::getName, "rhb").set(User::getAge, 18);
//        Integer rows = userMapper.update(null, lambdaUpdateWrapper);
          LambdaUpdateWrapper<SysUserEntity> wrapper1 = new LambdaUpdateWrapper<>();
          wrapper1.eq(SysUserEntity::getLoginName, req.getLoginName()).set(SysUserEntity::getLife, req.getLife());
          sysUserMapper.update(null,wrapper1);
          return null;
    }

 

前端点下按钮,开始测试,

 数据成功修改

 

标签:分数,life,return,req,update,score,查改,增删,public
From: https://www.cnblogs.com/FatTiger4399/p/17360339.html

相关文章

  • 0/1分数规划学习笔记
    #0/1分数规划学习笔记——bysunzz3183------------##介绍$0/1$分数规划是指,给定整数$a_1,a_2,\cdots,a_n,b_1,b_2,\cdots,b_n$,求一组解$x_i,x_i\in\left\{0,1\right\}$,使下面的式子最大化:$$\frac{\sum_{i=1}^{n}a_i\timesx_i}{\sum_{i=1}^{n}b_i\timesx_i......
  • ORM操作数据增删改查、表关系
    目录pycharm链接数据库(MySQL)Django链接数据库(MySQL)(掌握)settings的设置修改pymysql模块Django的ORM操作创建表models.py迁移命令主键字段可以不用创建orm针对字段的增删改查增加修改字段删除字段ORM针对数据的增删改查用户数据的增加用户数据的查询用户数据的修改用户数据的......
  • ibatis 入门例子 增删改查
    新建maven工程: java代码:packagecom.ibatis.dao;importjava.util.List;importcom.ibatis.entity.User;publicinterfaceIUserDao{ voidinsertUser(Useruser); voiddeleteUserById(intid); voidupdateUser(Useruser); UserselectUserById(intid); List&......
  • ORM执行SQL语句,双下__查询,多表查询,外建字段增删改查
    目录ORM执行SQL语句查看原生sql语句神奇的双下划线查询ORM外键字段的创建一对多的外键增删改查数据多对多外键增删改查ORM跨表查询基于对象的跨表查询基于上下划线的跨表查询进阶操作ORM执行SQL语句有时候ORM的操作效率可能偏低我们是可以自己编写SQL的方式1: models.User.o......
  • Django模型层(一) (测试环境搭配 常见的十几种查询方法-ORM关键字 ORM执行SQL语句
    目录一、测试环境搭配切换数据库自带的sqlite3数据库对时间字段不敏感有时候会展示错乱,所以我们习惯切换成常见的数据库比如MySQLdjangoorm并不会自动帮你创建库,所以需要提前准备好!单独搭配测试环境单独测试django某个功能层,默认不允许单独测试某个py文件,如果想要测试......
  • SNMPV3监控华为设备只能监控到部分数据的解决方法
    最近在做Zabbix监控二次开发的一个项目,需要用到snmp监控被管设备的各种信息,比如风扇状态等PS:本项目之前配置的都是SNMPV3协议(即需要加密的snmp)经华为资料得到它们的MIB库(一个snmp协议的oid集合),发现并不能根据他给的oid获取数据于是用snmpWalk爬取所有数据,发现只能爬到一部分,并......
  • 修改国家开放大学分数
     transform是css3属性。有时候UI给的原型图是图片旋转出来的,而作为前端应该怎样取使用旋转还原原型图呢。transform:scale(0.5) 缩放0.5倍transform:rotate(90deg)transform:rotate(-270deg) 顺时针旋转90°transform:rotateX(90deg)沿x轴旋转90度transform:rotateY(180deg)沿y轴旋......
  • Geotools基本增删改查Feature
    postgis依赖<dependency><groupId>org.geotools</groupId><artifactId>gt-main</artifactId><version>27.2</version></dependency><dependency><groupId>org.geotools</groupId>......
  • elasticsearch——增删改查
    --创建索引PUT/icon_index{"settings":{"analysis":{"analyzer":{"text_anlyzer":{"tokenizer":"ik_max_word","filter":"py"......
  • mysql单表备份部分数据且数据量较大时
    --复制表结构CREATETABLEtableB(LIKEtableA);--插入筛选数据INSERTintotableBSELECT*fromtableAwhereXXX=?;--重命名,替换renametabletableAtotableC;renametabletableBtotableA;--删除旧表DROPTABLEtableC;......