仿牛客社区项目笔记
文章平均质量分 72
仿牛客社区项目笔记
添砖Java啊
这个作者很懒,什么都没留下…
展开
-
仿牛客社区项目描述
仿牛客社区项目描述1. 权限模块1.1 注册1.2 登录本项目是一个校内互动交流平台,主要涉及模块有权限模块、帖子模块、性能模块、通知模块、搜索模块。主要使用的技术有SpringBoot,SpringMVC,MyBatis,MySQL,Redis,Kafka。权限模块主要实现了注册登录和权限管理等功能。帖子模块主要实现了发帖,评论和私信等功能。性能模块使用Redis实现点赞,关注和网站数据统计等功能。通知模块使用Kafka实现系统通知功能。搜索模块使用Elasticsearch实现帖子搜索功能原创 2022-05-30 11:04:59 · 7140 阅读 · 3 评论 -
仿牛客社区项目笔记
仿牛客社区项目笔记目录:1. 首页模块2. 注册登录模块3. 帖子模块(核心)4. 事务管理(服务于“添加评论”)5. 统一处理异常和日志6. 点赞关注模块(引入Redis)7. 优化登陆模块(使用Redis)8. 构建TB级异步消息系统(引入Kafka)9. 分布式搜索引擎(引入Elasticsearch)10. 构建安全高效的企业服务(引入Spring Security)11. 项目发布与总结...原创 2022-05-26 21:42:44 · 2863 阅读 · 0 评论 -
仿牛客社区项目笔记-项目发布与总结
仿牛客社区项目笔记-项目发布与总结项目发布与总结1. 单元测试项目发布与总结分为。1. 单元测试引入Spring test 起步依赖。保证测试方法的独立性。常用注解有:@BeforeClass:在测试类加载之前执行@AfterClass: 在测试类销毁时执行@Before: 在测试方法执行前执行(创建测试数据)@After: 在测试方法执行后执行(删除测试数据)@Test:测试方法(执行需要测试的方法)...原创 2022-05-24 10:07:10 · 1576 阅读 · 0 评论 -
仿牛客社区项目笔记-构建安全高效的企业服务(引入Spring Security)
仿牛客社区项目笔记-构建安全高效的企业服务(引入Spring Security)构建安全高效的企业服务1. 权限控制构建安全高效的企业服务分为。1. 权限控制引入 spring-boot-starter-security 依赖。在 WebMvcConfig 中将 LoginRequiredInterceptor 拦截器废弃。在 CommunityConstant 中设置:普通用户,管理员和版主的权限常量。在LoginTicketInterceptor 拦截器中进行认证,如果登录凭证有效,就原创 2022-05-15 15:53:25 · 1108 阅读 · 0 评论 -
仿牛客社区项目笔记-分布式搜索引擎(引入Elasticsearch)
仿牛客社区项目笔记-分布式搜索引擎(引入Elasticsearch)1. 分布式搜索引擎1.1 引入Elasticsearch1.2 Spring 整合 Elasticsearch1. 分布式搜索引擎分为。1.1 引入ElasticsearchElasticsearch简介:在 www.elastic.co 下载 Elasticsearch 6.4.3 版本,与 SpringBoot 版本匹配。7.x 版本不兼容。解压缩到磁盘,将 config 中的 elasticsearch.yml 文件中原创 2022-05-08 10:13:16 · 1811 阅读 · 0 评论 -
仿牛客社区项目笔记-构建TB级异步消息系统(引入Kafka)
仿牛客社区项目笔记-构建TB级异步消息系统(引入Kafka)1. 构建TB级异步消息系统1.1 引入Kafka1.2 Spring 整合 Kafka1. 构建TB级异步消息系统分为。1.1 引入Kafka在 Kafka.apach.org 安装 kafka 压缩包,解压缩。更改 config 目录下 zookeeper.properties 和 server.properties 下的 /temp 路径,改为硬盘下路径。Kafka特点:1.2 Spring 整合 Kafka导入 Sp原创 2022-05-02 15:22:17 · 2905 阅读 · 0 评论 -
仿牛客社区项目笔记-优化登陆模块(使用Redis)
仿牛客社区项目笔记-优化登陆模块(使用Redis)1. 优化登陆模块1. 优化登陆模块使用Redis存储验证码,存储登陆凭证已经在 UserService 层重构完成,详情见 仿牛客社区项目笔记-注册登录模块 2.1,2.2,2.7小节。使用Redis缓存用户信息也已经在 UserService 层重构完成。代码为: // 1.优先从缓存中取值 private User getCache(int userId) { String redisKey = RedisKeyU原创 2022-05-01 21:20:20 · 1380 阅读 · 0 评论 -
仿牛客社区项目笔记-点赞关注模块(引入Redis)
仿牛客社区项目笔记-点赞关注模块(引入Redis)1. 点赞关注模块1.1 Redis1.1 点赞1. 点赞关注模块分为点赞。1.1 Redis1.1 点赞原创 2022-04-30 15:51:33 · 2616 阅读 · 0 评论 -
仿牛客社区项目笔记-统一处理异常和日志
仿牛客社区项目笔记-统一处理异常和日志1. 统一处理异常和日志1.1 统一处理异常1.2 统一处理日志1. 统一处理异常和日志分为统一处理异常和统一处理日志。1.1 统一处理异常异常一般最后都返回 Controller 层中。我们需要统一处理 Controller 层中的异常。将 error 文件夹放在 resources 的 templates 路径下,其中包括 404 和 500.html 页面。在 ExceptionAdvice 类中使用 @ControllerAdvice 注解对 Co原创 2022-04-24 10:51:41 · 851 阅读 · 0 评论 -
仿牛客社区项目笔记-事务管理(服务于“添加评论”)
仿牛客社区项目笔记-事务管理(服务于“显示评论”)1. 事务管理1.1 声明式事务1.2 编程式事务1. 事务管理分为声明式事务和编程式事务。1.1 声明式事务在 @Transactional 注解上定义隔离机制和传播机制。当save1()方法中出现错误后,整个方法回滚,插入数据库失败。 // REQUIRED: 支持当前事务(外部事务),如果不存在则创建新事务. // REQUIRES_NEW: 创建一个新事务,并且暂停当前事务(外部事务). // NESTED: 如果当前存在事原创 2022-04-18 16:54:32 · 692 阅读 · 0 评论 -
仿牛客社区项目笔记-帖子模块(核心)
仿牛客社区项目笔记-帖子模块(核心)1. 帖子模块1.1 过滤敏感词1.2 发布帖子1.3 帖子详情1.4 显示评论1.5 添加评论1.6 私信列表1.7 发送私信1. 帖子模块分为 过滤敏感词,发布帖子,帖子详情,显示评论,添加评论,私信列表,发送私信。1.1 过滤敏感词位于 util 包下的 SensitiveFilter 。 略1.2 发布帖子使用 Ajax 在 index 页面发送异步请求(局部刷新)。在 Controller 层返回 Json 数据显示。前提用户已经登录,否则不显示原创 2022-04-17 16:45:27 · 2765 阅读 · 0 评论 -
仿牛客社区项目笔记-注册登录模块
1. 注册模块1.1 注册1.2 激活账号2. 登录模块2.1 生成验证码2.2 登录2.3 显示登录信息2.4 账号设置(修改头像)2.5 账号设置(修改密码)2.6 检查登录状态2.7 退出登录原创 2022-04-16 12:53:16 · 2248 阅读 · 2 评论 -
仿牛客社区项目笔记-首页模块
分为 分页 和 首页显示帖子。分页使用Page封装。首页映射为 “/index” 。原创 2022-04-15 12:41:19 · 2038 阅读 · 0 评论