SpringBoot实现商城系统

注意:本商城系统无后台管理功能和页面

技术架构:

springboot+mysql+mybatis+html+css+js

部分代码展示:

登录功能:

package com.moon.tmail.controller;

import com.moon.tmail.pojo.Common;

import com.moon.tmail.pojo.Prefer;

import com.moon.tmail.pojo.TabUser;

import com.moon.tmail.service.TabUserService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;

import org.springframework.web.bind.annotation.PathVariable;

import org.springframework.web.bind.annotation.RequestBody;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpSession;

import java.util.List;

@RestController

@RequestMapping("user")

public class TabLoginController {

    @Autowired

    private TabUserService tabUserService;

    private BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder(6);

    @RequestMapping("login")

    public boolean login(@RequestBody TabUser user, HttpSession httpsession) {

        TabUser res = tabUserService.findbyphone(user.getPhone());

        if (res == null) {

            return false;

        }

        if (passwordEncoder.matches(user.getPassword(), res.getPassword())) {

            httpsession.setAttribute("userId", res.getId());

            httpsession.setAttribute("nickname", res.getNickname());

            httpsession.setAttribute("phone", res.getPhone());

            httpsession.setAttribute("address",res.getAddress());

            return true;

        }

        return false;

    }

    @RequestMapping("checkPrefer")

    public boolean prefer(HttpSession httpSession) {

        int userId = Integer.parseInt(httpSession.getAttribute("userId").toString());

        List<Prefer> prefers = tabUserService.findbyuserId(userId);

        if (prefers == null || prefers.size() == 0) {

            return true;

        }

        return false;

    }

    @RequestMapping("logout")

    public boolean logout(HttpSession httpSession) {

        httpSession.invalidate();

        return true;

    }

    @RequestMapping("checkLogin")

    public boolean isLogin(HttpSession httpSession) {

        if (httpSession.getAttribute("phone") == null || "".equals(httpSession.getAttribute("phone"))) {

            return false;

        }

        return true;

    }

    @RequestMapping("check/{phone}")

    public boolean isExist(@PathVariable String phone){

        Long p = Long.parseLong(phone);

        if(tabUserService.findbyphone(p)==null){

            return true;

        };

        return false;

    }

    @RequestMapping("register")

    public boolean register(@RequestBody TabUser user){

        user.setPassword(passwordEncoder.encode(user.getPassword()));

        user.setIsEmp(false);

        int i = tabUserService.add(user);

        if(i!=1) {

            return false;

        }

        return true;

    }

    @RequestMapping("addPrefer")

    public void addPrefer(@RequestBody List<Common> categories,HttpSession httpSession){

        Integer i = (Integer) httpSession.getAttribute("userId");

        for(Common c:categories){

            Prefer prefer = new Prefer();

            prefer.setUserId(i);

            prefer.setCategoryId(c.getCategoryId());

            tabUserService.addPrefer(prefer);

        }

    }

}

系统演示地址:

链接:https://pan.baidu.com/s/1rpqBqlh08b2wahi1DnCk-Q

提取码:7q7q

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容