1 Star 5 Fork 2

有点LAN/bbs

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

bbs

介绍

基于springboot的论坛网站

软件架构

模块一:首页

功能点1--查询帖子

知识点:Spring,SpringMVC,Mybatis,的基础知识,还有maven项目的构建,日志的记录,git的设置

功能点2--帖子的分页显示

知识点:thymeleaf模板引擎的使用,数据库查询分页

模块二:注册

功能点3--发送邮件功能

知识点:STMP服务的开启,使用email模拟邮件发送的过程

功能点4--开发注册功能

知识点:html代码复用,密码加密,激活账号,错误提示

模块三:登录

功能点5--会话管理

知识点:http,cookie,session的概念,生成和使用cookie,session,设置cookie的生效范围与生命周期, 分布式为什么不使用session?在分布式中使用粘性session,同步session,共享session的概念与缺点,将session存进数据库 集群的缺点,

功能点6--生成验证码

知识点:编写kaptcha配置类,生成随机字符,生成图片,将图片传给浏览器,页面上的验证码刷新

功能点7--登录

知识点:使用注解写SQL,验证信息,成功和失败登录的处理

功能点8--账号退出

知识点:登录凭证失效,跳转

功能点9--显示登录信息

知识点:定义拦截器,配置拦截器,ThreadLocal在该功能中的作用(持有用户信息,用于替代session对象)。拦截器应用 { a.请求时开始查询登录用户 b.在本次请求中持有用户数据 c.在模板视图上显示用户数据 d.在请求结束时清理用户数据 }

功能点10--检查登录状态

知识点:使用拦截器(a.在方法前标注自定义注解 b.拦截所有请求,只处理带有该注解的方法),自定义注解( 元注解@target,@Rentention,@Document,@Inherited读取注解:Method.getDeclareAnnotations,Method.getAnnotation(Class)


模块三:账号设置

功能点11--上传文件

知识点:上传头像(MultipartFile),判断图片是否格式正确,生成随机文件名并保存(transferTo), 更新当前用户的头像信息,获取头像信息并更新页面

模块三:社区核心功能

功能点12--过滤敏感词

知识点:前缀树,敏感词过滤器

功能点13--发布帖子

知识点:Ajax,Jquery

功能点14--帖子详情

知识点:关联查询实现的两种方式

功能点15--事务管理

知识点:事务的概念,事务的ACID特性,事务的隔离性级别,常见的并发异常(a.第一类丢失更新 b.第二类丢失更新 c.脏读 d.不可重读 e.幻读)。 悲观锁,乐观锁,spring事务管理(声明式事务,编程式事务),传播机制

功能点16--显示评论

知识点:组件重用,Model取值

功能点17--添加评论

知识点:数据层、业务层、表现层的处理,事务的应用

功能点18--私信列表

知识点:私信列表,私信详情

功能点19--发送列表

知识点:发送私信,设置私信,

功能点20--统一异常处理

知识点:@ControllerAdvice,@ExceptionHandler,@ModelAttribute,@DataBinder

功能点21--统一日志处理

知识点:AOP思想,三种织入时间,Target,JoinPoint(切点),Weaving, Pointcut(声明织入对象及其位置),Advice(具体逻辑),AOP的实现,SpringAOP的特点,代理方式( Java动态代理,CGLib动态代理),RequestContentHolder方法调用request对象(不通过传参) 注解:@Aspect,@Pointcut,@Before,@After,@AfterReturning,@Afterthrowing,@Around

模块四:Redis

特点,优点,应用场景(缓存,排行榜,计数器,社交网络的点赞等,消息队列), 常用命令:flushdb,get,set,incr,decr,hset,hget,lpush,llen,lindex,lrange,rpop,sadd, scard(统计集合中的元素),spop(可以实现抽奖),zadd(添加有序集合),zscore,zrank,zrange,keys *, type,exists,del,expire(使key失效,即删除),

功能点22--Redis入门

知识点:@ControllerAdvice,@ExceptionHandler,@ModelAttribute,@DataBinder

功能点23--spring整合redis

知识点:配置,Redisconfig配置类的撰写,key,value的序列化方式, Java访问Redis(redisTemplate.opsForValue(),opsForHash(),opsForList(),opsForSet(),opsForZset) String,Hash,Set,List,Sortedsets,Key多次访问一个key,编程式事务(multi()开启一个事务,exec()结束一个事务)

功能点24--点赞

知识点:点赞逻辑,点赞信息存进redis,统计点赞数量,显示点赞状态。

安装教程

  1. xxxx
  2. xxxx
  3. xxxx

使用说明

  1. xxxx
  2. xxxx
  3. xxxx

参与贡献

  1. Fork 本仓库
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

码云特技

  1. 使用 Readme_XXX.md 来支持不同的语言,例如 Readme_en.md, Readme_zh.md
  2. 码云官方博客 blog.gitee.com
  3. 你可以 https://gitee.com/explore 这个地址来了解码云上的优秀开源项目
  4. GVP 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
  5. 码云官方提供的使用手册 https://gitee.com/help
  6. 码云封面人物是一档用来展示码云会员风采的栏目 https://gitee.com/gitee-stars/

空文件

简介

基于springboot的论坛网站 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/codingRoad/bbs.git
git@gitee.com:codingRoad/bbs.git
codingRoad
bbs
bbs
master

搜索帮助