博主介绍: ✌全网粉丝30W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌
🍅 文末获取源码联系 🍅
👇🏻 精彩专栏 推荐订阅 👇🏻 不然下次找不到哟
Java项目精品实战案例《100套》
Java微信小程序项目实战《100套》

系统介绍:

互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对房屋出租信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,采用共享客栈管理系统可以有效管理,使信息管理能够更加科学和规范。

共享客栈管理系统在Eclipse环境中,使用Java语言进行编码,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,本系统实现房屋管理,合同文件上传与下载,房屋租房与续租,房屋出租管理等功能。

总之,共享客栈管理系统集中管理信息,有着保密性强,效率高,存储空间大,成本低等诸多优点。它可以降低信息管理成本,实现信息管理计算机化。

在前面分析的管理员功能的基础上,进行接下来的设计工作,最终展示设计的管理员结构图(见下图)。管理员管理房屋,房屋出租,管理房东,管理合同,管理用户等信息。

图4.1 管理员功能结构图

在前面分析的房东功能的基础上,进行接下来的设计工作,最终展示设计的房东结构图(见下图)。房东管理房屋,管理房屋出租,管理合同等信息。

图4.2 房东功能结构图

在前面分析的用户功能的基础上,进行接下来的设计工作,最终展示设计的用户结构图(见下图)。用户在线租房,评价房屋,下载合同,查看租房信息。

功能截图:

5.1.1 房东管理

管理员进入指定功能操作区之后可以管理房东。其页面见下图。管理员可以增删改查房东资料。

图5.1 房东管理页面

5.1.2 用户管理

管理员进入指定功能操作区之后可以管理用户。其页面见下图。管理员增删改查用户资料。

图5.2 用户管理页面

5.1.3 合同管理

管理员进入指定功能操作区之后可以管理合同。其页面见下图。管理员在本页面可以增删改查合同信息,可以实现合同文件下载功能。

图5.3 合同管理页面

5.1.4 房屋评论管理

管理员进入指定功能操作区之后可以管理房屋评论信息。其页面见下图。房屋评论信息是用户发布的信息,管理员查看评论内容,可以回复用户评论。

图5.4 房屋评论管理页面

5.1.5 房屋管理

管理员进入指定功能操作区之后可以管理房屋信息。其页面见下图。管理员增删改查房屋信息,查看房屋状态,房屋所属房东以及房东的联系电话。

图5.5房屋管理页面

5.2 房东功能实现

5.2.1 房屋出租管理

房东进入指定功能操作区之后可以管理房屋出租信息。其页面见下图。房东对已经出租的房屋进行租房取消或者续租操作。

图5.6 房屋出租管理页面

5.2.2 房屋管理

房东进入指定功能操作区之后可以管理房屋。其页面见下图。房东管理房屋信息,包括房屋信息登记,修改,查询等操作。

图5.7 房屋管理页面

5.2.3 合同管理

房东进入指定功能操作区之后可以管理合同。其页面见下图。房东登记合同信息时,需要上传合同文件,房东在本页面内对已有的合同信息进行维护。

图5.8 合同管理页面

5.3 用户功能实现

5.3.1 客栈信息

用户进入指定功能操作区之后可以查看客栈信息。其页面见下图。用户查看房屋介绍,可以选择立即租房,也能评价本页面显示的房屋。

图5.9 客栈信息页面

5.3.2 新闻资讯

用户进入指定功能操作区之后可以查看新闻资讯。其页面见下图。用户查看各种新闻的标题以及详细内容。

图5.10 新闻资讯页面

5.3.3 房屋信息

用户进入个人后台在房屋信息页面也能进行租房。其页面见下图。用户点击租房按钮设置租房日期即可成功租房。

图5.11 房屋信息页面

5.3.4 租房信息

用户进入个人后台在租房信息页面可以取消租房。其页面见下图。用户查询租房信息,可以取消租房。

图5.12 租房信息页面

代码实现:



/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
    
    @Autowired
    private UserService userService;
    
    @Autowired
    private TokenService tokenService;

    /**
     * 登录
     */
    @IgnoreAuth
    @PostMapping(value = "/login")
    public R login(String username, String password, String role, HttpServletRequest request) {
        UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
        if(user != null){
            if(!user.getRole().equals(role)){
                return R.error("权限不正常");
            }
            if(user==null || !user.getPassword().equals(password)) {
                return R.error("账号或密码不正确");
            }
            String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
            return R.ok().put("token", token);
        }else{
            return R.error("账号或密码或权限不对");
        }

    }
    
    /**
     * 注册
     */
    @IgnoreAuth
    @PostMapping(value = "/register")
    public R register(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
        if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
            return R.error("用户已存在");
        }
        userService.insert(user);
        return R.ok();
    }

    /**
     * 退出
     */
    @GetMapping(value = "logout")
    public R logout(HttpServletRequest request) {
        request.getSession().invalidate();
        return R.ok("退出成功");
    }
    
    /**
     * 密码重置
     */
    @IgnoreAuth
    @RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
        UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
        if(user==null) {
            return R.error("账号不存在");
        }
        user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
    
    /**
     * 列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,UserEntity user){
        EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
        PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
        return R.ok().put("data", page);
    }

    /**
     * 信息
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }
    
    /**
     * 获取用户的session用户信息
     */
    @RequestMapping("/session")
    public R getCurrUser(HttpServletRequest request){
        Integer id = (Integer)request.getSession().getAttribute("userId");
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }

    /**
     * 保存
     */
    @PostMapping("/save")
    public R save(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
        if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
            return R.error("用户已存在");
        }
        userService.insert(user);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
        userService.updateById(user);//全部更新
        return R.ok();
    }

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Integer[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
}

论文参考:

第1章 绪论1

1.1 课题背景1

1.2 课题意义1

1.3 研究内容2

第2章 开发环境与技术3

2.1 MYSQL数据库3

2.2 JSP技术3

2.3 SSM框架4

第3章 系统分析5

3.1 可行性分析5

3.1.1 技术可行性5

3.1.2 经济可行性5

3.1.3 操作可行性5

3.2 系统流程6

3.2.1 操作流程6

3.2.2 登录流程6

3.2.3 删除信息流程7

3.2.4 添加信息流程8

3.3 性能需求8

3.4 功能需求9

第4章 系统设计13

4.1 设计原则13

4.2 功能结构设计13

4.3 数据库设计15

4.3.1 数据库概念设计15

4.3.2 数据库物理设计18

第5章 系统实现21

5.1 管理员功能实现21

5.1.1 房东管理21

5.1.2 用户管理21

5.1.3 合同管理22

5.1.4 房屋评论管理22

5.1.5 房屋管理23

5.2 房东功能实现23

5.2.1 房屋出租管理23

5.2.2 房屋管理24

5.2.3 合同管理24

5.3 用户功能实现25

5.3.1 客栈信息25

5.3.2 新闻资讯25

5.3.3 房屋信息26

5.3.4 租房信息26

第6章 系统测试28

6.1 功能测试28

6.1.1 登录功能测试28

6.1.2 修改密码功能测试29

6.2 测试结果29

结 论30

致 谢31

参考文献32

获取源码:
大家 点赞、收藏、关注、评 啦 、 查看 👇🏻 获取联系方式 👇🏻
精彩专栏 推荐订阅 下方专栏 👇🏻
Java项目精品实战案例《100套》
Java微信小程序项目实战《100套》
Logo

更多推荐