JAVA毕业设计176—基于Java+Springboot+vue3的交通旅游订票管理系统(源代码+数据库)

毕设所有选题:
https://blog.csdn.net/2303_76227485/article/details/131104075

基于Java+Springboot+vue3的交通旅游订票管理系统(源代码+数据库)176

一、系统介绍

本项目前后端分离(可以改为ssm版本),分为用户、管理员两种角色

1、用户:

  • 注册、登录、景点搜索、火车票预订、飞机票预定、汽车票预定、订票管理、个人信息、密码修改、我的收藏

2、管理员:

  • 管理员管理、用户管理、火车票管理、飞机票管理、汽车票管理、订票管理、景点管理、轮播图管理

二、所用技术

后端技术栈:

  • Springboot
  • mybatisPlus
  • Mysql
  • Maven

前端技术栈:

  • Vue3
  • Vue-router
  • axios
  • elementPlus

三、环境介绍

基础环境 :IDEA/eclipse, JDK1.8, Mysql5.7及以上, Maven3.6, node14, navicat

所有项目以及源代码本人均调试运行无问题 可支持远程调试运行

四、页面截图

1、用户:






















2、管理员:











五、浏览地址

前台地址:http://localhost:8082

用户账号密码:用户账号1/123456

后台地址:http://localhost:8081

管理员账户密码:admin/admin

六、部署教程

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并执行项目的sql文件

  2. 使用IDEA/Eclipse导入server_code项目,若为maven项目请选择maven,等待依赖下载完成

  3. 修改application.yml里面的数据库配置,src/main/java/com/SpringbootSchemaApplication.java启动后端项目

  4. vscode或idea打开client_code后台项目

  5. 在编译器中打开terminal,执行npm install 依赖下载完成后执行 npm run serve,执行成功后会显示访问地址

  6. vscode或idea打开manage_code后台项目

  7. 在编译器中打开terminal,执行npm install 依赖下载完成后执行 npm run serve,执行成功后会显示访问地址

七、核心代码

bash 复制代码
@RestController
@RequestMapping("/huochexinxi")
public class HuochexinxiController {
    @Autowired
    private HuochexinxiService huochexinxiService;

    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,HuochexinxiEntity huochexinxi,
		HttpServletRequest request){
        EntityWrapper<HuochexinxiEntity> ew = new EntityWrapper<HuochexinxiEntity>();

		PageUtils page = huochexinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, huochexinxi), params), params));

        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,HuochexinxiEntity huochexinxi, 
		HttpServletRequest request){
        EntityWrapper<HuochexinxiEntity> ew = new EntityWrapper<HuochexinxiEntity>();

		PageUtils page = huochexinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, huochexinxi), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( HuochexinxiEntity huochexinxi){
       	EntityWrapper<HuochexinxiEntity> ew = new EntityWrapper<HuochexinxiEntity>();
      	ew.allEq(MPUtil.allEQMapPre( huochexinxi, "huochexinxi")); 
        return R.ok().put("data", huochexinxiService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(HuochexinxiEntity huochexinxi){
        EntityWrapper< HuochexinxiEntity> ew = new EntityWrapper< HuochexinxiEntity>();
 		ew.allEq(MPUtil.allEQMapPre( huochexinxi, "huochexinxi")); 
		HuochexinxiView huochexinxiView =  huochexinxiService.selectView(ew);
		return R.ok("查询火车信息成功").put("data", huochexinxiView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        HuochexinxiEntity huochexinxi = huochexinxiService.selectById(id);
		huochexinxi = huochexinxiService.selectView(new EntityWrapper<HuochexinxiEntity>().eq("id", id));
        return R.ok().put("data", huochexinxi);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        HuochexinxiEntity huochexinxi = huochexinxiService.selectById(id);
		huochexinxi = huochexinxiService.selectView(new EntityWrapper<HuochexinxiEntity>().eq("id", id));
        return R.ok().put("data", huochexinxi);
    }
    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody HuochexinxiEntity huochexinxi, HttpServletRequest request){
    	huochexinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(huochexinxi);
        huochexinxiService.insert(huochexinxi);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody HuochexinxiEntity huochexinxi, HttpServletRequest request){
    	huochexinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(huochexinxi);
        huochexinxiService.insert(huochexinxi);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    @Transactional
    public R update(@RequestBody HuochexinxiEntity huochexinxi, HttpServletRequest request){
        //ValidatorUtils.validateEntity(huochexinxi);
        huochexinxiService.updateById(huochexinxi);//全部更新
        return R.ok();
    }

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        huochexinxiService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
   
}
相关推荐
小鑫记得努力9 分钟前
Java类和对象(下篇)
java
binishuaio13 分钟前
Java 第11天 (git版本控制器基础用法)
java·开发语言·git
zz.YE15 分钟前
【Java SE】StringBuffer
java·开发语言
老友@15 分钟前
aspose如何获取PPT放映页“切换”的“持续时间”值
java·powerpoint·aspose
wrx繁星点点30 分钟前
状态模式(State Pattern)详解
java·开发语言·ui·设计模式·状态模式
Upaaui33 分钟前
Aop+自定义注解实现数据字典映射
java
zzzgd81633 分钟前
easyexcel实现自定义的策略类, 最后追加错误提示列, 自适应列宽,自动合并重复单元格, 美化表头
java·excel·表格·easyexcel·导入导出
友善的鸡蛋34 分钟前
解决:使用EasyExcel导入Excel模板时出现数据导入不进去的问题
java·easyexcel·excel导入
星沁城35 分钟前
240. 搜索二维矩阵 II
java·线性代数·算法·leetcode·矩阵
戴眼镜的猴35 分钟前
Spring Boot的过滤器与拦截器的区别
spring boot