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();
    }
   
}
相关推荐
逆境不可逃3 小时前
一篇速通互联网架构的不断升级过程:从单机到云原生
java·elasticsearch·搜索引擎·云原生·架构
scott.cgi5 小时前
Unity直接编译Java文件作为插件,导致失败的两个打包设置
java·unity·unity调用java·unity的java文件·unity的android插件·unity调用android·unity加载java代码
澈2079 小时前
C++并查集:高效解决连通性问题
java·c++·算法
2401_8734794010 小时前
运营活动被薅羊毛怎么防?用IP查询+设备指纹联动封堵漏洞
java·网络·tcp/ip·github
ShiJiuD66688899910 小时前
大事件板块一
java
摇滚侠10 小时前
@Autowired 和 @Resource 的区别
java·开发语言
largecode11 小时前
打电话时,怎么让号码显示自己的品牌名称?办理号码认证服务流程
笔记·百度·微信·课程设计·微信公众平台·facebook·新浪微博
SeaTunnel11 小时前
(八)收官篇 | 数据平台最后一公里:数据集成开发设计与上线治理实战
java·大数据·开发语言·白鲸开源
Ting-yu11 小时前
SpringCloud快速入门(7)---- 数据隔离
spring boot·spring·spring cloud
吴声子夜歌12 小时前
Java——线程的基本协作机制
java·线程协作