基于springboot+vue的大学生租房平台系统(前后端分离)

发布时间:2024年01月22日

博主主页猫头鹰源码

博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战

主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询

文末联系获取

项目背景:

互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。所以各行业,尤其是规模较大的企业和学校等都开始借助互联网和软件工具管理信息,传播信息,共享信息等等,以此可以增强自身实力,提高在同行业当中的竞争能力,并从各种激烈的竞争中获取发展的机会。针对大学生租房信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,经过分析和考虑,在目前的情况下,可以引进一款大学生租房平台这样的现代化管理工具,这个工具就是解决上述问题的最好的解决方案。它不仅可以实时完成信息处理,还缩短大学生租房信息管理流程,使其系统化和规范化。同时还可以减少工作量,节约大学生租房信息管理需要的人力和资金。所以大学生租房平台是信息管理环节中不可缺少的工具,它对管理者来说非常重要。

课题意义:

现如今,信息种类变得越来越多,信息的容量也变得越来越大,这就是信息时代的标志。近些年,计算机科学发展得也越来越快,而且软件开发技术也越来越成熟,因此,在生活中的各个领域,只要存在信息管理,几乎都有计算机的影子,可以说很多行业都采用计算机的方式管理信息。信息计算机化处理相比手工操作,有着保密性强,效率高,存储空间大,成本低等诸多优点。针对大学生租房信息管理,采用大学生租房平台可以有效管理,使信息管理能够更加科学和规范。

总之,在实际中使用大学生租房平台,其意义如下:

第一点:大学生租房平台的实际运用,可以帮助管理人员在短时间内完成信息处理工作;

第二点:通过系统页面的合理排版布局,可以更加直观的展示系统的内容,并且使用者可以随时阅读页面信息,随时操作系统提供的功能;

第三点:可以实现信息管理计算机化;

第四点:可以降低信息管理成本;

功能介绍:

?

?

系统包含技术:

后端:springboot,mybatis
前端:element-ui、js、css等
开发工具:idea/vscode
数据库:mysql 5.7
JDK版本:jdk1.8

部分截图说明:

用户进入前台之后可以查看房源信息。其页面见下图。本页面显示所有要出租的房源信息,用户可以根据房源名称,户型,出租类型等字段查询所需房源信息。

用户进入前台之后可以查看房源详细信息。其页面见下图。用户点击房源的标题即可查看其相关介绍。用户可以收藏房源,或在当前页面点击租房按钮进行租房。

用户进入前台之后可以对需要的房源提交租房信息。其页面见下图。用户对需要的房源进行租房,提交租房信息时要设置申请日期。

用户进入后台功能操作区之后可以查看订单信息。其页面见下图。用户支付未支付的租房订单,查看租房订单是否通过房东审核。

房东进入指定功能操作区之后可以管理信息审批信息。其页面见下图。房东查看信息审批信息是否通过审核,只有通过审核之后,房东才可以发布房源信息

房东进入指定功能操作区之后可以管理房源信息。其页面见下图。房东发布的房源信息在进行正式出租前,也需要通过管理员的审核。

部分代码:

/**
	 * 登录
	 */
	@IgnoreAuth
	@RequestMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		FangdongEntity user = fangdongService.selectOne(new EntityWrapper<FangdongEntity>().eq("fangdongzhanghao", username));
		if(user==null || !user.getMima().equals(password)) {
			return R.error("账号或密码不正确");
		}
		
		String token = tokenService.generateToken(user.getId(), username,"fangdong",  "房东" );
		return R.ok().put("token", token);
	}
	
	/**
     * 注册
     */
	@IgnoreAuth
    @RequestMapping("/register")
    public R register(@RequestBody FangdongEntity fangdong){
    	//ValidatorUtils.validateEntity(fangdong);
    	FangdongEntity user = fangdongService.selectOne(new EntityWrapper<FangdongEntity>().eq("fangdongzhanghao", fangdong.getFangdongzhanghao()));
		if(user!=null) {
			return R.error("注册用户已存在");
		}
		Long uId = new Date().getTime();
		fangdong.setId(uId);
        fangdongService.insert(fangdong);
        return R.ok();
    }
	
	/**
	 * 退出
	 */
	@RequestMapping("/logout")
	public R logout(HttpServletRequest request) {
		request.getSession().invalidate();
		return R.ok("退出成功");
	}
	
	/**
     * 获取用户的session用户信息
     */
    @RequestMapping("/session")
    public R getCurrUser(HttpServletRequest request){
    	Long id = (Long)request.getSession().getAttribute("userId");
        FangdongEntity user = fangdongService.selectById(id);
        return R.ok().put("data", user);
    }
    
    /**
     * 密码重置
     */
    @IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	FangdongEntity user = fangdongService.selectOne(new EntityWrapper<FangdongEntity>().eq("fangdongzhanghao", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
        user.setMima("123456");
        fangdongService.updateById(user);
        return R.ok("密码已重置为:123456");
    }


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,FangdongEntity fangdong,
		HttpServletRequest request){
        EntityWrapper<FangdongEntity> ew = new EntityWrapper<FangdongEntity>();
		PageUtils page = fangdongService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, fangdong), params), params));

        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,FangdongEntity fangdong, 
		HttpServletRequest request){
        EntityWrapper<FangdongEntity> ew = new EntityWrapper<FangdongEntity>();
		PageUtils page = fangdongService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, fangdong), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( FangdongEntity fangdong){
       	EntityWrapper<FangdongEntity> ew = new EntityWrapper<FangdongEntity>();
      	ew.allEq(MPUtil.allEQMapPre( fangdong, "fangdong")); 
        return R.ok().put("data", fangdongService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(FangdongEntity fangdong){
        EntityWrapper< FangdongEntity> ew = new EntityWrapper< FangdongEntity>();
 		ew.allEq(MPUtil.allEQMapPre( fangdong, "fangdong")); 
		FangdongView fangdongView =  fangdongService.selectView(ew);
		return R.ok("查询房东成功").put("data", fangdongView);
    }

以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。

好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~??

文章来源:https://blog.csdn.net/mtyedu/article/details/135662920
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。