1、项目介绍

随着社会的发展,人们的生活水平不断的提高,人们对于生活的方式也发生了改变,人们热衷于休闲旅游,人们旅游通常采用跟团、或者自由行。但是旅游受人为、自然等多种制约因素的影响,出行前要做好旅行中的规划,需要再短时间内确定旅游目的地,搜集目的地的相关信息,以及保险、餐饮住宿、旅游车票等相关信息是游客所关心的问题。如今互联网应用已经普及到大众身边,依靠有一个基于互联网搭建的旅游信息系统可以解决信息的及时性、地域的限制等问题,实现可以随时随地查找旅游信息的信息发布系统。

本文将讲述基于目前流行框架SSM开发的旅游信息管理系统,该系统采用了基于浏览器/服务器的B/S模式、采用MVC设计模式等技术。对旅游信息管理涉及的业务需求进行整理和研究,设计的操作模块有:客户端包括了客户注册会员、会员中心、旅游路线、旅游景点、餐饮住宿、旅游车票、旅游保险、旅游攻略、注意事项。管理端包括用户管理、内容管理、业务管理、数据分析等模块。

系统设计遵循软件工程的设计标准严格执行,并且进行了系统测试。及时纠正错误,确保数据准确。

2、技术框架

运行系统:windows

编程语言:java

系统架构:B/S

后端框框:SpringBoot+Mybatis

前端框架:HTML+CSS+JavaScript+layui

前后端分离:否

数据库:MySQL

Maven项目:是

数据库表数量:11

运行环境:JDK8+MySQL5.6+Maven3.6+IntelliJ IDEA

3、演示视频

基于springboot的旅游管理系统

4、项目截图

5、文档截图

6、代码示例

package com.cn.travel.web.manager;

import com.cn.travel.cms.car.service.imp.CarService;
import com.cn.travel.cms.hotel.service.imp.HotelService;
import com.cn.travel.cms.insurance.service.imp.InsuranceService;
import com.cn.travel.cms.order.service.imp.OrderService;
import com.cn.travel.cms.scenicSpot.service.imp.ScenicSpotService;
import com.cn.travel.cms.strategy.service.imp.StrategyService;
import com.cn.travel.cms.travelRoute.service.imp.TravelRouteService;
import com.cn.travel.role.user.service.imp.UserService;
import com.cn.travel.web.base.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
@RequestMapping("/manager")
public class DataController extends BaseController {
    @Autowired
    UserService userService;
    @Autowired
    TravelRouteService travelRouteService;
    @Autowired
    ScenicSpotService scenicSpotService;
    @Autowired
    HotelService hotelService;
    @Autowired
    OrderService orderService;
    @Autowired
    StrategyService strategyService;
    @Autowired
    CarService carService;
    @Autowired
    InsuranceService insuranceService;


    @RequestMapping("/userData")
    public ModelAndView userDate()throws Exception{
        ModelAndView mv=this.getModeAndView();
        mv.addObject("state1",userService.state1count());
        mv.addObject("state2",userService.state2count());
        mv.setViewName("data/userData");
        return mv;
    }


    @RequestMapping("/travelRouteData")
    public ModelAndView travelRouteDate()throws Exception{
        ModelAndView mv=this.getModeAndView();
        mv.addObject("state0",travelRouteService.state0count());
        mv.addObject("state1",travelRouteService.state1count());
        mv.addObject("state2",travelRouteService.state2count());
        mv.setViewName("data/travelRouteData");
        return mv;
    }



    @RequestMapping("/scenicSpotData")
    public ModelAndView scenicSpotDate()throws Exception{
        ModelAndView mv=this.getModeAndView();
        mv.addObject("state0",scenicSpotService.state0count());
        mv.addObject("state1",scenicSpotService.state1count());
        mv.addObject("state2",scenicSpotService.state2count());
        mv.setViewName("data/scenicSpotData");
        return mv;
    }

    @RequestMapping("/hotelData")
    public ModelAndView hotelDate()throws Exception{
        ModelAndView mv=this.getModeAndView();
        mv.addObject("state0",hotelService.state0count());
        mv.addObject("state1",hotelService.state1count());
        mv.addObject("state2",hotelService.state2count());
        mv.setViewName("data/hotelData");
        return mv;
    }


    @RequestMapping("/orderData")
    public ModelAndView orderDate()throws Exception{
        ModelAndView mv=this.getModeAndView();
        mv.addObject("state0",orderService.state0count());
        mv.addObject("state1",orderService.state1count());
        mv.addObject("state2",orderService.state2count());
        mv.setViewName("data/orderData");
        return mv;
    }

    @RequestMapping("/strategyData")
    public ModelAndView strategyDate()throws Exception{
        ModelAndView mv=this.getModeAndView();
        mv.addObject("state0",strategyService.state0count());
        mv.addObject("state1",strategyService.state1count());
        mv.addObject("state2",strategyService.state2count());
        mv.setViewName("data/strategyData");
        return mv;
    }
    @RequestMapping("/carData")
    public ModelAndView carDate()throws Exception{
        ModelAndView mv=this.getModeAndView();
        mv.addObject("state0",carService.state0count());
        mv.addObject("state1",carService.state1count());
        mv.addObject("state2",carService.state2count());
        mv.addObject("type0",carService.type0count());
        mv.addObject("type1",carService.type1count());
        mv.addObject("type2",carService.type2count());
        mv.setViewName("data/carData");
        return mv;
    }

    @RequestMapping("/insuranceData")
    public ModelAndView insuranceDate()throws Exception{
        ModelAndView mv=this.getModeAndView();
        mv.addObject("state0",insuranceService.state0count());
        mv.addObject("state1",insuranceService.state1count());
        mv.addObject("state2",insuranceService.state2count());
        mv.addObject("company0",insuranceService.company0count());
        mv.addObject("company1",insuranceService.company1count());

        mv.setViewName("data/insuranceData");
        return mv;
    }
}

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐