springboot_游戏虚拟物品交易平台

1.技术介绍
SpringBoot+Mybatis+mysql+html+css+js
开发工具:eclipse或IDEA
2.主要功能说明:
1)买家
注册、登录、浏览商品、商品搜索、加入购物车、支付
2)卖家
注册、登录、商品管理、商品分类管理、订单管理
3)管理员
登录、买家管理、卖家管理、商品管理、商品分类管理
订单管理
3.部分代码展示:

package com.xxshop.controller;

import com.xxshop.domain.XxUser;
import com.xxshop.service.UserService;
import com.xxshop.utils.CookieUtils;
import com.xxshop.utils.SendSmsUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

@Controller
@RequestMapping
public class LoginController {

    @Resource
    private UserService userService;

    @Resource
    private RedisTemplate redisTemplate;

    @Autowired

    @GetMapping("login")
    public String login(){
        return "login";
    }

    /**
     * 登录
     * @param phone
     * @param password
     * @param model
     * @return
     */
    @PostMapping("login")
    public String loginByPassword(String phone, String password, String remember, Model model, HttpSession session, HttpServletResponse response){
        XxUser user = userService.login(phone,password);

        if (user != null){
            session.setAttribute("user",user);
            if (remember != null){
                Cookie cookie = new Cookie("user",user.getPhone()+"_"+user.getPassword());
                cookie.setMaxAge(60*60*24);
                cookie.setPath("login");
                response.addCookie(cookie);
                return "redirect:/index";
            }
            return "redirect:/index";
        }
        else {
            model.addAttribute("message","用户名或密码错误");
            return "login";
        }
    }

    @PostMapping("remember")
    @ResponseBody
    public String remember(HttpSession session,HttpServletRequest request){
        Object user = session.getAttribute("user");
        String value = CookieUtils.getCookieValByKey("user",request);
        if (user != null && !value.equals("") && value != null){
            return value;
        }else {
            return "";
        }
    }


    @GetMapping("register")
    public String toregister(){
        return "register";
    }

    /**
     * 注册
     * @param realname
     * @param phone
     * @param username
     * @param password
     * @param repassword
     * @return
     */
    @PostMapping("register")
    public String register(String realname, String phone, String username, String password, String repassword){
        if(!password.equals(repassword)){
            return "redirect:/register";
        }
        userService.register(realname, phone, username, password);
        return "login";
    }

    /**
     * 验证用户名是否存在
     * @param phone
     * @return
     */
    @GetMapping("verPhone/{phone}")
    @ResponseBody
    public Boolean verPhone(@PathVariable String phone) {
        boolean flag = userService.verPhone(phone);
        return flag;
    }

    /**
     * 登出
     * @param request
     * @return
     */
    @GetMapping("logout")
    public String logout(HttpServletRequest request){
        request.getSession().invalidate();
        return "redirect:/index";
    }

    /**
     * @Function: 短信验证接口
     */
    @GetMapping("sendCode/{phone}")
    @ResponseBody
    public  String SmsVerification(@PathVariable String phone) {
        String code = SendSmsUtil.sendSms(phone);
//        //将验证码放入Redis
//        String key = "user_"+code;
//        ValueOperations<String,String> operations = redisTemplate.opsForValue();
//
//        operations.set(key,code);
        return code;
    }
}


4.系统演示地址:
链接:https://pan.baidu.com/s/1JamRzzVxuqrIzJmoTSkLDg
提取码:bbrc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值