自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

focus-unchanged-thing

专注于纷繁快速变化中那些不变的东西

  • 博客(732)
  • 资源 (12)
  • 收藏
  • 关注

原创 使用FreeMarker生成代码

pom.xml // 引入FreeMarker包。Test.ftl // 指定的模板引擎。Main.java // 生成代码封装。

2022-12-20 10:56:39 1536

原创 【游戏服务器设计案例篇】感悟

1.记录index,而不是具体的内容。2.分为登陆时的处理 和 凌晨5点的处理

2021-12-18 18:50:06 2573

原创 [Lambda操作]1.filter 2.Comparator 3.flatMap 4.map 5.Predicate 6.findAny 7.Consumer 8.多重排序 9.分组 10.peek

1)key从大到小排序 List<String> list = privilegeMap.keySet().stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); if (list.size() == 0) { return -1; } return Integer.parseInt(list.get(0));.

2021-08-31 16:44:54 757 1

原创 减少git分支代码合并冲突神器之只格式化改变行的代码: 打开Only VCS changed text即可(无代码修改的话,这个选项是无法选中的)

1)ctrl+a全选代码2)ctrl+shifr+alt+L弹出框,选择第一个3)在选中ctrl+alt+L

2021-06-21 12:17:40 784

原创 【重点:MongoTemplate】SpringBoot操作mongodb

application.propertiesspring.application.name=spring-boot-mongodb# mongodbspring.data.mongodb.uri=mongodb://localhost:27017/test

2021-06-05 12:29:35 334

原创 【LoadingCache+mongo完成进程内数据管理】1.缓存mongo中数据到内存 2.不存在则从mongo中load到loadingcache

| | |____java| | | |____BaseCacheDao.java| | | |____Player.java| | | |____Main.java| | | |____PlayerDao.javaBaseCacheDao.javaimport com.google.common.cache.*;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.util.concurrent.

2021-04-09 16:43:50 605 1

原创 Jenkins实现自动化部署(centos环境为例子)

1)下载jenkinshttps://www.jenkins.io/download/2)下载tomcat3)把jenkins.war放到webapps目录下4)为tomcat下面的sh加权限,并且必须以sudo方式启动tomcat5)打开jenkinshttp://localhost:8080/jenkins6)初次使用配置jenkins密码7)加权限并且查看密码cd /varsudo chmod -R 777 rootopen /var/r

2021-03-16 16:17:02 470

原创 【protobuf 2的使用】0.gitbash终端 1.pb在vscode中的的格式化和跳转 2.服务器:netty 3.客户端:creator 4.自定义Option(如添加msgid)

1)creator中使用protobufhttps://github.com/protobufjs/protobuf.js/blob/master/dist/protobuf.js

2021-01-27 23:21:21 1077 1

原创 java应用程序发布jar2的2种方式 1.assembly.xml(线上) 2.fat-jar(工具类的发布)

nohup java -jar xxx.jar>log.txt &

2020-03-31 10:21:03 784 1

原创 [python(最简单,但是还是推荐用nginx)]1.cd dist 2.python -m SimpleHTTPServer 3.http://localhost:8000

Last login: Tue Jan 7 18:37:45 on ttys000➜ ~ /Users/jianan/Documents/work/sayabc-gamification-demo01-all/MathClassroomH5/Project/IFTTTSample/build/web-mobile➜ web-mobile git:(master) python -m S...

2020-01-07 18:52:18 940 2

原创 【mongodb环境搭建】1.win下启动 2.mac下启动 3.linux下启动 4.通过配置文件启动

1)配置mongod环境变量(mongod起作用)export PATH="/usr/local/Cellar/mongodb@3.4/3.4.14/bin:$PATH"接着执行,让环境变量生效source ~/.bash_profile或者使用.zsh后:source .zshrc2)启动mongodb(缺少data/db则会报错)➜ ~ /Users/ji...

2018-08-21 21:44:31 1380 1

原创 【github ssh公钥】1.添加 2.设置下user.email和user.name提交时有值

收到如下类型的报错:Warning: Permanently added the RSA host key for IP address '192.30.253.113' to the list of known hosts. Permission denied (publickey). fatal: Could not read from remote repository. Ple...

2018-02-26 15:05:27 3683

原创 (推荐)使用git高效管理项目 1.Readme图片路径 2.Fork软件

简单在一个目录下拉取别人的一个工程1.在任何一个目录下新建一个文件夹比如:work,然后cd 切换到工作目录2.仓库初始化git init3.从某个地址拉取工程到自己的工作目录git clone git@192.168.0.21:2dxproj/AdventureEliminate.git备注:比较大的工程往往用http协议下载不下来,这...

2015-04-01 17:48:24 4920 1

原创 mac下刚安装的mysql忘记密码的解决办法

-----情景:总是出现类似的错误-----C:\Program Files\MySQL\MySQL Server 5.0\bin>mysqlERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)-----解决方案-----1.没有忘记mysql登陆密码的话(...

2013-12-05 14:28:57 1118

原创 【java面试】

对象头+实例数据+数据填充(jvm要求)二、ConurrentHashMap。空间复杂度: O(N)查询时间复杂度LogN。

2025-08-21 10:44:03 178

原创 组的概念及其使用 id groupId 数据

技能: // 1个技能有多个效果,这些效果同属于一组(也就是都是这个技能的)任务 // 哪些任务是一组、日常任务有哪些(可新增type2之类的标识)id groupId 数据。匹配 // 哪些服务器匹配到一块。英雄升级 // 一个英雄的升级。赛季 // 哪些服务器能相见。

2025-08-18 11:38:54 92

原创 gradle国内镜像下载

Index of /gradle/

2025-08-15 10:32:21 91

原创 zk3.6.1使用zkServer.cmd启动报错

解决办法:

2025-08-14 13:24:53 64

原创 从实践中对跨服架构和java分布式架构的思考

比如:1服,2服,3服,4服。N服一块需要匹配分组,那其实放到哪个服都不合适,那自然而然就需要:匹配服、流程服这种设计了。4、LOLM微信区和QQ区能匹配到一块玩,这其实也是说明:是有一个匹配服负责匹配,匹配成功后,去找一个空闲的房间把大家拉进去。SLG中,其实我们的目标是:就算转区到别处,那希望所有的操作其实不变,该养成的继续养成,和在哪个服基本上没啥关系,唯一的可能就是:有些操作,不允许在某些服做,只需要判断下服务器类型即可!2、再比如:竞技场,在做卡牌时,其实竞技场都是:本服的一些匹配。

2025-08-01 11:11:52 152

原创 mycat在游戏中的使用场景(邮件表,mysql集群,而不是邮件服)

之所以用mycat可以看出:把活交给了运维,同时,不管是游戏服还是别的服都可以使用邮件数据库,往里面存和取,这样子:就支持大量的邮件存储了。其实还有一种是SharingJDBC,而且之间在B站的同学也是说用这个,但是我们目前项目邮件中用的却是: mycat,为什么呢?SharingJDBC则是:SpringBoot这边的一种配置,如果后面增加了新的机器和库,那会改SpringBoot的配置。mycat其实是中间件,是需要独立部署的,是数据库服务器这块的代理,在应用层的话很简单,写一个URL就行了。

2025-08-01 10:39:43 131

原创 线上redis的使用

1.缓存玩家单个数据,但是我觉得还是用hash好2.结合过期时间,比如:某个东西结算了,redis记录一下,并设置过期时间3.分布式锁。

2025-08-01 10:33:49 233

原创 kafka应用场景

2.发布订阅 // 每个消费者都独立,都可以消费到数据。1.点对点 // 消费者拉取到数据,删除。

2025-07-31 10:17:44 91

原创 (推荐)LF中对数据库缓存的封装

LF中则是:把内存和Caffeine缓存分开,修改内存 和 缓存2步操作,看似麻烦了,时机则是:更加的通用。之前都是把缓存和orm这块的管理封装到了一块,其实不是特别清晰。

2025-07-24 14:53:41 87

原创 git bash字体设置

2025-07-21 15:34:26 85

原创 Caffeine Cache的使用(api更加友好)

2025-07-03 11:43:21 94

原创 RuoYi-Vue学习环境搭建

5)修改src/main/resources/application-druid.yml下的密码。6)运行 com.ruoyi.RuoYiApplication。3)重新指定之前若依的url指向自己的空仓库。4)新建数据库,导入sql下的2个sql文件。1)克隆下来之前原项目。

2025-06-29 15:43:07 248

原创 Java游戏服务器架构思考-必备模块

2)protobuf // 通信协议。3)excel // 配置读取。

2025-06-21 11:35:12 170

原创 【推荐!!!】用枚举实现多态(避免类内容过长爆炸)

【代码】【推荐!!!】用枚举实现多态(避免类内容过长爆炸)

2025-05-28 10:41:47 111

原创 skynet使用协作式协程解决rpc中的ABA问题

2)这样就 “死锁了”

2025-05-22 09:31:32 146

原创 使用docker compose快速搭建wordpress环境

【代码】使用docker compose快速启动wordpress。

2025-05-10 23:32:31 216

原创 迭代器iterator的使用

抽奖记录保留最近100条,其余多余的删除掉,如果使用for循环,其实稍微麻烦了,此时迭代器就很方便了。

2025-04-17 11:54:50 125

原创 GoLand环境搭建

5)引入github上的包后,进行下载。3)根据提示下载sdk 如:1.19。GOPATH // 没有东西。1)下载goland。

2025-04-14 10:53:03 319

原创 监控docker中的java应用

3)下载arthas。

2025-04-13 15:15:04 338

原创 【使用jenkins+docker自动化部署java项目】

背景:有A(打包机),B(游戏服) 2个机器,他们都安装有docker,请完成部署。

2025-04-13 14:37:10 732

原创 【RockyLinux】 1.安装 docker 2.安装redis并在win上连接

【代码】Rocky linux 安装 docker。

2025-03-29 22:12:23 222

原创 【通过Groovy去热修复线上逻辑】1.执行线上数据修复 2.写工具

还有个技巧:而执行执行的,则是: 写的工具什么的,想直接使用, 无需打jar包。

2025-03-22 22:37:10 240

原创 【lf中的git实战】(我的代码合并到别人那用squash,别人合我这不用!!!)

git merge develop // 不可加参数,防止记录被吞。git pull --rebase // 这样子让成一条直线?4)合并author/feature_func到develop。3)release分支。

2025-03-12 14:18:23 222

原创 【时序图】1.StarUML绿化

Message // 发送消息 // 比如Controller调用Service。Self Message // 自己的一些判断。Lifeline // 一个参与的对象。Reply Message // 返回消息。

2025-03-09 22:15:16 286

原创 UML-时序图

UML-时序图

2025-03-09 10:57:02 107

原创 JProfiler进行分析出内存溢出的类名

可以先粗略看一下到底哪个线程占用cpu高,比如:堆泄漏了,我发现可以看出来全部是在gc线程在干活回收东西但是依然回收不了,可以判断出来是内存泄漏了。使用thread -n 10 这样子可以快速定位出来到底哪一行吃的cpu,一定程度上代替jprofiler中的cpu热点方法。分析大对象的话,还是使用MAT吧,jprofiler还是仅仅分析运行期间方法热点问题。mat关注大对象,也就是对象占用数量,这个更有实际意义。目前看着没有太多的有效信息,所以还是用于热点方法使用比较好.可以报告出来怀疑的点,更加智能。

2025-03-09 10:34:57 365

航海乘务管理系统C++源代码

航海乘务管理系统C++源代码.

2012-01-02

C++编写的图书馆管理系统

C++编写的图书馆管理系统

2012-03-30

MASM汇编语言新手入门

MASM汇编语言新手入门

2012-03-30

Unity 3D网络游戏实战(全)

Unity 3D网络游戏实战(全) Unity 3D网络游戏实战(全) Unity 3D网络游戏实战(全)

2018-08-10

JavaScript函数式编程

JavaScript函数式编程_PDF电子书下载 高清 带索引书签目录_(美)佛格斯著_北京:人民邮电出版社_P204_2015.08

2018-06-01

markdown写的简历模板

作为程序员,当然应该不用什么word之类的来写简历,我们应该使用简洁美观的markdown编辑器来完成

2018-04-25

C++ 0-1背包问题源代码

C++ 0-1背包问题源代码

2012-01-03

JavaScript应用开发实践指南.pdf

JavaScript应用开发实践指南 JavaScript应用开发实践指南

2018-05-17

图书馆管理系统C++源代码

C++开发的图书馆管理程序源代码

2012-01-02

JavaScript设计模式与开发实践-源代码

JavaScript设计模式与开发实践-源代码 JavaScript设计模式与开发实践-源代码

2018-06-03

编写可维护的JavaScript

编写可维护的javascript 编写可维护的javascript 编写可维护的javascript

2018-05-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除