前言

本次冲刺我主要负责的模块有角色申请权限以及数据库中权限表的规划,在后续还做了对优秀博客的评选。本次项目的付出主要在以上模块,还有一些小的模块(粉丝列表,收藏列表)。整体没有出现困难,在做角色申请中学习到新的知识角色管理(RCAB)

角色申请

    /*** 用户申请角色** @param uid* @param applymsg* @param rolename* @return*/public ResultInfo applyRole(int uid, String applymsg, String rolename) {ResultInfo resultInfo = new ResultInfo();try {//查询该rolename的ridint rid = roleMapper.finRidByRolename(rolename);//是否已经有角色了int isExistY = roleMapper.findIsExistY(uid, rolename);//是否有任在审核的角色int isExistN = roleMapper.findIsExistN(uid, rolename);//存在角色if (isExistY == 1) {resultInfo.setFlag(true);resultInfo.setData("该角色你已经拥有了,不能重复申请");}//角色在审核中if (isExistN == 1) {//返回提示,你还有角色申请在审核中,不可以再次提交resultInfo.setFlag(true);resultInfo.setData("你还有角色在申请中,不可再次申请");}//第一次提交该角色if (isExistY == 0 && isExistN == 0) {roleMapper.addNewRole(uid, applymsg, rid);resultInfo.setFlag(true);resultInfo.setData("申请成功,请等候管理员通过...");}} catch (Exception e) {//手动回滚TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();resultInfo.setFlag(false);resultInfo.setErrorMsg("申请失败");}return resultInfo;}

优秀博客

  /*** 评选优秀博客** @param viewNumber* @param likeNumber* @param collectionNumber* @param commentNumber* @param startTime* @param endTime* @return*/public ResultInfo selectGoodBlog(int viewNumber, int likeNumber, int collectionNumber, int commentNumber, String startTime, String endTime) {ResultInfo resultInfo = new ResultInfo();//删除正在评选的博客jurisdictionMapper.deleteOtherGoodBlog();//查询出符合时间段内发布的博客idList<BlogContest> articleByTime = jurisdictionMapper.findArticleByTime(startTime, endTime);//查询已经被评为博客之星的博客的idList<Long> longs = jurisdictionMapper.selectGoodBlog();for (int i = 0; i < articleByTime.size(); i++) {for (int j = 0; j < longs.size(); j++) {if(longs.get(j).equals(articleByTime.get(i).getArticle_id())) {articleByTime.remove(i);}}}//计算每一篇博客的数据并计算占比值Map<Long, Integer> articleIdAndSumMap = new HashMap<Long, Integer>();for (BlogContest blogContest : articleByTime) {int sum = (blogContest.getArticle_view_count() * viewNumber) +(blogContest.getArticle_comment_count() * commentNumber) +(blogContest.getArticle_like_count() * likeNumber) +(blogContest.getArticle_collection_count() * collectionNumber);//添加数据到maparticleIdAndSumMap.put(blogContest.getArticle_id(), sum);}//根据占比值排序//1:把map转换成entryset,再转换成保存Entry对象的list。List<Map.Entry<Long, Integer>> entrys = new ArrayList<Map.Entry<Long, Integer>>(articleIdAndSumMap.entrySet());//2:调用Collections.sort(list,comparator)方法把Entry-list排序Collections.sort(entrys, new SortClass());List<Long> articleIdList = new ArrayList<Long>();//获取长度if(entrys.size() < 5) {for (int i = 0; i < entrys.size(); i++) {articleIdList.add(entrys.get(i).getKey());}} else {for (int i = 0; i < 5; i++) {articleIdList.add(entrys.get(i).getKey());}}//将前五篇博客放入等待评选的表中for (int i = 0; i < articleIdList.size(); i++) {jurisdictionMapper.addArticleIdGoodBlog(articleIdList.get(i), startTime, endTime);}//获取文章和作者的信息Map<String, List> map = FindArticleUtil.find(articleIdList, articleMapper, userMapper);if(articleIdList.size() != 0) {if(map != null) {resultInfo.setFlag(true);//resultInfo.setData(map);} else {resultInfo.setFlag(false);resultInfo.setErrorMsg("优秀博客查询失败");}} else {resultInfo.setFlag(false);resultInfo.setErrorMsg("该时间段内没有发布的博客");}return resultInfo;}

总结

在本次项目中收获很多,像代码的规范啊,变量的命名以及规范的格式都有很大的进步。编写代码的同时也进行了相应的备注,阅读起来也方便。学到了很多知识,在框架的运用上更加的熟练。

Bolg社区个人总结相关推荐

  1. 2022-2028年中国社区体育产业深度调研及投资前景预测报告

    [报告类型]产业研究 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了社区体育行业相关概述.中国社区体育行业运行环境.分析了中国社区体育行 ...

  2. 如何参与贡献Dubbo社区

    如何参与贡献Dubbo社区 文字版首发于dubbo.io官网:http://dubbo.apache.org/zh-cn/blog/how-to-involve-dubbo-community.htm ...

  3. 重庆社区计算机考试题库,2020重庆社区工作者考试题库:模拟题100题(64)

    2020年重庆社区工作者考试正在如火如荼的开展,为了帮助大家做好备考工作,社区工作者考试模拟题,希望考生们能与小编共同坚持--每日一练! 2020年社区工作者考试模拟题100题64 1. 在市场经济条 ...

  4. csgo 人数文件_学生机简单开一个CSGO的社区服务器

    首先你需要这几个东西 Steamcmd,Notepad++,模板信息txt文件,学生机(以Windows Server 64位系统为例) 链接: https://share.weiyun.com/5c ...

  5. 计算机二级应用题改卷,全国计算机等级考试二级Python语言程序设计模拟试卷B卷综合应用题-Go语言中文社区...

    目录 背景 <天龙八部>是著名作家金庸的代表作之一,历时4年创作完成.该作品气势磅礴,人物众多,非常经典.这里给出一个<天龙八部>的网络版本,文件名为"天龙八部-网络 ...

  6. 在Ubuntu 16.4.3 LTS x86_64上安装PyCharm社区版笔记

    在浏览器中从PyCharm官网下载最新社区版本,它时免费的 https://www.jetbrains.com/pycharm/download/#section=linux 默认存放地址是下载文件夹 ...

  7. 如何对 Rocksdb以及类似存储引擎社区 提出 有效的性能问题?

    性能 是rocksdb的优点,活跃的社区十分欢迎大家对各自使用rocksdb 过程中性能相关的疑惑点进行提问.提问的时候如果能够提供更多,更详细的信息 是可以增加快速得到恢复回复的概率.当然,性能是一 ...

  8. 积极拥抱.NET Core开源社区

    潘正磊在上海的Tech Summit 2018 大会上给我们的.NET Core以及开源情况带来了最新信息. .Net Core 开源后取得了更加快速的发展,目前越活跃用户高达400万人,每月新增开发 ...

  9. 中国HBase技术社区第一届Meetup资料大合集

    2018年6月6号,由中国HBase技术社区组织,阿里云主办的中国第一次HBase Meetup在北京望京阿里中心举行,来自阿里.小米.滴滴.360等公司的各位HBase的PMC.committer共 ...

最新文章

  1. Python进阶7——字典与集合
  2. Shell 变量的作用域
  3. Python3 字符串拼接
  4. 排序算法_桶排序(箱排序)
  5. Map集合HashMap,TreeMap
  6. 各类数据库问题描述模板
  7. 设计模式——“signleton”
  8. 从医生看病和快餐店点餐理解Node.js的事件驱动
  9. python图像的手绘效果代码_Python项目1:实现将图片转化为手绘效果
  10. 联想笔记本插入耳机仍外放--解决方式
  11. TiDB 故障诊断与性能排查:发生即看见,一切可回溯,Continuous Profiling 应用实践
  12. android字符串+数字变量方法之%1$s、%1$d的用法
  13. android相机实时滤镜,android 包含美颜等40余种实时滤镜相机
  14. LFS学习系列3 — 前言
  15. html5的vidoe标签,HTML5的Video标签的属性,方法和事件
  16. SVN异常处理——禁止访问
  17. Windows下使用SSD检测
  18. 关于switch-case的用法细节及其特殊用法
  19. springboot多模块项目创建及添加子模块过程
  20. 【人工智能项目】Fashion Mnist识别实验

热门文章

  1. Java day01
  2. pdf文件预览、打印
  3. Android ComponentName简介
  4. MotionEvent对象
  5. 第三届ACM/ICPC新生赛初赛题解
  6. ssh 链接与断开服务器命令
  7. 使用adb命令行查看当前Fragment情况
  8. Redis 6(一)Redis 6的新特性
  9. 有多少种硬币组合,更优解法
  10. 时间管理中的十五个法则