基于javaweb的SpringBoot桂林旅游景点导游平台(java+springboot+mybaits+vue+elementui+mysql)

运行环境

Java≥8、MySQL≥5.7、Node.js≥14

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可

❗没学过node.js的不要搞前后端分离项目

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

221125030706

241125030706

251125030706

261125030706

271125030706

281125030706

291125030706

301125030706

311125030706

321125030706

基于javaweb的SpringBoot桂林旅游景点导游平台(java+springboot+mybaits+vue+elementui+mysql)

项目介绍

springboot桂林旅游景点导游平台

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。

2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;

3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 

4.数据库:MySql 5.7/8.0版本均可;

5.是否Maven项目:是;

技术栈

后端:SpringBoot+Mybaits

前端:Vue + elementui

使用说明

项目运行:

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

  2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令;

  3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;

  4. 运行项目,在浏览器中输入地址:

前台地址:http://localhost:8080/springbootrpj39/front/index.html

后台地址

http://localhost:8080/springbootrpj39/admin/dist/index.html

管理员 abo 密码 abo

用户:用户1 密码: 123456

注意项目文件路径中不能含有中文、空格、特殊字符等,否则图片会上传不成功。

用户管理控制层: 

@Controller

@RequestMapping(“/manager”)

public class UserController extends BaseController {

@Autowired

UserService userService;

@RequestMapping(“/userList”)

public ModelAndView userList(PageParam pageParam, @RequestParam(value = “query”, required = false) String query) {

ModelAndView mv = this.getModeAndView();

if(pageParam.getPageNumber()<1){

pageParam =new PageParam();

long count = 0;

try {

count = userService.count();

} catch (Exception e) {

e.printStackTrace();

pageParam.setCount(count);

if(count<=10){

pageParam.setSize(1);

}else{

pageParam.setSize(count%10==0?count/10:count/10+1);

pageParam.setPageNumber(1);

pageParam.setPageSize(10);

List list = userService.findByPage(pageParam.getPageNumber(),pageParam.getPageSize(), query);

mv.addObject(“pageData”, list);

if (Tools.notEmpty(query)) {

mv.addObject(“query”, query);

pageParam.setCount(list.size());

if (list.size() > pageParam.getPageSize()) {

pageParam.setSize(list.size() / pageParam.getPageSize());

} else {

pageParam.setSize(1);

mv.addObject(“pageParam”,pageParam);

mv.setViewName(“user/allUsers”);

return mv;

@RequestMapping(“/userAdd”)

public ModelAndView userAdd(){

ModelAndView mv = this.getModeAndView();

mv.addObject(“entity”,new User());

mv.setViewName(“user/userEdit”);

return mv;

@RequestMapping(“/userView”)

public ModelAndView userView(String id){

ModelAndView mv = this.getModeAndView();

try {

mv.addObject(“entity”,userService.findById(id));

}catch (Exception e){

e.printStackTrace();

mv.setViewName(“user/userView”);

return mv;

@RequestMapping(“/userEdit”)

public ModelAndView userEdit(String id){

ModelAndView mv = this.getModeAndView();

try {

mv.addObject(“entity”,userService.findById(id));

}catch (Exception e){

e.printStackTrace();

mv.setViewName(“user/userEdit”);

return mv;

@RequestMapping(“/userSave”)

public ModelAndView userSave(HttpServletRequest request, String id, RedirectAttributes redirectAttributes){

ModelAndView mv = this.getModeAndView();

User entity = null;

try {

if(Tools.notEmpty(id)){

entity = userService.findById(id);

}else{

entity = new User();

this.bindValidateRequestEntity(request,entity);

if (Tools.isEmpty(entity.getId())){

User object = userService.findByUserName(entity.getUserName());

if (object != null) {

mv.addObject(“message”,”用户名已存在!”);

mv.addObject(“entity”,entity);

mv.setViewName(“user/userEdit”);

return mv;

entity.setId(Tools.getUUID());

userService.save(entity);

}else{

userService.update(entity);

} catch (Exception e) {

e.printStackTrace();

mv.addObject(“pageData”, userService.findByPage(1, 10,null));

PageParam pageParam =new PageParam();

long count = 0;

try {

count = userService.count();

} catch (Exception e) {

e.printStackTrace();

pageParam.setCount(count);

if(count<=10){

pageParam.setSize(1);

}else{

pageParam.setSize(count%10==0?count/10:count/10+1);

pageParam.setPageNumber(1);

pageParam.setPageSize(10);

mv.addObject(“pageParam”,pageParam);

mv.setViewName(“user/allUsers”);

return mv;

@RequestMapping(“/userDelete”)

public String userDelete(String id){

if(Tools.notEmpty(id)){

try {

userService.deleteByid(id);

}catch (Exception e){

e.printStackTrace();

return REDIRECT+”/manager/userList”;

 管理员订单管理控制层:

@Controller

@RequestMapping(“/manager”)

public class OrderController extends BaseController {

@Autowired

OrderService orderService;

@RequestMapping(“/orderList”)

public ModelAndView orderList(PageParam pageParam, @RequestParam(value = “query”, required = false) String query) {

ModelAndView mv = this.getModeAndView();

if(pageParam.getPageNumber()<1){

pageParam =new PageParam();

long count = 0;

try {

count = orderService.count();

} catch (Exception e) {

e.printStackTrace();

pageParam.setCount(count);

if(count<=10){

pageParam.setSize(1);

}else{

pageParam.setSize(count%10==0?count/10:count/10+1);

pageParam.setPageNumber(1);

pageParam.setPageSize(10);

List list = orderService.findByPage(pageParam.getPageNumber(),pageParam.getPageSize(), query);

mv.addObject(“pageData”, list);

if (Tools.notEmpty(query)) {

mv.addObject(“query”, query);

pageParam.setCount(list.size());

if (list.size() > pageParam.getPageSize()) {

pageParam.setSize(list.size() / pageParam.getPageSize());

} else {

pageParam.setSize(1);

mv.addObject(“pageParam”,pageParam);

mv.setViewName(“order/orderList”);

return mv;

@RequestMapping(“/orderAdd”)

public ModelAndView travelRouteAdd(){

ModelAndView mv = this.getModeAndView();

mv.addObject(“entity”,new Order());

mv.setViewName(“order/orderEdit”);

return mv;

@RequestMapping(“/orderView”)

public ModelAndView orderView(String id){

ModelAndView mv = this.getModeAndView();

try {

mv.addObject(“entity”,orderService.findById(id));

}catch (Exception e){

e.printStackTrace();

mv.setViewName(“order/orderView”);

return mv;

@RequestMapping(“/orderEdit”)

public ModelAndView orderEdit(String id){

ModelAndView mv = this.getModeAndView();

try {

mv.addObject(“entity”,orderService.findById(id));

}catch (Exception e){

e.printStackTrace();

mv.setViewName(“order/orderEdit”);

return mv;

@RequestMapping(“/orderSave”)

public String orderSave(HttpServletRequest request, String id){

Order entity = null;

try {

if(Tools.notEmpty(id)){

entity = orderService.findById(id);

}else{

entity = new Order();

this.bindValidateRequestEntity(request,entity);

if (Tools.isEmpty(entity.getId())){

entity.setId(Tools.getUUID());

orderService.save(entity);

}else{

orderService.update(entity);

} catch (Exception e) {

e.printStackTrace();

return REDIRECT+”/manager/orderList”;

@RequestMapping(“/orderDelete”)

public String orderDelete(String id){

if(Tools.notEmpty(id)){

try {

orderService.deleteByid(id);

}catch (Exception e){

e.printStackTrace();

return REDIRECT+”/manager/orderList”;

旅行路线管理控制层: 

@Controller

@RequestMapping(“/manager”)

public class TravelRouteController extends BaseController {

@Autowired

TravelRouteService travelRouteService;

@Value(“${yuanlrc.filePath}”)

private String filePath;

@RequestMapping(“/travelRouteList”)

public ModelAndView travelRouteList(PageParam pageParam, @RequestParam(value = “query”, required = false) String query){

ModelAndView mv = this.getModeAndView();

if(pageParam.getPageNumber()<1){

pageParam =new PageParam();

long count = 0;

try {

count = travelRouteService.count();

} catch (Exception e) {

e.printStackTrace();

pageParam.setCount(count);

if(count<=10){

pageParam.setSize(1);

}else{

pageParam.setSize(count%10==0?count/10:count/10+1);

pageParam.setPageNumber(1);

pageParam.setPageSize(10);

List list = travelRouteService.findByPage(pageParam.getPageNumber(),pageParam.getPageSize(), query);

mv.addObject(“pageData”, list);

if (Tools.notEmpty(query)) {

mv.addObject(“query”, query);

pageParam.setCount(list.size());

if (list.size() > pageParam.getPageSize()) {

pageParam.setSize(list.size() / pageParam.getPageSize());

} else {

pageParam.setSize(1);

mv.addObject(“pageParam”,pageParam);

mv.setViewName(“travelRoute/travelRouteList”);

return mv;

@RequestMapping(“/travelRouteAdd”)

public ModelAndView travelRouteAdd(){

ModelAndView mv = this.getModeAndView();

mv.addObject(“entity”,new TravelRoute());

mv.setViewName(“travelRoute/travelRouteEdit”);

return mv;

@RequestMapping(“/travelRouteView”)

public ModelAndView travelRouteView(String id){

ModelAndView mv = this.getModeAndView();

try {

mv.addObject(“entity”,travelRouteService.findById(id));

}catch (Exception e){

e.printStackTrace();

mv.setViewName(“travelRoute/travelRouteView”);

return mv;

@RequestMapping(“/travelRouteEdit”)

public ModelAndView travelRouteEdit(String id){

ModelAndView mv = this.getModeAndView();

try {

mv.addObject(“entity”,travelRouteService.findById(id));

}catch (Exception e){

e.printStackTrace();

mv.setViewName(“travelRoute/travelRouteEdit”);

return mv;

@RequestMapping(“/travelRouteSave”)

public String travelRouteSave(HttpServletRequest request, String id, @RequestParam(“fileName”) MultipartFile file){

TravelRoute entity = null;

try {

if(Tools.notEmpty(id)){

entity = travelRouteService.findById(id);

}else{

entity = new TravelRoute();

this.bindValidateRequestEntity(request,entity);

if(file != null && !file.isEmpty()){

String fileName = file.getOriginalFilename();

int size = (int) file.getSize();

System.out.println(fileName + “–>” + size);

String path =filePath+”/travelRoute”;

File dest = new File(path + “/“ + fileName);

if(!dest.getParentFile().exists()){ //判断文件父目录是否存在

dest.getParentFile().mkdir();

try {

file.transferTo(dest); //保存文件

entity.setImgUrl(“/travelRoute/“ + fileName);

} catch (IllegalStateException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

if (Tools.isEmpty(entity.getId())){

entity.setId(Tools.getUUID());

travelRouteService.save(entity);

}else{

travelRouteService.update(entity);

} catch (Exception e) {

e.printStackTrace();

return REDIRECT+”/manager/travelRouteList”;

@RequestMapping(“/travelRouteDelete”)

public String travelRouteDelete(String id){

if(Tools.notEmpty(id)){

try {

travelRouteService.deleteByid(id);

}catch (Exception e){

e.printStackTrace();

return REDIRECT+”/manager/travelRouteList”;


项目链接:
https://javayms.github.io?id=071125140706201rr
https://javayms.pages.dev?id=071125140706201rr