# community **Repository Path**: iAnimo/community ## Basic Information - **Project Name**: community - **Description**: 仿牛客网网站项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: develop - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-07-09 - **Last Updated**: 2022-07-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # community ## 介绍 仿牛客网网站项目 ## 技术栈 - SpringBoot + Spring MVC + Mybatis : 开发社区首页及核心功能 - Spring Email + Interceptor : 注册、登录、退出、登录状态、账号设置、授权、敏感词过滤 - AOP + Advice + Transaction : 首页、帖子发布、用户评论、用户私信、异常、日志记录 - Redis : 点赞、关注、统计、缓存 - Kafka : 系统通知 - Elasticsearch : 全文搜索 - Spring Security : 权限控制、帖子的置顶、加精和删除 - Quartz、Caffeine : 帖子排行、文件上传、服务器缓存 ## 项目要点 - 登录与注册功能:使用 kaptcha 生成验证码,再使用邮件完成用户注册。 - 验证码:Redis优化验证码的保存,解决分布式session问题,使用拦截器(Interceptor)拦截用户请求,将用户信息绑定在ThreadLocal上。 - 敏感词过滤:构建Trie数据结构,实现对发表帖子评论的敏感词过滤。 - 帖子评论:利用AJAX支持对帖子评论,也支持对评论进行回复。 - 日志记录:利用AOP对service的业务代码实现日志记录。 - 点赞与关注功能:利用Redis的zset并结合Redis实现点赞关注的功能。 - 系统通知:点赞关注后的系统通知,实时性不需要特别高,使用kafka实现异步的发送系统通知。 - 搜索及高亮功能:使用ElasticSearch实现对帖子的搜索功能,以及结果的高亮显示。