- 博客(94)
- 收藏
- 关注
原创 【CoreJava】Java核心技术-卷II 章节脑图
卷II主要涉及Java的高级特性,章节内容相对独立,不存在上下依赖关系,所以直接乱序摆放脑图。
2020-07-22 18:44:58 2143
原创 Groovy学习笔记-3.Groovy数据类型
twister =~ regex // 识别10w次 } first = System . currentTimeMillis() - start注意=~和= ~的区别,通过定义模式,可以显著提升匹配速度掌握正则表达式有助于提升我们对于字符串的处理速度。
2023-08-05 13:39:59 598
原创 记我在支付宝的第一个375
我承认我有点过于标题党了,其实375仅仅代表的是站在当时场景下公司或团队对于你过去一年工作内容的肯定及对于你新一年的期望,当然也会有稍多一些的年终奖和潜在的股权授予,但更多的其实是换一个其他的人在你的位置上,也许他们可以做的更好,所以我写这篇文章仅仅是对于过去2022年工作的总结与整理,希望能给同样处在2021年那种阶段的我的人一份借鉴。
2023-06-29 00:08:22 517
原创 Groovy学习笔记-1.初识Groovy
groovy代码比java更简单,适合自动化重复任务,编写日常工作脚本。运行在java平台之上,具备灵活动态的特性。并不仅仅是脚本语言,而是可以集成到java或者和web应用程序中,或是用groovy编写整个程序。
2023-05-16 16:24:22 707
原创 学习性测试(Learning Tests)初探
学习性测试(LearningTests)[1]最早由JimNewkirk在Test-DrivenDevelopmentinMicrosoft.NET一书中提及,用以表述在对第三方接口或资源包学习的过程中,通过本地编写测试来遍历我们需要用到的功能,并以此作为后续自身项目质量保证一环的软件编程行为。在我们自身的软件编写实践中,相信大家都或多或少的采用了这种模式:遇到困难或需求,现代软件开发方式通常是第一时间通过搜索的方式寻找可用的API或开源库依赖,将其集成到...
2022-04-03 20:31:56 2101
原创 写在2021年1024
Hi guys,也许大家发现我已经近半年没有更新自己的csdn博客了,是因为我换了一份比较忙的工作,现在在蚂蚁集团做支付宝营销相关的平台开发工作,每天要面对数以百万计的消费者时,确实让我有些分身乏术难以抽出时间来进行技术上的总结和沉淀。好在半年的时间过去了我大概掌握了项目上的业务上下文,也能够胜任这份工作。恰逢1024程序员节,抽出来几分钟的时间和大家聊聊在支付宝的工作感受,也给后来人提供一些信息用于他们选择自己的职业道路。和在Thoughtworks最大的不同我认为还是对于技术的选型以及软件开发的
2021-10-24 12:00:13 1351
原创 《卓有成效的程序员》- 我如何构建我的mbp高效开发环境
近期要换掉用了近2年的mbp,细看之下曾经为了更高效的工作给它安装了一系列的小工具,找个地方记录一下,也许能帮到一些人。开发工具Intellij IDEADataGripPostmanVS CodeSublime Text效率工具截图: Xnip窗口排布: shiftltshell: oh-my-zshzsh配置文件:alias gst="git status"alias gco="git checkout"alias java11="sdk use java 11.0.3-zu
2021-03-25 17:41:11 1564
原创 分享一道算法面试题和它的三种解法
最近遇到了一道很有趣的算法面试题,乍一看逻辑很简单,O(N^2)时间复杂度的解决方式可以在常规语义下得到解决。但是O(N^2)时间复杂度之下缓慢的运行效率和重复的计算总让人觉得还有可以优化的空间。接下来我们一起看一下这道题:题目 无序数组中找到左侧比他小右侧比他大的数 eg: [1 3 2 4 5] result: [1 4 5] eg: [2 1 3 5 4] result: [3] eg: [5 4 6 2 8] result: [8] eg: [4 3 2 1]
2021-02-06 14:46:56 1778 1
原创 也来聊聊Spring中的IOC和AOP
作为一名Java开发的程序猿,Spring可以说是每天都要打交道的东西,从最一开始基于xml配置文件的Spring再到Spring Boot或是Spring Cloud,可以明显感觉到的就是业务的搭建变得日益简单,配置由复杂变得越来越轻量,甚至只需要在网页上点一点就能初始化一个可以运行的Spring项目。网上讨论Spring核心概念IOC和AOP的文章也有很多,今天我也想来聊聊在我看来Spring IOC和AOP的一些特点和使用时需要注意的地方。IOCIOC是构成Spring常用模块中最核心的模块Bea
2020-11-30 21:45:54 1852
原创 微信商家券支持商户平台使用小结
基本信息介绍:微信支付商家券官方文档地址:https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/marketing/busifavor/chapter1_1.shtml商家券介绍可以在上述网址中看到,利用微信商家券,可以得到更好的用户触达能力,同时可以更好的提醒用户商家券的到期事件等。应用于广泛的发券场景之中,商家小程序、公众号、H5网页、APP、推文等,也可以在微信独特的自营渠道(附近发券、支付有礼、朋友圈、商家券推广小程序)中进行投放。利用微信自带的安全防刷风
2020-11-29 22:53:57 3971
原创 【session】Java电商平台开发技能图谱,探秘双十一百万PV
您将学习Java电商平台开发技能图谱,探秘双十一百万PV分享内容企业级Java开发技能图谱从宏观到微观,Java到底怎么学为了支撑双十一,我们对Java程序做了什么你将认识热爱分享的常乐君开源组织javagrowing成员、CSDN博客专家、华为云专家Thoughtworks咨询师,华东区Tech Lead5年Java开发经验,1年培训新人经验喜欢leetcode打野,偶尔出现在周赛前排年少时兼职过主播和公益广告模特,可以靠颜值吃饭却非要拼技术正文Hi,小伙伴们,不知
2020-10-28 18:42:29 2845 1
原创 SpringBoot业务网站集成企业微信扫码登录实战-保姆级指导教程
最近遇到需要集成企业微信扫码登录的需求,看了企业微信提供的说明文档 ,又结合了几篇不错的文章总结下来向大家介绍详细的配置方式。交互时序图配置方式最终效果
2020-10-05 16:09:25 4713
原创 【Session Slide】An Introduction About Content Delivery Network (CDN)
提纲CDN的定义:5minCDN的价值:5min应用场景:4 * 1.5 = 6 min核心探秘1:CDN与DNS的关系 5min核心探秘2:融合CDN与百分比切流量 5min好奇宝宝提问环节:15minCDN定义Wiki:A content delivery network, or content distribution network (CDN), is a geographically distributed network of proxy servers and their da
2020-09-21 12:14:28 2490
原创 力扣 LeetCode-CN 第200场双周赛
最终成绩牢骚在经历了198周、199周连续的两道题全退,1000+、2000+排名之后终于迎来了新一轮的手速竞赛。可以看到本周题相对来说非常简单,前489名都是AK了四道题的选手。自己的成绩也还算过的去,勉强挤进了前150名,得益于当天良好的状态和清晰的思路。。。正文1534.统计好三元组 - E题目内容:https://leetcode-cn.com/contest/weekly-contest-200/problems/count-good-triplets/思路:看了一下总共的数据量不
2020-08-08 21:56:44 1838
原创 写给自己的2020年中Review-技术侧
回顾自己的2020上半年,一共在csdn完成了14篇技术博客,读完了《深入浅出MySQL》、《架构探险-从零开始写Java Web框架》、《高性能MySQL》、《Core Java Volume I》、《Core Java Volume II》、《社会工程-安全体系中的任性漏洞》六本书,参与了7场leetcode周赛,最好成绩是145名。坚持了43天的leetcode每一一题打卡。一方面得益于疫情的影响,我可以在家办公,省下了更多的通勤时间可以休闲娱乐,不至于占用自己太多的个人时间,另一方面也感谢目前所在
2020-08-03 09:24:48 2031
原创 力扣 LeetCode-CN 第30场双周赛
最终成绩:471 / 2545 zclhit 18 1:22:33 0:09:06 1 0:18:59 0:33:57 1 1:02:33 2起因最近一个多月自己有在坚持刷leetcode的每日一题,这次终于鼓起勇气参加了一场双周赛,用大佬的话说这场比赛就是手速赛,所以4道题都AK的人数很多。无聊刷起讨论区看到各位大佬都在讨论,想把第一次参赛的经历记录下来,因为Leetcode周赛和双周赛题目都比较新,所以能混个热搜什么的也挺好的嘤嘤嘤。正文5177. 转变日期格式 - E题
2020-07-12 20:50:23 1978
原创 非典型程序员单板滑雪入门教程指北
随着19-20雪季的到来,自己刚好在北京出差。周末闲来无事除了homeflight就是一头扎进崇礼的各大滑雪场。惭愧的说,作为一个土生土长的北方人(硕士开始在南方),这是我的第一个雪季。还好有公司大佬带路,让自己在滑雪的路上少走了一些弯路,借着这片博客和大家分享一下自己滑雪的心路历程,也给后人一个参考。写在前面滑雪是一项极限运动,极限运动代表了危险,伤病甚至死亡。在你兴致冲冲抱起刚租来的...
2020-06-07 17:21:10 2070
原创 Java通过ConstrainValidator实现自定义注解@UniqueCollection校验请求集合元素唯一
通过Set对基本类型进行去重在API开发过程中,我们经常会遇到需要对接口参数中的集合进行重复校验的场景,这些集合可能是基本数据类型,也可能是Java Bean对象。如果是基本类型,我们可以单纯通过将接收集合设置为Set来实现去重,下面我来展示一下如何通过Set的形式实现最简单的请求参数去重。首先在接收参数的Bean中声明待去重集合testSet<String>:public class uniqueCollectionRequest { private Set<String
2020-06-02 10:16:19 3237
原创 SpringBoot2 + Swagger2 + Swagger2Markup-cli + asciidoctor 生成swagger的pdf文档
最近遇到了需要将Swagger的API文档导出pdf发送给其他对接的开发人员的工作。为了实现这个功能,阅读了很多优秀的文章,同时也找到不错的工具,当然也从同事那里得到了很多帮助。把这些信息整理并记录下来,如果你也遇到了类似的需求,希望可以帮助你节约很多时间。userful website collectionspringboot+swagger接口文档企业实践 这篇文章的主人详细介绍了springboot+swagger在企业级应用场景下的实践方案,如果有时间建议详细阅读这篇文章或者是swagger的官
2020-05-24 20:57:40 2050
原创 本地启动Swagger-ui查看Swagger导出的Json文件
本地启动Swagger-ui查看Swagger导出的Json文件当我们获取项目中其他小伙伴给出的Swagger导出的API定义Json文件时,本地缺少查看环境直接使用文本编辑器打开是一件十分痛苦的事情。在这里我将带你用git, node和npm带你快速搭建本地服务,查看swagger导出的j son文件。依赖git - 任何版本的git都可以,用于从github拉取最新的swagger-ui...
2020-04-26 22:44:17 13260
原创 Spring Boot与React集成在同一个项目实现脚手架
Spring Boot与React集成在同一个项目实现脚手架前言最近在考虑重新搭建自己的项目开发脚手架,我给这套脚手架的定义的期望是:足够高的集成度与足够简洁,满足快速上手开发与快速产出的要求。考虑到这些期望,我选择了Spring Boot作为后端实现框架,而前端,作为2019年stack over flow most loved framework的票王,我选择了React.js。环境搭建...
2020-04-22 18:34:00 4455
原创 【MySQL调优】查询优化
在之前的文章中我们讨论了优化数据库结构与优化数据库索引,在二者的基础上,我们还需要足够好的查询来让上两步的优化发挥其真正的价值。查询优化、索引优化与数据库结构优化齐头并进,一个不落,才能保证系统的高效性。查询变差的原因:查询是由多个子任务所实现的,需要优化查询,要么就是消除其中一些不必要的子任务,要么就是减少子任务的执行次数,要么就是让子任务执行的更快。查询的生命周期:客户端 -> ...
2020-04-04 01:41:25 2023
原创 【MySQL调优】索引优化
写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点。考虑如下情况,假设数据库中一个表有10^ 6条记录,DBMS的页面大小为4K,并存储100条记录。如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^ 4个页面,如果这10^ 4个页面在磁盘上随机分布,需要进行10^ 4次I/O,假设磁盘每次I/O时间为10ms(忽略数据传...
2020-03-07 00:38:19 1704
原创 【MySQL调优】Schema与数据类型优化
schema优化就是指逻辑设计选择合适的数据类型:1. 更小的通常更好2. 简单就好3. 尽量避免NULL(null字段将会多占用1个字节来存储是否为null)基本数据类型整数类型:TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT分别占用8,16,24,32,64位的存储空间还可以区分是否只能为正数实数类型:浮点类型:float和double,分别...
2020-03-04 11:01:39 1731
原创 2020年第一季度书单
数据库:《高性能MySQL》 - 数据库性能优化实战必读课本Java:《JAVA核心技术-卷1》 - 趁着on the beach,查漏补缺必备Mooc:《大学计算机-计算思维导论》 - 把错过的CS课程补回来Project:编译debug一下mysql的源码...
2020-03-02 23:18:59 1922
原创 【MySQL调优】性能测试Benchmark与性能剖析profiling
针对数据库的优化行为,需要先进行测量,测量之后,要对测量结果进行分析。这就需要benchmark和profiling。benchmark可以用到多种工具。性能剖析-Profilingprofiling需要我们有足够多的知识和经验。对于性能的定义:完成某件任务所需要的时间度量,简单的说就是响应时间。而这个时间可以分为执行时间与等待时间。执行时间反应的是一条查询为什么会执行那么长时间,...
2020-03-02 23:01:50 2294
原创 【学习笔记】项目管理构建工具-Maven
内容参考自runoob(https://www.runoob.com/maven/)简介Maven是Apache下纯java开发的开源项目,可以用于对java项目的构建和依赖管理Maven利用中央信息片段管理项目的构建、报告和文档。maven具有的功能:构建文档生成报告依赖SCMs发布分发邮件列表maven遵循约定优先于配置的原则,所以尽可能应当遵循一定的目录结构...
2020-02-19 14:32:14 1757
原创 【MySQL调优】MySQL性能优化实战
MySQL性能优化实战Why Performance在1990s,人们还使用拨号接入互联网的时候,浏览一个网页或加入一个线上聊天室需要几分钟的时间去加载是一件很正常的事情。而2009年Akamai公司的报告显示,如果一个网页的加载时间超过3秒钟,那么40%的用户将会放弃访问。同时网页的加载速度也和很多情况下的网站收入正相关,2006年亚马逊报告显示每超过100ms的网页加载延迟将会降低1%的网...
2019-10-30 23:53:54 1863
原创 2019年第四季度书单
随着十一小长假的结束,2019年第四季度正式开始Thoughtworks发布了最新一期的读书雷达3.0 , 而我也要同步更新一下自己的书单啦!软件架构:《深入理解Spring架构》编程语言:《深入理解Java虚拟机》数据库:《深入浅出MySq》《Percona-MySQL-Performance-Optimization》《高性能Mysql》敏捷实践:《持续交付》技术订阅:...
2019-10-17 10:36:49 1699 1
原创 手把手教Golang小白搭建小米SOAR开发环境
如果你希望直接运行可以直接下载二进制发布包:wget https://github.com/XiaoMi/soar/releases/download/${tag}/soar.${OS}-amd64 -O soarchmod a+x soar其中tag为SOAR版本,而OS代表当前你所使用的系统(注意,如果没有wget可以用curl等命令替换)例如:wget https://gith...
2019-09-18 22:18:16 2497
原创 我为什么离开华为加入ThoughtWorks(思特沃克)
写在前面看到标题,你可能会觉得这是一篇痛批前任公司多么多么傻x,怒夸新公司多么多么牛x的软文。这里我要和你道个歉,这篇文章中不会有哪个公司不好,而是以我的亲身经历,向你展示这两家公司各在哪个方面有(在我看来是)的优点。关于我本硕毕业于C9末流学校,通信工程专业,硕士阶段主攻MRI影像自动量化处理,后来因为这方面就业岗位实在太少,就转行做java后台,也写过一阵子前端,做过几个月大数据分析。...
2019-06-22 15:15:10 70879 16
原创 2019年二季度书单
几大类碎片时间利用极客时间 MySql 46讲 - 同时注重自我实现与反思,结合实际的工作内容进行验证极客时间Java 核心技术36讲基础夯实Java核心技术卷I - 粗略浏览,查漏补缺Effective Java - 提升方法论重构 - 提升代码水平和代码能力TODO: 整理设计模式的所学笔记通过key promote X加强对Idea快捷键的使用架构架构探险 - 动手实...
2019-05-10 22:46:16 1741 1
原创 字节跳动2019年春季社招面试内容
代码1:package interview;import leetcode.leetcodeaa.base.ListNode;public class SumOfArrayList { public static void main(String[] args) { SumOfArrayList sum = new SumOfArrayList(); ...
2019-04-13 17:41:06 8067
原创 我的2018年技术总结
我的2018年技术总结2018年自己完成了从一名学生到软件工程师的转变,收获颇多,感慨颇多,曾经一起奋斗的战友一个个离去,或是因为过于劳累,或是因为更高的薪水,让我明白每个人只不过都是打一份工,赚一份钱,混一口饭而已。闲话少说,第一季度自己系统的学习了J2EE开发模式,微服务化,Spring和Hibernate入门。第二季度主导了监控数据云化工作,放弃了关系型数据库,拥抱HBase,拥抱TS...
2019-02-02 14:58:34 1940 2
原创 Openresty配置Nginx并在ELB后获取用户真实IP
Openresty安装及介绍openresty中文站:link配置nginx环境变量:以默认安装路径/usr/local/openresty/nginx/为例export PATH=$PATH:/usr/local/openresty/nginx/sbin测试是否配置成功:[root@xxx ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/...
2018-09-28 11:07:41 4482
翻译 不同Windows系统版本下DNS超时重试时间
Windows系统默认值: 单DNS请求发起者-单网卡-单DNS服务器下: The behavior is the following (tested on Windows XP, Windows 7 and Windows 8 clients with a single NIC): Time (seconds since start) Action 0 Clie...
2018-09-14 16:05:55 5753
翻译 openresty相关网页
官网: https://openresty.org/cn/ 项目地址及说明文档: https://github.com/openresty/lua-nginx-module ECS: 119.3.60.59 pw@后加cdn https://github.com/openresty/lua-resty-dns 研究一下这个组件 看看能不能扩展成edns...
2018-08-28 17:40:03 1896
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人