基于javaweb+mysql的ssm+maven酒店房屋预定系统(java+ssm+jsp+mysql+maven)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SSM+Maven酒店房屋预定系统(java+ssm+jsp+mysql+maven)
一、项目简述
功能包括: 前台:系统首页,酒店介绍,系统公告,客房信息,客房类型,用 户预等等。 用户:注册登陆修改我的信息客房预订等等。 管理员修改登录密码,添加客房,会员信息管理等等。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等。
return 1;
return -1;
});
if (hotels.size()>=4){
List newList=hotels.subList(0,3);
model.addAttribute("scenics",newList);
System.out.println("个数:"+newList.size());
}else {
model.addAttribute("scenics",hotels);
System.out.println("个数2:"+hotels.size());
return "page/product::table_refresh";
订单管理控制层:
/**
public Result judgeHotelStar(Long id,String start){
Hotel scenic = hotelService.findById(id);
if (scenic!=null){
int valuestar = (Integer.valueOf(start)+Integer.valueOf(scenic.getStar()))/2;
scenic.setStar(valuestar);
hotelDao.save(scenic);
System.out.println("数据不为空!");
return new Result(true,1,"","");
}else {
System.out.println("数据为空!");
return new Result(false,0,"","");
/**
* 查询单个景点
* @param model
System.out.println("数据为空!");
return new Result(false,0,"","");
/**
* 查询单个景点
* @param model
* @param id
* @return
*/
@RequestMapping("/oneAttr")
public String One_attr(Model model,Long id){
Scenic scenic=scenicService.findById(id);
model.addAttribute("oneAttr",scenic);
return "page/product";
public String One_attr(Model model,Long id){
Scenic scenic=scenicService.findById(id);
model.addAttribute("oneAttr",scenic);
return "page/product";
/**
* 景点模糊查询分页
* @param model
* @param start
* @param limit
* @param search_key
* @return
*/
@RequestMapping("/search_attrs")
*/
@RequestMapping(value="/logout",method=RequestMethod.GET)
public void logout(HttpServletRequest request,HttpServletResponse response) throws IOException {
request.getSession().setAttribute("user", null);
response.sendRedirect(request.getContextPath() + "/dist/view");
景点星级控制层:
/**
*/
@Controller
@CrossOrigin
@ResponseBody
@RequestMapping(value="/{id}",method= RequestMethod.PUT)
public Result update(User user, @PathVariable Long id ){
User oldUser=userService.findById(id);
user.setId(id);
user.setPassword(oldUser.getPassword());
userService.update(user);
return new Result(true,StatusCode.OK,"修改成功");
/**
* 修改
Page<Scenic> page=scenicDao.findAll(specification,pageable);
model.addAttribute("name",search_key);
model.addAttribute("attrs",page);
model.addAttribute("number",page.getNumber());
model.addAttribute("numberOfElements",page.getNumberOfElements());
model.addAttribute("size",page.getSize());
model.addAttribute("totalElements",page.getTotalElements());
model.addAttribute("totalPages",page.getTotalPages());
model.addAttribute("first",page.isFirst());
model.addAttribute("last",page.isLast());
return "page/travel";
@RequestMapping("/local")
public String localRefresh(Model model,Long id) {
* @return
*/
@RequestMapping(value = "/checkPhone",method = RequestMethod.POST)
@ResponseBody
public Result checkPhone(User user){
String phone = user.getMobile();
if(!StringUtil.isMobile(phone)){
return new Result(false,StatusCode.ERROR,"请填写正确的手机号!");
User userphone= userService.findByMobile(phone);
if (userphone == null){
return new Result(true,StatusCode.OK,"该手机号可以注册");
return new Result(false,StatusCode.ERROR,"该手机号已经被注册");
/**
if (userphone == null){
return new Result(true,StatusCode.OK,"该手机号可以注册");
return new Result(false,StatusCode.ERROR,"该手机号已经被注册");
/**
* 邮箱验证
* @param user
* @return
*/
@RequestMapping(value = "/email",method = RequestMethod.POST)
@ResponseBody
public Result findemail(User user){
String email = user.getEmail();
if(!StringUtil.emailFormat(email)){
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
public Result findById(@PathVariable Long id) {
return new Result(true, StatusCode.OK, "查询成功", userService.findById(id));
/**
* 分页+多条件查询
* @param searchMap 查询条件封装
* @param page 页码
* @param size 页大小
* @return 分页结果
*/
@RequestMapping(value="/search/{page}/{size}",method=RequestMethod.POST)
public Result findSearch(@RequestBody Map searchMap , @PathVariable int page, @PathVariable int size){
Page<User> pageList = userService.findSearch(searchMap, page, size);
* @return
*/
@ResponseBody
@RequestMapping(value = "/list",method= RequestMethod.GET)
public Result findAll(){
List<Orders> all = ordersService.findAll();
return new Result(true, StatusCode.OK,"查询成功",all,all.size());
/**
* 查询全部订单
* @return
*/
return new Result(true,StatusCode.OK,"修改成功");
/**
* 修改
* @param user
*/
@RequestMapping(value="/change",method= RequestMethod.POST,consumes = "application/json")
public Result update(@RequestBody User user, HttpSession session){
User us= (User) session.getAttribute("user");
user.setId(us.getId());
user.setPassword(us.getPassword());
userService.update(user);
* 查询全部订单
* @return
*/
@ResponseBody
@RequestMapping(value = "/allorders",method = RequestMethod.POST)
public String findAllOrders(HttpSession session, Model model) throws ParseException {
User user= (User) session.getAttribute("user");
model.addAttribute("orders",ordersService.findOrders(user.getId().toString()));
return "index_header::table_refresh";
/**
* 查询全部订单
* @return
Long id = scenic.getId();
Scenic newScenic = scenicService.findById(id);
if(newScenic==null){
return new Result(false,StatusCode.ERROR,"未找到该景点!");
Integer totalStar = newScenic.getStart();
Integer currentStar = scenic.getStart();
if(currentStar<0){
return new Result(false,StatusCode.ERROR,"请选择评分!");
Integer commentCount = newScenic.getCommentCount();
commentCount=commentCount+1;
totalStar=currentStar+totalStar;
int avgStar = totalStar / commentCount;
return new Result(true,StatusCode.OK,"该邮箱可以注册");
return new Result(false,StatusCode.ERROR,"该邮箱已经被注册");
/**
* 用户登录
* @param loginMap
* @return
*/
@ResponseBody
@RequestMapping(value="/login",method=RequestMethod.POST)
public Result login(@RequestParam Map<String,String> loginMap,HttpServletRequest request){
String mobile = loginMap.get("login");
if (StringUtil.isMobile(mobile)){
*/
@ResponseBody
@PostMapping("/travelOrderStar")
public Result travelOrderStar(Scenic scenic,@RequestParam("orderId")Long orderId){
Long id = scenic.getId();
Scenic newScenic = scenicService.findById(id);
if(newScenic==null){
return new Result(false,StatusCode.ERROR,"未找到该景点!");
Integer totalStar = newScenic.getStart();
Integer currentStar = scenic.getStart();
public List<HotelOrders> findAllOrderHotel(HttpSession session){
User user= (User) session.getAttribute("user");
List<HotelOrders> hotel_orders=hotel_ordersService.hotel_orders(user.getId());
return hotel_orders;
/**
* 根据ID查询
* @param id ID
* @return
*/
@ResponseBody
@RequestMapping(value="/{id}",method= RequestMethod.GET)
public Result findById(@PathVariable Long id){