基于javaweb的酒店管理系统(java+ssm+jsp+bootstrap+echarts+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的酒店管理系统(java+SSM+JSP+bootstrap+echarts+mysql)
项目介绍
本项目为基于ssm+mysql实现的JavaWeb酒店管理系统; 主要功能包括:
管理员登录,收入统计,客房管理,商品管理,客房预订,住宿登记,财务统计,旅客管理,接待对象管理等功能。
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本; 6.是否Maven项目:否;
技术栈
- 后端:Spring+SpringMVC+Mybatis 2. 前端:JSP+CSS+JavaScript+jquery+bootstrap+echarts
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录
后台房间管理控制层:
@RequestMapping(“/admin/room”)
@RestController
public class RoomAdminController {
@Autowired
private RoomService roomService;
/**
-
查询房间列表
-
@param roomVo
-
@return
*/
@RequestMapping(“/list”)
private DataGridViewResult list(RoomVo roomVo){
//设置分页信息
PageHelper.startPage(roomVo.getPage(),roomVo.getLimit());
//查询房型列表
List roomTypeList = roomService.findRoomListByPage(roomVo);
//创建分页对象
PageInfo pageInfo = new PageInfo(roomTypeList);
//返回数据
return new DataGridViewResult(pageInfo.getTotal(),pageInfo.getList());
/**
-
添加房间
-
@param room
-
@return
*/
@RequestMapping(“/addRoom”)
public String addRoom(Room room){
Map<String,Object> map = new HashMap<String,Object>();
if(roomService.addRoom(room)>0){
map.put(SystemConstant.SUCCESS,true);//成功
map.put(SystemConstant.MESSAGE,“添加成功”);
}else{
map.put(SystemConstant.SUCCESS,false);//失败
map.put(SystemConstant.MESSAGE,“添加失败”);
return JSON.toJSONString(map);
/**
-
修改房间
-
@param room
-
@return
*/
@RequestMapping(“/updateRoom”)
public String updateRoom(Room room){
Map<String,Object> map = new HashMap<String,Object>();
if(roomService.updateRoom(room)>0){
map.put(SystemConstant.SUCCESS,true);//成功
map.put(SystemConstant.MESSAGE,“修改成功”);
}else{
map.put(SystemConstant.SUCCESS,false);//失败
map.put(SystemConstant.MESSAGE,“修改失败”);
return JSON.toJSONString(map);
/**
-
删除房间
-
@param id
-
@return
*/
@RequestMapping(“/deleteById”)
public String deleteById(Integer id){
Map<String,Object> map = new HashMap<String,Object>();
if(roomService.deleteById(id)>0){
map.put(SystemConstant.SUCCESS,true);//成功
map.put(SystemConstant.MESSAGE,“删除成功”);
}else{
map.put(SystemConstant.SUCCESS,false);//失败
map.put(SystemConstant.MESSAGE,“删除失败”);
return JSON.toJSONString(map);
用户管理控制层:
@Controller
@RequestMapping(“/user”)
public class UserController {
@Autowired
private UserService userService;
/**
-
注册
-
@param user
-
@return
*/
@RequestMapping(“/register”)
@ResponseBody
public String register(User user){
Map<String,Object> map = new HashMap<String,Object>();
//调用注册的方法
if(userService.addUser(user)>0){
map.put(SystemConstant.SUCCESS,true);
map.put(SystemConstant.MESSAGE,“恭喜你,注册成功!”);
}else{
map.put(SystemConstant.SUCCESS,false);
map.put(SystemConstant.MESSAGE,“很遗憾,注册失败,请重新尝试!”);
return JSON.toJSONString(map);
/**
-
登录
-
@param
-
@return
*/
@RequestMapping(“/login”)
@ResponseBody
public String login(String loginName, String password, HttpSession Session){
Map<String,Object> map = new HashMap<String,Object>();
//调用注册的方法
User loginUser = userService.login(loginName, password);
//登录判断
if(loginUser!=null){
//将密码清空
loginUser.setPassword(null);
map.put(SystemConstant.SUCCESS,true);
//保存登录用户信息到session中
Session.setAttribute(SystemConstant.FRONT_LOGIN_USER,loginUser);
}else{
map.put(SystemConstant.SUCCESS,false);
map.put(SystemConstant.MESSAGE,“用户名或密码错误,请重新登录!”);
return JSON.toJSONString(map);
/**
-
根据用户名查询用户信息
-
@param loginName
-
@return
*/
@RequestMapping(“/checkName”)
@ResponseBody
public String checkName(String loginName){
Map<String,Object> map = new HashMap<String,Object>();
//调用注册的方法
if(userService.findUserByName(loginName)!=null){
map.put(SystemConstant.EXISI,true);
map.put(SystemConstant.MESSAGE,“用户名存在,请重新输入”);
}else{
map.put(SystemConstant.EXISI,false);
return JSON.toJSONString(map);
后台订单管理控制层:
@RestController
@RequestMapping(“/admin/orders”)
public class OrdersAdminController {
@Resource
private OrdersService ordersService;
/**
-
查询订单列表
-
@param ordersVo
-
@return
*/
@RequestMapping(“/list”)
public DataGridViewResult list(OrdersVo ordersVo){
//设置分页信息
PageHelper.startPage(ordersVo.getPage(),ordersVo.getLimit());
//调用分页查询订单列表的方法
List ordersList = ordersService.findOrdersList(ordersVo);
//创建分页对象
PageInfo pageInfo = new PageInfo(ordersList);
//返回数据
return new DataGridViewResult(pageInfo.getTotal(),pageInfo.getList());
/**
-
确认订单
-
@param orders
-
@return
*/
@RequestMapping(“/confirmOrders”)
public String confirmOrders(Orders orders){
Map<String,Object> map = new HashMap<String,Object>();
//将订单状态改成已确认(status=2)
orders.setStatus(2);
//调用修改的方法
if(ordersService.updateOrders(orders)>0){
map.put(SystemConstant.SUCCESS,true);
map.put(SystemConstant.MESSAGE,“订单确认成功”);
}else{
map.put(SystemConstant.SUCCESS,false);
map.put(SystemConstant.MESSAGE,“订单确认失败”);
return JSON.toJSONString(map);
/**
-
批量确认订单
-
@param ids
-
@return
*/
@RequestMapping(“/batchConfirm”)
public String batchConfirm(String ids){
Map<String,Object> map = new HashMap<String,Object>();
int count = 0;
//将字符串拆分成数组
String[] idsStr = ids.split(“,”);
//循环确认
for (int i = 0; i < idsStr.length; i++) {
//创建Orders对象
Orders orders = new Orders();
orders.setStatus(2);//已确认
orders.setId(Integer.valueOf(idsStr[i]));
//调用修改订单的方法
count = ordersService.updateOrders(orders);
//判断受影响行数是否大于0
if(count>0){
map.put(SystemConstant.SUCCESS,true);
map.put(SystemConstant.MESSAGE,“订单确认成功”);
//判断受影响行数是否小于0
if(count<=0){
map.put(SystemConstant.SUCCESS,false);
map.put(SystemConstant.MESSAGE,“订单确认失败”);
return JSON.toJSONString(map);