- 博客(224)
- 资源 (46)
- 收藏
- 关注

原创 手写一个RPC框架来检验你的Spring和Netty基本功
在我早期的一篇博文Java反射机制的原理和用途中,文末我写到过:"如果你不做框架的话,基本上是用不到反射机制的,我们大多时候是使用框架的一方,而反射机制都已经在底层实现过了,因此,我们不必担心,我们会写那么复杂的代码。但是,我们必须要理解这种机制的存在!" 这篇文章作于2017年9月份,距离现在已经过了快4年了。
2021-05-29 22:22:29
62286
7

原创 【第2章】Seata1.3.0源码编译+参数配置+启动运行(超详细)
一、什么是Seata?官网地址:https://seata.io提炼关键词:特性:1、一致性(这个是痛点,解决的就是微服务分布式事务一致性的问题)2、高性能(这个是卖点,如果用了反而拖累整个微服务架构的性能,试问谁还会用呢?)3、易用性(这个是亮点,大家开发时引入新技术,都希望简单好用,如果技术太过于复杂,反而会提升使用门槛,吓跑用户)事务模式AT (AutomaticTransaction,对业务系统无侵入,省去了用的人很多编码的工作)...
2020-10-06 00:50:24
100667
9

原创 SpringBoot -- 软件许可(License)证书生成+验证+应用完整流程
一、项目目录树结构 由于时间有限,不可能在博客上花太多时间、也不可能每一个细节都说的很细,所以,下面的内容虽然一时间看着比较懵,但是文末有项目的GitHub地址,或者不懂的可以留言; 这个是粗糙的项目结构,没有细分,实际应用的话应该是授权的代码要和验证的代码分开,防止授权的代码引进客户端系统中,被破解和拆穿,也为了防止公钥st...
2019-09-27 14:22:26
149427
199

原创 项目研发管理经验交流
最近,大BOSS要求我给集团内部的各项目研发组长进行一次培训,让我准备下,我当时一听有点懵,为什么是我? 内心挣扎了200ms后,我爽快的答应了! 回来后,我就在想,我要怎么做这个PPT呢?我当时想的不是我能不能完成,而是我要怎么结合自己这近一年的研发管理经验,来把这个PPT完成的很有料! 既然让我做,就有让我做的理由,我很忙,也没时间去想,咱也不敢说,咱也不敢问...
2019-06-06 12:45:03
111347
10

原创 SpringBoot2.1.4+Mybatis数据持久层标准&通用后台Web脚手架
一、概述 对于后端开发人员来说,干过最多的事无非就是增删改查,没事修修BUG,重构下代码,看似简单的工作,其实做好也不简单,这都是后话了,后面会讲到; 如果你还在用Spring+SpringMVC+Hibernate/Mybatis这一套框架的话,我建议你换SpringBoot用一段时间试试,如果限于公司技术栈的约束,可以私底下做个知识扩展,因为这家伙开发We...
2019-04-29 18:59:38
107684

原创 UML建模工具Enterprise Architect(EA) -- 安装及简单使用
一、什么是EA?Enterprise Architect 是Sparx Systems公司的旗舰产品。它覆盖了系统开发的整个周期,除了开发类模型之外,还包括事务进程分析,使用案例需求,动态模型,组件和布局,系统管理,非功能需求,用户界面设计,测试和维护等。 ...
2019-04-03 14:47:18
188209
32

原创 Java 23种设计模式Demo案例大全 ☞ 【已完结】
注:已经延期好久好久了,从去年11月份到今年8月份,卧槽,不敢想啊,博主真是没时间整啊,太忙没时间?那都是借口,主要是坚持很难,我尽量有时间续更下!这个必须完成,太TM经典了,必须完成!!! 俗话说,古有<孙子兵法>,掌握之,能打胜仗也,今有<23种设计模式代码案列大全>,学习之,能敲出骇世惊俗的代码;不信吗,若不信的话,那是你没有真正掌握其中的思想精髓;...
2018-11-06 14:56:29
115838
13

原创 基于电影知识图谱的智能问答系统(八) -- 终极完结篇
基于电影知识图谱的智能问答系统系列章节传送门:基于电影知识图谱的智能问答系统(一) -- Mysql数据准备基于电影知识图谱的智能问答系统(二) -- Neo4j导入CSV文件基于电影知识图谱的智能问答系统(三) -- Spark环境搭建基于电影知识图谱的智能问答系统(四) -- HanLP分词器基于电影知识图谱的智能问答系统(五) -- Spark朴素贝叶斯分类...
2018-05-23 16:34:11
74281
219
原创 SpringBoot应用项目插件开发☞Jar包热更新
基于SpringBoot框架的JAR包插件式开发,通过实现自定义的ClassLoader配合定时器功能实现指定目录下JAR包的热部署和热更新,从而实现线上系统"无感式"功能的快速升级!
2022-12-03 22:33:56
25262
8
原创 基于leaflet编写的经纬线网格绘制react插件
基于leaflet封装的带经纬度数值标注的经纬度(瓦片)网格线绘制插件,可自定义线和标注的颜色及显示方位!
2022-10-22 22:55:43
34558
原创 SSO单点登录前后端分离完整版·(开源)
用7这个数字,是因为我儿子是七夕生的。开源的sso框架有很多,公司的、个人的,优秀的很多。那为什么我又要写个呢?因为对单点登录的流程太过于熟悉了,以至于太想把自己的想法通过代码的方式给呈现出来,而且还是开源出来供大家参考学习。...............
2022-07-18 00:00:15
58332
15
原创 历时1个多月Copilot终于通过了
还是那句话,不管你从事的是C/C++也好,Go也好、Python也好,Java也好,Vue/React也好,或是其他,记住一句话,这些都是语言工具,能帮助你写程序,但是不见得能让你写出好程序,要想写出好程序,不能只靠工具,靠什么,自己悟。
2022-05-28 13:45:15
53172
7
原创 (JAVA)全球格网图幅编号计算&基于图幅进行GIS数据切瓦片的思路
本篇就是随便写的,想到哪写到哪,不谈什么算法和源码,就是看效果,先来张效果图吧: 首先我们要想要对江浙沪皖(江苏,浙江、安徽和上海四个行政区划)的矢量或影像进行瓦片切图操作,QGIS中的图层是矢量数据,影像同理;我们有两种切法,第一种就是按shp图层的外接矩形来算瓦片的xyz,因为通过地图缩放层级zoom和范围很容易的能算出有多少张瓦片是需要计算并存储的,比如,我代码中对shp数据的读取解析可以知道其范围如下:知道范围后,我们就可以算出在16地图缩放层级下...
2021-04-24 13:22:17
68790
2
原创 微信小程序申请+开发+发布流程
框架用的Taro,开发工具用的是VSCode+微信开发者工具,VSCode主要用来编码,微信开发者工具主要用来看和最后上传那么一下,其他没什么好说的。放张图:过程整理成了文档,目录截图如下:下载链接:https://pan.baidu.com/s/1C4eP4Qci3HOAPro7eL0eYQ提取码:tqim...
2021-02-19 18:00:25
74726
原创 Docker命令骚操作☞以push镜像到官网hub和和阿里镜像仓库为例
一、注册docker hub账号Docker Hub :https://hub.docker.com/例如,我的docker hub账号为:appleyk里面已经有了一个推上去的镜像,主要是对官方nginx镜像做了小小的修改,后续会放出如何本地拉远程仓库上的tomcat 镜像、如何在本地“调整”tomcat镜像后,分别推送至hub和阿里云镜像仓库上。注意这个镜像是pulic的,意味着任何人都可以pull到本地仓库,pull的方式如下:docke...
2020-10-31 01:30:53
90619
8
原创 Java基于LRU算法机制写一个缓存容器(哈希Map结合双链表的快乐编程)
1、前序 废话就不多了,博主默认大家都已经知道什么是LRU算法了,且都知道了JDK中是有一个LinkedHashMap容器,可以稍加继承改造下就很容易实现一个LRU机制的缓存容器的; 本篇的重点其实不在jdk自带的LinkedHashMap容器上进行扩展,而是重点讲它实现LRU算法的思路(这个功能很隐蔽,一般不看源码不跟代码,根本就不知道它除了节点的插入和访问有序外,还可以实现满容后,再put元素,移除头节点的功能,注意是移除头节点,不是网上大多数人想当然的写的是移除尾...
2020-10-14 14:47:27
91379
3
原创 【第1章】SpringCloud结合Seata1.3.0,从零开始搭建微服务模块并实现分布式事务全局一致性
一、前言 最近有时间,打算把微服务整起来,本地搞个项目案例,配置下,撸撸代码,搞个从无到有的搭建过程,最后再把搭建配置的文档和项目的代码放到github上,一是供大家参考,二是给自己留个东西,以免时间久了,生疏和忘了。 为什么官网有个基于Spring的Seata的案例,自己还要再搞一个呢,两个原因,一是github上的那个项目拉下来,跑不起来,感觉怪怪的,而且是集成dubbo的,数据源限定死了;dao层用了MybatisPlus插件,而我用习惯了tk.mapper;pom引...
2020-09-30 00:33:43
94091
原创 MacOS配置双JDK环境JDK8和JDK14相互切换☞了解JDK14新特性
一、Oracle官网下载JDK14下载链接:https://www.oracle.com/java/technologies/javase-jdk14-downloads.html双击JDK 14.0.2.pkg安装,安装完后,查看安装目录/Library/Java/JavaVirtualMachines/二、双JDK环境配置(1)编辑配置文件appledeMacBook-Pro:~ apple$ vim ~/.ba...
2020-09-02 15:26:54
95301
原创 JVM虚拟机,也就那么回事!(总结+绘图+流程+代码)
利用闲余时间,看视频,搜资料,参考+总结绘制出了下面的数据流图,流图内容包括:(1)如何针对亿级流量的电商网站做JVM性能调优?(2)什么是MinorGC,什么是FullGC,什么又是STW?(3)新生代包括哪些空间,且如何写程序,借助jvisualvm工具查看程序的gc情况?(4)什么样的对象会进入老年代?(5)对象在内存中的结构是什么,Mark Word存储了哪些信息?(6)如何描述JVM运行时数据区各部分空间与Java线程之间的关系和联系?(7)Java程序是如何通过JVM
2020-06-23 00:33:10
97865
原创 只要肯花时间,一气呵成手写SpringMVC框架不是问题!
一、Git项目地址:地址:https://github.com/kobeyk/handwriting-springmvc.git网上可以搜到很多,大致思路和手写步骤如下:1、仿Spring注解,自定义一套属于自己的注解,如仿写常用的@Controller、@Service、@AutoWired等2、自定义DispatcherServlet类,实现HttpServlet接口,重写几个方法,如servlet初始化方法init()3、在init方法中,做一些Servlet...
2020-05-24 17:05:37
98705
原创 Mac IDEA升级到2020(PJie)& Spring-Framework 5.0.x源码编译
一、IDEA 官网地址https://www.jetbrains.com/idea/说明:为什么要升级IDEA呢,因为在Spring源码中run(编译)的时候,提示kotlin编译不通过,程序无非运行,解决办法就是把IDEA 2018版本提升到2019.x.x.x,既然升级,索性一步到位,直接来2020.1.1二、Mac版下载地址https://codeload.github.com/kobeyk/spring-framework/zip/5.0...
2020-05-22 18:56:48
98509
原创 RN组件应用·代码案例(带运行效果图,仓库不定期推)
一、前言 其实写博客很枯燥,码字又太累,搞出来一大堆图文跟流水账一样,也不会有多少人看。索性以后风格直接改为走github,这样比较直接,有代码、有效果运行图,而且想什么时候写、什么时候推送,就很随心所欲,只需博客上放个链接即可。 言归正传,往下看! 二、Git仓库地址GitHub:https://github.com/kobe...
2020-05-03 20:03:18
99961
原创 MacOS系统实现React-Native跨平台开发(IOS和Android)
一、react-native环境搭建(1)参考官网地址:https://reactnative.cn/docs/getting-started.html 1》安装相应的node环境、(npm、yarn)包管理器、(watchman)文件检测服务、 (react-native-cli)脚手架、(CocoaPods)第三方包依赖管理器 (注:具体安装...
2020-03-29 19:15:18
102621
5
原创 Yarn全局安装模块后,提示 'react-native-rename' 不是内部或外部命令,也不是可运行的程序!
一、前言 其实问题很简单,网上一搜索,一分钟不出便能解决;博主记录写文的目的也只有一个,收归吾有,加深解决问题的映像,留作日后再遇到此问题时,一套"回首掏",便能恍然醒悟! 本篇用到的命令: (1) yarn global add react-native-rename (2)react-native-r...
2020-03-08 13:27:54
102075
原创 SpringBoot2.x整合MybatisPlus3.x,实现数据的简单CRUD操作+逆向工程代码生成
一、项目地址GitHub地址:https://github.com/kobeyk/springboot-myabatis-plus-sample.git二、项目结构三、Pom整合<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://mav...
2020-02-27 16:47:34
101880
2
原创 SpringBoot集成Mybatis实现简单的SQL注入(攻击)案例
一、项目演示(1)主演示就是一张t_user表,利用常见的用户登录来模拟sql注入对后台数据的侵入(2)数据库脚本 --postgresqlDROP TABLE IF EXISTS "public"."t_user";CREATE TABLE "public"."t_user" ( "id" int8 NOT NULL, "name" varc...
2020-02-24 19:10:31
105405
3
原创 SpringBoot2.x集成Consul,实现服务的配置中心化管理(配置共享)
一、为什么要用consul 本文不讨论consul和eureka、etcd、zk的对比,单纯从consul本身来说,就是简单易用,安装方便,带web界面,而且服务配置功能可以拿出来单用,用起来也不难,k/v键值对动态构建配置,服务端实时更新,用起来很使用且方便。二、Windows单机版跑consul服务(1)下载地址:https://pan....
2020-02-17 19:47:52
106278
原创 Python3学习(34)--简单网页内容抓取(爬虫入门一)
基础讲多了也不好,懂的人看了烦躁,半懂的人看多了没耐心,我也不能打消了你们学习Python的积极性了,开始爬虫系列基础篇之前,先上一张图,给大脑充充血:很多人,学习Python,无非两个目的,一个就是纯粹玩(确实好玩),一个就是为了上面这张毛爷爷(确实能换钱),我是二者兼有,至少不清高,也不爱财。在Python中,有一个模块,叫urllib,专门就是为了读取web页面...
2020-01-28 14:24:35
43992
5
原创 Python3学习(13)--排序函数sorted
我们今天来说一说排序函数sorted,前面我们讲过,我们可以使用sort()函数对一个list进行排序(但是我们对tuple就不行了,为什么呢,下面我们会复习到),这里的sort和sorted是不一样的,我们先来看一下,用help帮助函数输出的两个函数的解释:一、list.sort我们前面学函数的时候,学过默认参数,下面我们就用这种方式来演示一下排序的两种方式 reverse Tru...
2020-01-28 14:23:58
12424
原创 Mac系统Chrome浏览器安装React DevTools调试工具
一、下载 官网地址:https://github.com/facebook/react-devtools 使用Sourcetree克隆react-devtools-master文件夹到本地二、npm安装依赖shift+command+G --》(快捷键)定位到master所在的目录...
2019-11-10 23:34:22
1451
原创 SpringBoot定时器+文件Md5码实现文件变动检测
一、前言 在上上一篇中,博主基于开源truelicense组件,写了一个demo放到了github上,传送门,里面的功能主要有三个: (1)creator模块:通过秘钥对+参数生成证书lic文件 (2)基于lic文件进行证书安装 (3)verify模块:结合系统应用对证书中的参数进行解析,并通过数值比较来决定系统是否可用; ...
2019-11-03 13:15:02
102417
原创 利用多线程解决select...xx in(...)的性能问题
一、前言 已经有好久没有更博了,上次也不知道是什么时候了,还是那句话,写博客就是为了记录,点点滴滴,点到为止! 最近一直在忙着组内产品上线发布和线下测试的事情,还有一系列的产品代码封版的事情,总之忙碌的时间过的那是相当的快; 自己也一直想抽点时间写写心得体会,当然是关于产品的;但无奈我都劝住了自己,因为还没有到合适的时间,我要确保自己在状态最佳的时间...
2019-11-03 00:04:43
101632
4
原创 Java -- 浅谈并发下“售票”的三种实现方式
一、synchronize(同步锁)实现Demo:package com.appleyk.dbinit.Ticket;import java.util.ArrayList;import java.util.List;/** * <p>synchronize对资源加锁,实现同步并发售票</p> * * @author Appleyk *...
2019-07-05 16:35:58
731
1
原创 Java -- 浅谈 “悲观锁” 和 “乐观锁”
一、前言 悲观锁和乐观锁不是真正意义上的锁,说白了就是Java JDK中就没有这俩货的位置(没有具体的实现类); 悲观锁和乐观锁就是一种思想,说白了就是一种为了保证业务系统高并发下的数据修改安全性而提出来的一种解决方案; 悲观锁认为:我此时操作的数据,万一别人也正在修改怎么办,不行,我得独占,我得给数据加把锁,等我执行提交完,...
2019-07-05 13:20:40
755
1
原创 Java -- 浅谈“同步锁”和“死锁”
一、实现多线程的三种方式 博主在这啰嗦一下,网上也能搜索到,很多人可能知道多线程是什么,怎么开启一个多线程,但是如果要问你实现多线程的方式有哪几种,可能你会顿一下,要想准确地回答出这个问题,还真不是靠死记硬背就能记住的,我在这再重申一下,博文中也会提到前两种的实现方式,至于第三种,本篇不会涉及到,感兴趣的可以自己下来尝试一下;(1) 继承Thread类...
2019-07-01 18:22:00
1604
1
原创 搭建react脚手架&初识react
一、环境准备&项目搭建(1)安装最新node.js中文官网:https://nodejs.org/zh-cn/下载msi,直接安装即可(安装过程中记得勾选 Add to path)查看node版本node -v查看npm(nodejs下的包管理工具)npm -v(2)安装react脚手架工具 create-react-app...
2019-05-03 16:24:04
105103
原创 SpringBoot2.0 整合 tk.mybatis异常
pom配置如下(标准简易版): <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2...
2019-04-18 19:53:55
105197
4
原创 SpringBoot+Docker实现项目的Maven打包&镜像构建&容器中运行==简单自动化部署
一、什么是Docker 参考文章:Docker概念详细介绍参考资料:Docker技术入门与实战(第二版-高清) 二、Centos7安装Docker 网上安装教程博文很多,我直接借鉴过来,整合了一下,下面就跟着我一起走一遍正确的安装步骤吧! (1) 准备工具 1.1 准备虚拟机软件,没有的可去我的百度网盘下载,地址:VM WorkStation...
2019-02-15 16:02:35
111542
php在线词霸简单案列
2017-05-09
C# XML操作类库(加强版)
2016-09-27
Delphi7 XML操作类库
2016-09-26
C# XML操作类库
2016-09-23
Delphi7 ado 连接远程oracle11g
2016-07-29
Delphi XML指定位置插入节点
2016-05-06
PHP信息管理系统毕业作业
2012-12-05
图片的读取与存储(二进制形式)
2011-11-05
C#+Acess数据库完整实例
2011-05-18
文件流实现QQ登陆框效果
2011-04-11
电影知识图谱智能问答系统问题数据集+核心Core
2018-05-21
Hadoop权威指南(第3版)+高清晰
2018-04-02
中文分词器工具包下载(配置+Jar包)
2018-02-06
Spring文件的上传和下载
2018-01-12
Java Web(插件、用户、文件后台管理系统)
2017-11-13
Java Oracle11g连接驱动jar包
2017-10-17
Spring AOP编程
2017-10-10
AOP编程的两个相关的Jar包
2017-10-10
FastDFS相应的源码包以及安装教程(Linux)
2017-09-18
SSM框架整合详细word文档
2017-09-01
Delphi天气助手
2017-06-19
jpgraph类库三种统计图
2017-06-16
DelphiDCM医疗图片转JPG
2017-05-31
php+mysql在线字典
2017-05-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人