基于springboot+vue的学生读书笔记共享平台系统(前后端分离)

博主主页猫头鹰源码

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

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

文末联系获取

项目背景:

计算机的普及和互联网时代的到来使信息的发布和传播更加方便快捷。用户可以通过计算机上的浏览器访问多个应用系统,从中获取一些可以满足用户需求的管理系统。网站系统有时更像是一个大型"展示平台",用户可以选择所需的信息进入系统查看首页、笔记分享、交流信息、个人中心、后台管理。

系统所要实现的功能分析,对于现在网络方便的管理,据数据调查显示,相比过去增长较快,用户通过网上登录的方式已经形成了一种依赖,不管需要什么信息内容,直接上网查找,参考比较大,对读书笔记共享平台的类型和特点的内容信息有了详细的了解,让用户更有针对性的选择。这也给用户带来非常大的方便,用户可以不用像传统的方式进行查看信息,这样不仅耽误自己的时间,而且比对过程比较单一,所以读书笔记共享平台的开发不仅仅是能满足用户的需求,还能提高管理员的工作效率,减少原有不必要的工作量。

功能介绍:

读书笔记共享平台,主要包括管理员、用户二个权限角色,对于用户角色不同,所使用的功能模块相应不同。

系统包含技术:

后端:springboot,mybatis

前端:element-ui、js、css等

开发工具:idea/vscode

数据库:mysql 5.7

JDK版本:jdk1.8

部分截图说明:

登录进前台首页信息管理可以查看首页、笔记分享、交流信息、个人中心、后台管理等内容。

登录、用户注册,在用户注册页面可以填写用户名、姓名、性别、头像、手机、邮箱、兴趣标签等信息进行注册。

笔记分享,在笔记分享页面通过填写笔记名称、笔记类型、笔记标签、笔记图片、分享日期、用户名、邮箱、审核回复、审核状态等信息进行搜索、添加。

交流互动,在交流互动页面通过填写帖子标题、用户名、状态、操作等信息进行公开、私人操作。

管理员通过点击后台管理,进入页面可以输入用户名、密码、角色进行登录相对应操作。

用户管理:管理员通过在用户管理进入页面可以查看用户名、姓名、性别、头像、手机、邮箱、兴趣标签等并进行详情、删除、修改操作。

笔记分享管理:管理员在通过笔记分享管理进入页面可以查看笔记名称、笔记类型、笔记标签、笔记图片、分享日期、用户名、邮箱、审核回复、审核状态等信息,并进行详情、删除、修改操作。

公告信息:管理员通过公告信息页面可以查看索引、标题、简介、图片、操作等信息,并进行详情、删除、修改操作。

部分代码:

/**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ForumEntity forum,
		HttpServletRequest request){
if(!request.getSession().getAttribute("role").toString().equals("管理员")) {
    		forum.setUserid((Long)request.getSession().getAttribute("userId"));
    	}
EntityWrapper<ForumEntity> ew = new EntityWrapper<ForumEntity>();
		PageUtils page = forumService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, forum), params), params));

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

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

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(ForumEntity forum){
        EntityWrapper< ForumEntity> ew = new EntityWrapper< ForumEntity>();
 		ew.allEq(MPUtil.allEQMapPre( forum, "forum")); 
		ForumView forumView =  forumService.selectView(ew);
		return R.ok("查询交流互动成功").put("data", forumView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        ForumEntity forum = forumService.selectById(id);
        return R.ok().put("data", forum);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        ForumEntity forum = forumService.selectById(id);
        return R.ok().put("data", forum);
    }
    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody ForumEntity forum, HttpServletRequest request){
    	forum.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(forum);

 forumService.insert(forum);
        return R.ok();
    }
 /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody ForumEntity forum, HttpServletRequest request){
    	forum.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(forum);
 forumService.insert(forum);
        return R.ok();
    }
    /**
     * 修改
     */
    @RequestMapping("/update")
    //@Transactional
    public R update(@RequestBody ForumEntity forum, HttpServletRequest request){
        //ValidatorUtils.validateEntity(forum);
        forumService.updateById(forum);//全部更新
        return R.ok();
    }

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

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

相关推荐
GIS开发特训营5 分钟前
Vue零基础教程|从前端框架到GIS开发系列课程(七)响应式系统介绍
前端·vue.js·前端框架·gis开发·webgis·三维gis
禁默24 分钟前
深入浅出:AWT的基本组件及其应用
java·开发语言·界面编程
Cachel wood31 分钟前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架
Code哈哈笑34 分钟前
【Java 学习】深度剖析Java多态:从向上转型到向下转型,解锁动态绑定的奥秘,让代码更优雅灵活
java·开发语言·学习
gb421528736 分钟前
springboot中Jackson库和jsonpath库的区别和联系。
java·spring boot·后端
程序猿进阶37 分钟前
深入解析 Spring WebFlux:原理与应用
java·开发语言·后端·spring·面试·架构·springboot
zfoo-framework1 小时前
【jenkins插件】
java
风_流沙1 小时前
java 对ElasticSearch数据库操作封装工具类(对你是否适用嘞)
java·数据库·elasticsearch
颜淡慕潇1 小时前
【K8S问题系列 |19 】如何解决 Pod 无法挂载 PVC问题
后端·云原生·容器·kubernetes