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

基于SpringBoot+Vue旅游管理系统的设计和实现(源码+文档+部署讲解)

个人名片

🔥 源码获取 | 毕设定制| 商务合作:《个人名片》

⛺️心若有所向往,何惧道阻且长

文章目录

    • 个人名片
    • 环境需要
    • 技术栈
    • 功能介绍
    • 功能说明

环境需要

开发语言:Java
框架:springboot
JDK版本:JDK1.8
数据库:mysql 5.7
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.3.9
浏览器:谷歌浏览器

技术栈

后端:SpringBoot

前端:vue

功能介绍

该项目分为前台网站展示与后台管理。

前台网站主要功能有:用户登录、注册;首页有酒店信息、景点信息、客服信息、旅游路线等模块;其次导航栏有景区游玩路线、在线酒店预订、景点预订、我的预订等; 后台管理主要功能有:用户管理、酒店管理、景点管理、美食管理、路线管理等;

功能说明

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
使用说明
运行项目,输入localhost:8087/travel 登录 5. 后台管理员账户:admin 密码:admin

前台普通用户账户:user 密码:123456

登录表

/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private 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");
    }

http://www.kler.cn/a/508535.html

相关文章:

  • 2025 年 Java 最新学习资料与学习路线——从零基础到高手的成长之路
  • Java 17 新特性详解与代码示例
  • 【Flink系列】1.概述
  • AWS云平台上生成式AI通过项目文档内容分析获知项目风险
  • vue集成高德地图API实现坐标拾取功能
  • 快速开发:用AI构造AI —— 打造属于个人的Copilot(M-聪明AI)
  • 为AI聊天工具添加一个知识系统 之46 蒙板程序设计(第一版):Facet六边形【意识形态:操纵】
  • 【常见BUG】Spring Boot 和 Springfox(Swagger)版本兼容问题
  • 5步打造完善的物联网IoT测试体系
  • 【机器学习实战】kaggle 欺诈检测---使用生成对抗网络(GAN)解决欺诈数据中正负样本极度不平衡问题
  • React 第二十一节 useDeferredValue 开发中用法注意事项
  • Web3 数字资产如何更有趣?解锁 Ultiland 融合 MeMe 与 RWA 的技术路径
  • Cyber Security 101-Defensive Security-Digital Forensics Fundamentals(数字取证基础知识)
  • Linux下进程间通信方式 进程间传递文件描述符——sockpair()函数
  • Golang——包的循环引用问题(import cycle not allowed)和匿名导入
  • c++入门——引用和内联函数
  • 【机器学习】鲁棒(健壮)回归-Theil-Sen估计(Theil-Sen Estimator)
  • Docker与虚拟机的区别及常用指令详解
  • 【Leetcode 热题 100】121. 买卖股票的最佳时机
  • 在职研生活学习--20250109~管理经济学