数据库课设

网上订餐系统

一、概述
本次设计为网上订餐系统,结合了vue+elmentui+mybatis+springboot+redis的系统,在这个文章中,会对一些功能进行一个简单阐述。
二、部分代码
在这次系统中,首先会涉及到一个登陆后获取当前登录用户的信息的问题,就这个问题,因为之前从未接触过此类内容,所以懵圈了很久,后面发现可以通过session和cookie,在登录的时候,生成token,然后存储起来,在其他页面需要获取当前登录用户的信息的时候,就可以直接在需要的地方获取token,如下代码所示:
@Override
public User getByToken(HttpServletResponse response, String token) {
if (token == null) {
return null;
}
User user = JSON.parseObject(redisUtil.get(COOKIE_NAME_TOKEN + “::” + token), User.class);
//重置有效期
if (user == null) {
throw new GlobalException(CodeMsg.USER_NOT_LOGIN);
}
addCookie(response, token, user);
return user;
}

private void addCookie(HttpServletResponse response, String token, User user) {
    //将token存入redis
    redisUtil.set(COOKIE_NAME_TOKEN + "::" + token, JSON.toJSONString(user), TOKEN_EXPIRE);
    //将token写入cookie
    Cookie cookie = new Cookie(COOKIE_NAME_TOKEN, token);
    cookie.setMaxAge(TOKEN_EXPIRE);
    cookie.setPath("/");
    response.addCookie(cookie);
}

在这里插入图片描述
如果需要在个人信息处获取个人信息的话,只需要下面的代码:
/*
当前登录的用户
@param user用户信息,由封装注入
*/
@RequestMapping("/current")
@ResponseBody
public Result current(User user){
return Result.success(user);
}
在本系统中,还涉及到了管理员的增删改查问题,其中增加是比较容易的,只需要在前端建一个table,然后将:data从前端传给后端,后端接收后,将这些数据insert数据库即可。对于删除来说,因为涉及到点击某一行获取该行数据对应的id,所以在table中应当存在scope.row,然后点击按钮,触发delete(scope.row.id),将id通过url = “http://…/deleteUser”+id传到后端,后端编写@getMapper("/deleteUser/{id}")进行删除操作,修改的方法其实和删除差不多,只是如果设计弹窗的话,可以使用以下的代码:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值