当前位置: 首页 > news >正文

springboot(ssm滁州市特产销售系统 特产商城系统Java系统

springboot(ssm滁州市特产销售系统 特产商城系统Java系统

开发语言:Java

框架:ssm/springboot + vue

JDK版本:JDK1.8(或11)

服务器:tomcat

数据库:mysql 5.7(或8.0)

数据库工具:Navicat

开发软件:eclipse//idea

依赖管理包:Maven

如需了解更多代码细节或修改代码功能界面,本人都能提供技术支持。(声音嘎嘎好听喔!)

祝你早日找到合适的代码哦~

注:主页千套源码&文档,文章最下方获取源码哦


package com.controller;import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.Map;import javax.servlet.http.HttpServletRequest;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.TokenEntity;
import com.entity.UserEntity;
import com.service.TokenService;
import com.service.UserService;
import com.utils.CommonUtil;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;/*** 登录相关*/
@RequestMapping("users")
@RestController
public class UserController{@Autowiredprivate UserService userService;@Autowiredprivate TokenService tokenService;/*** 登录*/@IgnoreAuth@PostMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));if(user==null || !user.getPassword().equals(password)) {return R.error("账号或密码不正确");}String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@PostMapping(value = "/register")public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {return R.error("用户已存在");}userService.insert(user);return R.ok();}/*** 退出*/@GetMapping(value = "logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));if(user==null) {return R.error("账号不存在");}user.setPassword("123456");userService.update(user,null);return R.ok("密码已重置为:123456");}/*** 列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,UserEntity user){EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/list")public R list( UserEntity user){EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();ew.allEq(MPUtil.allEQMapPre( user, "user"));return R.ok().put("data", userService.selectListView(ew));}/*** 信息*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){UserEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 获取用户的session用户信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");UserEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 保存*/@PostMapping("/save")public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {return R.error("用户已存在");}userService.insert(user);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);UserEntity u = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername()));if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {return R.error("用户名已存在。");}userService.updateById(user);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){userService.deleteBatchIds(Arrays.asList(ids));return R.ok();}
}

相关文章:

  • SQLMap介绍
  • 低多边形3D建模石头材质纹理贴图
  • 【微服务】springboot整合quartz使用详解
  • 无人零售店,凭借黑科技引领,它的前景如何?
  • GDPU 数据结构 天码行空13
  • 用户登录权限
  • 【C++】C++中的String类详解及模拟实现示例
  • 【QT】Qt常用数值输入和显示控件
  • 【GlobalMapper精品教程】067:基于无人机航拍照片快速创建正射影像图
  • zookeeper常用接口
  • 机器学习基本概念介绍 2023
  • 【Spring教程25】Spring框架实战:从零开始学习SpringMVC 之 SpringMVC入门案例总结与SpringMVC工作流程分析
  • 深入理解网络中断:原理与应用
  • 14、SQL注入——HTTP文件头注入
  • 【数据结构高阶】红黑树
  • angular组件开发
  • Codepen 每日精选(2018-3-25)
  • CSS盒模型深入
  • leetcode386. Lexicographical Numbers
  • MYSQL 的 IF 函数
  • Python利用正则抓取网页内容保存到本地
  • Vue.js源码(2):初探List Rendering
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 对象管理器(defineProperty)学习笔记
  • 解决iview多表头动态更改列元素发生的错误
  • 浅谈web中前端模板引擎的使用
  • AI算硅基生命吗,为什么?
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • ​卜东波研究员:高观点下的少儿计算思维
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • #Ubuntu(修改root信息)
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (13)Hive调优——动态分区导致的小文件问题
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (苍穹外卖)day03菜品管理
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (二十三)Flask之高频面试点
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (四) Graphivz 颜色选择
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (算法二)滑动窗口
  • (一)十分简易快速 自己训练样本 opencv级联haar分类器 车牌识别
  • .gitignore文件---让git自动忽略指定文件
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript
  • .NET Framework 4.6.2改进了WPF和安全性
  • .net 反编译_.net反编译的相关问题
  • .NET/C# 在 64 位进程中读取 32 位进程重定向后的注册表
  • .NET/MSBuild 中的发布路径在哪里呢?如何在扩展编译的时候修改发布路径中的文件呢?
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • .net程序集学习心得