一如何使用免费的社区版 下载[GitHub](https://github.com/Qbian61/forum-java)开源代码,参照[安装指南](https://www.developers.pub/article/171)进行搭建。使用时请注意保留底部版权信息及相关链接:©2016-2021杭州余杭顽强网络技术工作室 社区版仅提供给个人使用,企业在未获得商用授权前使用社区版本我们将追究其法律责任,企业如需申请社区版商用授权请联系客服微信developers_pub/邮件2393071194@qq.com </br 二商业版不同价格的标准 对于非营利性组织(需提供社会团体登记证明)提...

  开发者客栈   2021年03月08日   624   2   2 社区开发者客栈开源

一背景 很多同学在熟悉一个新系统时,第一关注点应该都是这个系统有哪些模块,模块之间的依赖关系是什么,不同模块内部具体是做什么的? 当把上面的问题都搞清楚后,做为一个开发人员,就可以很快的上手对这个系统做需求迭代了。 带着上面的问题,我们这篇文章就针对forum-java系统展开详细解答。 二模块依赖及简介 模块依赖关系图 ![模块依赖关系图](https://static.developers.pub/3019965af7e44836a97a95990e4228cc) st...

源码地址:https://github.com/Qbian61/forum-java 一初始化数据表 数据表定义文件所在位置,在项目的forum-starter/src/main/resources/schema.sql。将schema.sql文件在mysql的developers数据库上执行下就会创建好所有需要的表。 二初始化数据 数据表建好后,需要初始化一些数据,初始化数据文件位置forum-starter/src/main/resources/data.sql: 文章分类,可以不...

  开发者客栈   2020年12月12日   4782   12   39 社区开发者客栈开源
开发者客栈简介

一forum-java springboot框架开发的社区:https://www.developers.pub 二简介 [forum-java](https://www.developers.pub/)是一个开源的现代化社区平台,它实现了: 面向内容讨论的论坛; 面向知识问答的社区; 100%开源; 欢迎到[开发者客栈](https://www.developers.pub/)官方讨论区了解更多。同时也欢迎关注开发者客栈开源社区微信公众号智猿其说: ![image.png](...

  开发者客栈   2020年11月21日   1504   7   33 社区开发者客栈开源

一背景 在提交代码执行gitpushoriginHEAD:refs/for/master命令时,报如下错误: remote:Resolvingdeltas:100%(9/9) remote:Processingchanges:refs:1,done remote:ERROR:commit01fa6cb:missingChange-Idinmessagefooter remote: remote:Hint:toautomaticallyinsertaChange-Id,installtheh...

  qbian   16小时前   11   1   0 git

1.1晨跑的好处 坚持晨跑可以增强体质、提高免疫力、改善精神状态。晨跑应注意以慢跑为主,并且晨跑之前应补充足够的水分和少量的食物; 宜轻适当的晨练是“活力之源”,是一天活动的首次启动,具有“开关效应”。轻度晨练可使人全天充满活力、生机勃勃,并能增强幽默风趣感及艺术感染力,不易出现内分泌紊乱,并有减少焦虑,改善睡眠质量的作用。这一切都是在轻度晨练可增强人体生物钟有序性的基础上实现的。晨练有度,微汗即止,才可见效。 早晨空气清新,跑一会儿步,会使人情绪饱满;晨跑会使全身各器官功能提高到较高水平,并...

  luna   9天前   42   2   2 其他

一背景 go项目中执行./build.sh下载依赖时,报如下错误: bzrbranch--use-existing-dir-https://launchpad.net/mgo/v2.inxxx:exec:"bzr":executablefilenotfoundin$PATH 二解决方案 在go.mod文件中添加如下配置: replace( labix.org/v2/mgo=github.com/go-mgo/mgov0.0.0-20160801194620-b6121c6199b7 launchpad.net/gocheck=github.com/go-check/checkv...

  qbian   13天前   37   0   0 golanggo

一、基于数据库实现分布式锁 1.悲观锁 利用select…where…forupdate排他锁 注意:其他附加功能与实现一基本一致,这里需要注意的是“wherename=lock”,name字段必须要走索引,否则会锁表。有些情况下,比如表不大,mysql优化器会不走这个索引,导致锁表问题。 2.乐观锁 所谓乐观锁与前边最大区别在于基于CAS思想,是不具有互斥性,不会产生锁等待而消耗资源,操作过程中认为不存在并发冲突,只有updateversion失败后才能觉察到。我们的抢购、秒杀就是用了这种实现以防止超卖。 通过增加递增的版本号字段实现乐观锁 二、基于jdk的实现方式 思路:另启一...

  liuliu   15天前   30   1   0 redis

一背景 在golandidea里debug方式启动golang项目时,报如下错误: VersionofDelveistoooldforthisversionofGo(maximumsupportedversion1.13,suppressthiserrorwith--check-go-version=false) 二报错原因 golandidea内集成了golangdebug工具delve,但是集成的delve版本太低。 三解决方法 将goland编辑器升级到最新版本就好了 !...

  qbian   15天前   27   0   0 golanggo

useContextHook 主要用于组件传值,一般会单独使用一个文件,使用`React.createContext()`生成一个context对象,再通过useContext来管理分发数据,类似于vue的bus。 主要和React.createContext配合使用。 示例 1.创建使用Context提供服务的文件: js //myContext.js文件中创建 importReactfrom'react'; exportdefaultReact.createContext(); 2.父组件引入并挂载: js //APP父组件挂载redux importreducerfro...

  大鸟啊   2021年03月10日   111   1   2 javascript

一背景 发现很多同学在部署forum-java项目时都有打war包的需求,为了方便大家部署,这里就写一下打war包的操作步骤。 二打war包详细步骤 ![image.png](https://static.developers.pub/cc1d16bed85b4ee89cb6605ff3d34bf5?) 1.找到forum-starter模块(图中标注1处); 2.找到pom.xml文件(图中标注2处); 3.将打war包下注释代码解开(上图中标注的3和4两处); 4.在buil...

  开发者客栈   2021年03月03日   307   1   0 社区开发者客栈

安装 Maven 在项目的pom.xml的dependencies中加入以下内容: language <dependency <groupIdcn.hutool</groupId <artifactIdhutool-all</artifactId <version5.5.8</version </dependency ![30.png](https://static.developers.pub/666b8477b9864a8b81c12ac6c03df16f) 拷贝 流的读写可以总结为从...

  liyq_qiji   2021年02月28日   131   1   0 spring boot

![image.png](https://static.developers.pub/09c3b6b4bd7748359209e1879e9f5b75) 群体 1.1群体的概念 什么是心里学上的群体? 在某些既定条件下,并且只有在这些条件下,一群人会表现出一些新的特点,它非常不同于组成这一群体的个人所具有的特点。聚集成群的人,他们的感情和思想全部都转到同一个方向,他们自觉的个性消失了,形成了一种集体心理。它无疑是暂时的,然而它确实表现出了一些非常明确的特点。这些聚集成群的人进入一...

  魂枫   2021年01月28日   231   2   0 读书

一当我们谈领域驱动设计的时候,到底在谈论什么? 当我们接触到一块未知的业务时,要想搞清楚它,首先需要把问题的边界定义好,针对一个没有边界的问题去找解决方案时无从下手的。这里问题的边界对应到DDD就是领域的边界。 对于某些业务场景的时候,需要不同的角色、不同的事件和命令一起配合才能完成,这里就需要在领域内找到所有的角色(领域实体)、所有的事件(领域事件)、所有的命令(领域服务); 还需要做更进一步的子问题的拆分,这样可以将问题具体化、更聚焦,对需要找的解决方案也可以更有落地实施的可能性。这里拆分...

  qbian   2021年01月20日   308   3   1 java-eedubbojava领域驱动设计

一数据量大了后为什么count()会变慢? 在系统开发时,我们经常会有统计表数据量的需求,例如无条件分页查询时就需要count下得到数据总量去计算总页数。但是当数据量越来越大后count()也会变得越来越慢。 count()的实现方式(无查询条件): mysqlMyISAM会记录每个表的总行数,在查询的时候直接读取返回就好了; mysqlInnoDB在每次执行count()时,会去做全表扫描将数据读出来,然后做统计计算得到结果; 为什么InnoDB不像MyISAM一样维护一个总行数呢?因...

  qbian   2021年01月14日   222   3   2 mysqlb+树sql数据库

一背景 软件开发的很多场景下都有唯一性要求,例如:判断手机号是否已经注册过(需要对手机号做唯一性校验)、判断某个用户是否已经关注过某个话题(需要对用户ID+话题ID做唯一性校验)。 二设计 针对上述的业务唯一校验,可以有多种不同的设计实现,例如: 在数据库层设计唯一索引限制(针对定制系统的实现方案); 在应用层通过分布式锁做校验(针对通用系统的实现方案,通常用于业务中台); 为什么需要分布式锁:如果只是在应用层做了查询数据库是否存在,不存在就保存。当出现并发时,两个线程同时查询都没查询到,然后两个线程都去做保存操作,数据库层又没有唯一索引约束,就会出现两个都保存成功,也就打破了业务唯...

  qbian   2021年01月08日   177   2   0 并发锁数据库

日常工作都在用Java了,需要懂一点PHP么? 1.创世应用,是用PHP写的哟,了解下背景,也许用的上 2.工作之余,写点小玩意儿,也许用的上 以下仅讨论Web开发领域 语言只是一个工具 语法篇 PHP作为一门弱类型、解释执行的服务器脚本语言,类似于C,上手快。 php <?php //标记php语言 //'与''均可 echo'phpisthebestlanguage'; /长段可换行注释/ echo"hello,world!"; //可以无结束符号 常量 php ...

  xu42   2020年12月10日   291   1   0 php

一背景 软件开发初期,需求相对简单和明确,开发出来的应用只需要满足需求能够快速上线就好,这个时候的应用在代码和业务逻辑上都比较清晰。 随着业务的不断增长,各种各样的需求也接踵而至。有倒排需求(时间紧,项目周期根据上线时间点往前推)、紧急需求(可能是某个业务逻辑漏洞需要立刻修复上线)、定制化需求(为了某种特殊场景提出的定制化功能),当这些需求不断在应用上实现,应用内会存在大量ifelse的代码,就算引入了良好的设计模式,也会使应用越来越臃肿,最后难以维护。 随着时间的推移,公司人员的变动也是...

  qbian   2020年12月09日   355   3   5 java-eejavaspring

1.1新鲜地 哪里好玩,我有话说: 长白山: ![image.png](https://static.developers.pub/57244b0106fb480b94806aa5ac7ccdbd) 长白山介绍:长白山脉主峰位于吉林省东南部,是鸭绿江、松花江和图们江的发源地。长白山脉的“长白”二字还有一个美好的寓意,即为长相守,到白头,代表着人们对忠贞与美满爱情的向往与歌颂。 松花江: ![image.png](https://static.developers.pub/2009428a3...

  魂枫   2020年12月02日   344   7   8 其他

一完整流程概览 1.1概述 本文讲述浏览器域名解析获取IP、请求静态资源时cdn工作原理、获取IP后请求服务端页面时IP是怎么寻址的、请求到达服务器后应用从都有哪些方式获取请求数据、应用层和系统内核之间的数据copy方式、以及浏览器获取到响应页面后,是怎么将html+css+js内容渲染为一个缤纷多彩的页面的。 1.2DNS/CDN ![image.png](https://static.developers.pub/84498652190549f2a019c6a60d1c9d62) ...

  qbian   2020年11月21日   371   3   3 tomcathtmllinux缓存java