自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

收破烂的小熊猫

"愿你走出半生,归来仍是少年..."

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

原创 520七夕表白,还不懂浪漫?4套代码教会你如何深情表白【建议收藏】❤️

马上又到了脱单的黄金时刻❤️七夕啦❤️!如果你有喜欢的女孩子,一定要趁着这个时候把喜欢说出口!!!但是该不会还有人表白在学校的操场上摆着爱心蜡烛抱一束花喊一堆人来围观吧!!!!No!!!!请你立刻马上放弃这个计划!!!毫无心意不说,对于女孩子来说是真的很社死啊!

2023-08-15 00:05:04 2717

原创 Java爬虫学习(安居客)

Java爬虫学习最近看着搭档使用python爬虫,觉得手痒。然后感觉自己学习java,应该也可以爬虫。就去百度学习了一下java的爬虫框架。国内有几种开源爬虫框架:gecco、WebMagic等。gecco学习文档:http://www.geccocrawler.com/tag/sysc/WebMagic:http://webmagic.io/docs/zh/因为我学习的是gecc...

2019-11-07 09:01:50 6003 15

原创 低质量的思考,让你离成功越来越远?

2023年伊始之际,你是否在新年的愿望清单列上了诸如一周阅读一本书,减肥10公斤,还有升职加薪的愿望?可当时间已流失掉三分之一时,你的愿望清单又完成了多少呢?恐怕现实还是一如既往的骨感,事情依然多到忙不过来,愿望还是愿望。当然,就算实现不了,我们也有充足的理由原谅自己,因为实在是忙到没时间学习、没时间锻炼,更没时间思考。生活节奏越来越快,我们会对太多的事情产生焦虑,工作焦虑、学习焦虑和金钱焦虑。我们已经很勤奋了,但为什么成功看起来却越来越遥远?低质量的思考,让你离成功越来越远。。。

2023-04-26 09:24:39 221 1

原创 wireshark抓包使用教程与通过抓包对TCP三次握手进行分析

wireshark抓包使用教程与通过抓包对TCP三次握手进行分析。。。。。

2022-06-14 19:06:32 2435 2

原创 算法打卡Day29_插入排序

茫茫天地,你只死心塌地眷着伞下的那一刹那温情。湖色千顷,水波是冷的,光阴百代,时间是冷的,然而一把伞,一把紫竹为柄的八十四骨的油纸伞下,有人跟人的聚首,伞下有人世的芳馨,千年修持是一张没有记忆的空白,而伞下的片刻却足以传诵千年。——《一风荷举》插入排序插入排序的主要思想是取未排序区间的元素,在已排序区间找到合适的位置将它插入,并保证已排序区间数据一直有序。重复这个过程,直到未排序区间中元素为空。案例如图所示,要排序的数据是4,5,6,1,3,2,其中左侧为已排序区间,右侧是未排序区间插入排序包

2022-05-15 22:08:56 247

原创 算法打卡Day28_冒泡排序

我想你了,可是我不能对你说,就像开满梨花的树上,永远不可能结出果。我想你了,可是我不能对你说,就像高挂天边的彩虹,永远无人能够触摸。我想你了,可是我不能对你说,就像火车的轨道,永远不会有轮船驶过。我想你了,可我,真的不能对你说。怕只怕,说了,对你,也是一种折磨。冒泡排序什么是冒泡排序呢?冒泡排序只会操作相邻的两个数据,每次冒泡操作都会对相邻的两个元素进行比较,看是否满足大小要求。如果不满足就让他们互换。一次冒泡会让至少一个元素移动到它应该在的位置。重复n次,就完成了n个数据的排序工作案例我们要对一

2022-05-15 21:44:52 237

原创 算法打卡Day27_leetcode _415字符串相加

相信自己有福气,但不要刻意拥有;相信自己很坚强,但不要拒绝眼泪;相信世上有好人,但一定要防范坏人;相信金钱能带来幸福,但不要倾其一生;相信真诚,但不要指责所有虚伪;相信成功,但不要逃避失败;相信缘分,但不要盲目等待;相信爱情,但不要盲目迷信。Leetcode原题415.字符串相加思路定义一个Stringbuilder字符存储对象设定 i,j 两指针分别指向 num1,num2 尾部,模拟人工加法;计算 carry = tmp // 10,代表当前位相加是否产生进位;计算 tmp = n1

2022-05-15 20:48:41 145

原创 算法打卡Day26_leetcode _20.有效的括号

假如人生不曾相遇,我还是那个我,偶尔做做梦,然后,开始日复一日的奔波,淹没在这喧嚣的城市里。我不会了解,这个世界还有这样的一个你,只有你能让人回味,也只有你会让我心醉。假如人生不曾相遇,我不会相信,有一种人可以百看不厌,有一种人一认识就觉得温馨。Leetcode原题20.有效的括号思路这题,很简单,我们只要利用栈来操作,为( 就将)放入栈,为[就将 ]入栈。为 { 就将} 入栈。然后如果是按照顺序入栈的,我们就可以出栈比较。如果最后比较不相同,或者栈不为空,那么说明字符串不有效 publ

2022-05-15 17:49:09 126

原创 算法打卡Day25_leetcode _461. 汉明距离

人生本来就寂寞,光鲜只是短暂的瞬间,大部分时间,大部分人都不无迷惘地做着一些不知道会不会有回应、会不会有结果的事情。如果不是发自内心地认同这件事情,还有什么能支撑我们做下去?——《一个人时你在做什么》巴小姐Leetcode原题461.汉明距离思路方法一使用原始包装类方法,可以直接获取。平时开发可用。 //方法一 包装类原方法 public int hammingDistance(int x, int y) { return Integer.bitCount(x

2022-05-15 17:19:43 134

原创 算法打卡Day24_leetcode _338. 比特位数

人生不过是居家、出门、又回家。我们一切的情感、理智和意志上的追求或企图,不过是灵魂的思乡病。想找一个人、一件事、一处地位,容许我们的身心在这茫茫的世界有个安稳的归宿。Leetcode原题338.比特位数思路方法一 动态规划a[i]表示i的二进制中1的个数,那么bits[i-1]就是bits[i]拿掉一个1之后的值,i & (i - 1)就是去掉最低位的一个1。,因此 i & (i - 1)是比 i 小的,而且i & (i - 1)的1的个数已经在前面算过了,所以i的1的

2022-05-15 16:51:00 98

原创 算法打卡Day23_leetcode _136. 只出现一次的数字

回忆再美好,即便再次拥有,也找不回最初的感觉。Leetcode原题136.只出现一次的数字思路这里的方法有很多,有暴力遍历查找的、使用hashmap存储查找的。这里利用异或的规律使用一下巧妙一点的方法。异或的3个定律交换律:a ^ b ^ c <=> a ^ c ^ b任何数于0异或为任何数 0 ^ n => n相同的数异或为0: n ^ n => 0方法 一 异或 /** * 思路: 利用异或 * @param nums

2022-05-15 12:48:55 197

原创 算法打卡Day22_leetcode _226.翻转二叉树

每一个匆匆上路的人,都向往着在他乡看到不同寻常的自然历史人文景观。然而,出发之后往往发现,人在路上可能才是最大的收获,因为许多旅游景观只是一个文化碎片,流淌不出真正的文化气息。Leetcode原题226.翻转二叉树思路我们根据示例可以发现,翻转二叉树,其实就是左右子节点树,相互变化。方法一 递归class Solution { public TreeNode invertTree(TreeNode root){ if (root ==null){

2022-05-07 22:40:38 510

原创 算法打卡Day21_leetcode _110.平衡二叉树

这世上,有一条路不能选择,那就是放弃的路;有一条路不能拒绝,那就是成长的路。新时代要有新作为,每个人都是一种色彩,都是“不一样的烟火”。——《做好人生的选择题》Leetcode原题110.平衡二叉树思路什么是平衡二叉树呢,就是它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。所以我们的思路只要分别计算出左右子树的高度,然后相减绝对值小于1就判为平衡二叉树,否则返回-1,不是平衡二叉树。方法一 递归class Solution { publi

2022-05-07 22:28:26 600

原创 算法打卡Day20_leetcode _104. 二叉树的最大深度

“蒹葭苍苍,白露为霜,所谓伊人,在水一方。”这是撩动心弦的遇见;“这位妹妹,我曾经见过。”这是宝玉和黛玉之间,初次见面时欢喜的遇见;“幸会,今晚你好吗?”这是《罗马假日》里,安妮公主糊里糊涂的遇见;“遇到你之前,我没有想过结婚,遇到你之后,我结婚没有想过和别的人。”这是钱钟书和杨绛之间,决定一生的遇见。今天和你们遇见,让我们彼此之间,感受到更多的美好。Leetcode原题104. 二叉树的最大深度思路二叉树深度就是 跟节点到叶子节点的 最大距离 。即根节点到最远叶子节点的最长路径上的节点数。方

2022-05-06 22:50:10 851

原创 算法打卡Day19_leetcode _101. 对称二叉树

这个世界根本不存在“不会做”、“不能做”,只有“不想做”和“不敢做”,当你失去所有依靠的时候,你自然就什么都会了。Leetcode原题101.对称二叉树思路依据题意,要求判断二叉树是否对称。我们可以观察发现,左子树的左节点和右子树的右节点相等。左子树的右节点和右子树的左节点相等,即可。这中间,若左右子树的值不相等,或为空,那必然不是对称二叉树。方法一 递归class Solution { public boolean isSymmetric(TreeNode root) {

2022-05-05 23:52:09 136

原创 算法打卡Day18_leetcode _145. 二叉树的后序遍历

我知道,生活越接近平淡,内心越接近绚烂。经历了世事的智者,终于领悟到,太过用力太过张扬的东西,一定是虚张声势的。而内心的安宁才是真正的安宁,它更干净、更纯粹,更接近那叫灵魂的地方。Leetcode原题145.二叉树后序遍历思路前面做了前序遍历、中序遍历,不出意外还有后序遍历。后序遍历(LRD)是二叉树遍历的一种,也叫做后根遍历、后序周游,可记做左右根。后序遍历有递归算法和非递归算法两种。在二叉树中,先左后右再根,即首先遍历左子树,然后遍历右子树,最后访问根结点。方法一 递归实现class

2022-05-04 22:57:53 636

原创 算法打卡Day17_leetcode _144. 二叉树的前序遍历

“善学者尽其理,善行者究其难。”读书学习的最高境界,在于知行合一,成就更美好的自我。读书、明志、力行,才能读出如磐的理想信念,不畏浮云遮望眼,经受住各种斗争的考验:读出坚定的宗旨意识,俯首甘为孺子牛,默默付出、无私奉献;读出昂扬的苦干精神,千磨万击还坚劲,永葆披荆斩棘的斗志;读出创新的品格,勇立潮头敢为先,争当自立自强者。Leetcode原题144. 二叉树的前序遍历思路上一篇leetcode _94. 二叉树的中序遍历 。这一篇的做法类似。首先来说一下什么是前序遍历。前序遍历:就是先遍历跟

2022-05-04 22:19:53 101

原创 算法打卡Day16_leetcode _94. 二叉树的中序遍历

人生如一场修行,得意时“一日看尽长安花”,艰难时“倒新停浊酒杯”。但生命的跋涉不能回头,哪怕“畏途巉岩不可攀”,也要“会当凌绝顶”。哪怕“无人会,登临意”,也要“猛志固常在”。从经典中汲取“九万里风鹏正举”的力量,历练“也无风雨也无晴”的豁然,“待阳日”,我们“还来就花”。Leetcode原题94.二叉树中序遍历思路首先说一下二叉树。什么是二叉树呢,二叉树就是每个节点最多只有2个的有序树。通常子树的根被称作“左子树”和“右子树”。”中序遍历是二叉树遍历的一种,也叫做中根遍历、中序周游。在二叉树

2022-05-03 22:58:53 731

原创 算法打卡Day15_leetcode _232 用栈实现队列

选择是一时的人生,但人生是永恒的选择。关键是,为了什么去一往无前,如何才能锲而不舍。——《做好人生的选择题》Leetcode原题232.用栈实现队列思路我们都知道栈是”先入后出”,队列是先入先出。 而题目要求使用2个栈去实现一个队列的特性。那么怎么操作呢。我们可以定义一个入栈,一个出栈。 添加元素时,我们放入inStack中,但是因为栈的特殊先入后出。比如 1 2 3.入栈以后变为 3 2 1 。这个时候是 反向的,而队列应该是 1 2 3才对。 所以我们在出栈的时候操作。判断outStatc

2022-05-02 15:32:14 345

原创 算法打卡Day14_剑指offer22 链表中倒数第k个节点

有这样一句话:上等人,有本事,没脾气中等人,有本事,有脾气下等人,没本事,有脾气。温和之人,一定不会差。良言一句三冬暖,恶语伤人六月寒。说话温和的人,能让别人听着舒心悦耳,能够使人心情趋于平静。所以,做一个沉稳之人吧,耐心去做一件事情,别抱怨,别逃避,努力做好自己。剑指offer 原题热度 【美团】输入一个链表,输出该链表中倒数第k个节点,为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第一个节点,例如,一个链表有6个节点,从头节点开始,他们的值依次是1、2、3、4、5、6.这 个

2022-05-02 11:38:23 629

原创 算法打卡Day13_leetcode _876. 链表的中间结点

“月缺不改光,剑折不改刚”有志向的人自信自强;“君子量不极,胸吞百川流”有志向的人心有远方;“丈夫非无泪,不洒离别间”有志向的人情深意长;“及时当勉励,岁月不待人”有志向的人不会虚度时光;“人生感意气,功名谁复论”有志向的人看淡名利;“感时思报国,拔剑起蒿莱”有志向的人是最可靠的力量。“愿君学长松,慎勿作桃李”新时代,新舞台。让我们“共矜然诺心,各负纵横志”。Leetcode原题876.链表的中间结点思路这一题,还是比较简单的,让输出中间的链表节点值。如果是链表长度是奇数可以直接输出中间数。偶数

2022-04-30 22:59:02 2897

原创 算法打卡Day12_leetcode _234 回文链表

所有的努力,不是为了让别人觉得你了不起,而是为了能让自己打心里看得起自己,人生的奔跑,不在于瞬间的爆发,取决于途中的坚持,你纵有千百个理由放弃,也要找一个理由坚持,能激励你,温暖你,感动你的,不是励志语录心灵鸡汤,而是身边比你优秀的人比你还努力!自勉!Leetcode原题234 回文链表思路理解题,什么是回文链表呢。就是我们无论成正序还是倒序得到的值都是一样的。比如 1-2-3-3-2-1 或1-2-1 、1-2-3-2-1。 而 1-2-3 或 1-2 这样的正序和倒序结果不一致的当然就不

2022-04-28 23:31:56 686

原创 算法打卡Day11_leetcode _206 反转链表

当你攥紧拳头的时候,你手里可能是空空如也,除了手汗,什么也拿不到;但是当你摊开双手的时候,清风可以涌入你的怀中,阳光可以聚拢在你的手心,你拥有的,将是整个世界的美好与诗意。Leetcode原题206.反转链表思路这题听说还是字节、微软、美团阿里巴巴的热度题目。这题要求链表反转,也就是本来是前面指向后面的,现在要求后面的倒着指向前面.嗯,你是不是也想想会了,敲起了就不知道如何下手,没关系,我也是~~迭代法假设链表为 1—>2—>3.现在我们要改为3—>2—>1在遍历链

2022-04-27 23:46:43 755

原创 算法打卡Day10_leetcode _160.相交链表

“日月不肯迟,四时相催迫。”在这个属于奋斗者的新时代,人人都有追梦的权利,人人也都是梦想的筑造者。——《我们都是追梦人》Leetcode原题160.相交链表思路这一题的目标是要判断两个链表是否存在相交。若不考虑时间复杂度和空间复杂度。我有2种思路方法1:暴力穷举法,分别遍历判断两链表,再判断节点是否相同。方法2:采用hashmap时间复杂度O(m+n) ,空间复杂度O(m)将两个链表的节点存入hashmap,再判断是否有相同节点,hashmap长度为较长的一个链表长度。方法3: 采用了

2022-04-25 23:05:37 509

原创 算法打卡Day9_leetcode _142.环形链表 II

善学者尽其理,善行者究其难。”读书学习的最高境界,在于知行合一,成就更美好的自我。读书、明志、力行,才能读出如磐的理想信念,不畏浮云遮望眼,经受住各种斗争的考验:读出坚定的宗旨意识,俯首甘为孺子牛,默默付出、无私奉献;读出昂扬的苦干精神,千磨万击还坚劲,永葆披荆斩棘的斗志;读出创新的品格,勇立潮头敢为先,争当自立自强者。Leetcode原题142.环形链表 II 思路采用快慢双指针fast和slow. 快指针fast每次走2下,慢指针一次走一下。如果存在环形,那么总会有机会快指针会追上慢指针,

2022-04-25 00:07:55 1021

原创 算法打卡Day8_leetcode _141.环形链表

想象中的自由快乐,从来都有它的边界与代价。老子曰:“有之以为利,无之以为用”,兴趣之所以吸引人,正是它远离功利动机的“无用”之用,让人可以自由自在,沉浸在心流之中。而一旦兴趣成为任务,我们总会为了具体的目标而奔走。要是再作为一项工作,各种辅助性、支撑性的事情也会接踵而至。Leetcode原题141.环形链表思路采用快慢双指针fast和slow. 快指针fast每次走2下,慢指针一次走一下。如果存在环形,那么总会有机会快指针会追上慢指针,两个在一个节点处相遇。 //采用快慢双指针

2022-04-24 23:54:17 579

原创 算法打卡Day7_leetcode _ 83. 删除排序链表中的重复元素

.其实真正的有钱人是很低调的,外表是看不出来的。就拿我来说,虽然我在外面经常骑小黄车,但谁又会知道其实晚上睡觉电风扇都是开三挡。。。Leetcode原题83.删除排序链表中的重复元素思路这题,看题目以后,其实理解起来还挺简单的。因为它本身是有序的链表结构,要求去除重复的数字。我们只需要判断当前节点的val值和下一节点的val值是否相等。若相等,则跳过下一节点。将当前节点的next指向 它下一个节点的下一个节点就好了。如不相等,则当前节点指向下一节点。方法一 、迭代删除public ListN

2022-04-23 23:27:42 553

原创 算法打卡Day6_ leetcode21. 合并两个有序链表

后来, 我漂泊他乡,故乡的樱桃却是年年红如故。。。Leetcode原题21.合并两个有序链表思路其实我本人对链表这一块学得挺模糊的。我们知道链表有分单链表、双链表、循环链表。单链表的Node数据结构,是一个元素data,和存储指向下一个节点的next。这一道题刚好是单链表入门题。方法1 循环双指针法我们可以设立一个哨兵节点result,用于方便返回合并后的链表。并维护一个指针pre,只要不断的操作这个指针,分别比较 l1 和 l2 两个链表头节点的值,谁的值小,pre就将指针指向较小的一方

2022-04-23 23:15:31 557

原创 小傻蛋来做一周学习总结吧~~~

我亲爱的你,不要把自己困在忙碌里,不如给自己一点时间,闭上眼睛,听听风穿过树叶的声音,感受大街小巷的烟火气息,体味人世间的各种美好。我亲爱的你,不要把自己困在焦虑中,和父母拥抱一下或者打个电话,和朋友聊聊天喝个茶,被爱包围的时候你就不会孤单。无论多忙、无论多难,每天都要记得好好吃饭、好好睡觉、好好生活、好好爱人、好好爱自己。愿你永远会为了一朵盛放的花而感到快乐,会为了一顿简单的家常菜笑意盈盈。一周学习总结一、算法方面本周算法刷了5题,都是简单数组算法,学习了解了时间复杂度、空间复杂度、以及如何去

2022-04-22 16:48:13 1963

原创 算法打卡Day5_lecode_448. 找到所有数组中消失的数字

昙花一现,却等待了整个白昼;蝉鸣一夏,却蛰伏了好几个四季。不要急于一时的成败,你只需要默默努力,积蓄实力,用心耕耘,静待花开。—摘自《人民日報》Leetcode原题448. 找到所有数组中消失的数字移动零思路看到題目的時候,给定n个整数的数组,找出数字在区间在【1,n】不存在的数。我的第一反应是可以利用hashmap存储nums 的数。然后再判断[1,n]范围谁不存在,直接用数组返回就好了。结果题目居然有个要求,不能使用额外的空间,且时间复杂度为O(n).只能另辟蹊径了。然后想到了一个办法

2022-04-21 23:44:32 359

原创 算法学习入门Day4_lecode_283移动零

要问谁会保护你,其实不是我,是我手里的板砖,嘿嘿嘿~Leetcode原题283.移动零思路应题目要求,必须在不复制数组的情况下,原地进行操作,所以这里我们的想法很简单,利用双指针去操作数组,当遍历时发现前面的数组元素不是0时我们就往前挪动,挪完以后,剩余的数都是0.再进行赋值即可。双指针public void moveZeroes(int[] nums) { if(nums==null){ return; }

2022-04-20 22:01:45 309

原创 算法学习入门Day3_lecode_88 合并两个有序数组,哦 上帝。

很喜欢一段著名的祈祷词:愿上帝赐我一个平静的心,去接纳我所不能改变的事物;赐我无限勇气,去改变那有可能改变的东西;并且赐我智慧去辨别这两者的差异。Leetcode原题88. 合并两个有序数组思路拿到题目以后,我们还是由简单思路再到精妙的设计思路。 题目的要求是将nums1和nums2两个数组合并。且我们已经知道了nums1数组中前m个元素为需要合并的元素,后n个元素为0.方法一 直接合并排序那么我们的第一种想法,就是可以从nums1 中下标为m的元素开始,存储nums2的元素。然后再利

2022-04-20 10:48:47 163

原创 算法学习入门Day2_Leetcode_1 两数之和

歌曲《平凡的一天》下面有条热评是这样说的:“小时候想过金碧辉煌灿烂的一生,长大后,平凡简单地过一生却那么难。云也轻,风也淡,没有牵绊、平凡的一天,我愿意用一切去交换。”Leetcode原题1.两数之和思路本题中,操作数组就一个nums,实现的目的是寻找数组中能相加等于目标值的两个数的下标。方法一 枚举法双层循环遍历数组中的元素,找到2个能相加等于目标值的数就返回下标。public class Solution { public int[] twoSum(int[] nums, int

2022-04-18 22:12:04 315

原创 算法学习入门Day1_Leetcode_70 爬楼梯 ~还是辣么滴丝滑 雀氏润

学习爬楼梯递归算法思路

2022-04-16 23:04:08 286

原创 面试官:平时工作中有没有做过一些性能优化相关的工作呢?

一天不学习,我就是垃圾,啊啊啊啊啊!好长一段时间没学习了,,我要裂开了!!!面试官:平时工作中有没有做过一些性能优化相关的工作呢?在面试中你可能会遇到面试官问你,小老弟,你在平时日常工作中有咩有进行过性能优化啊!这个时候可能你可能都心里MMP了: 公司里那么多大佬。哪能轮得到我来优化…但是还是得满怀笑容得说:“ 嗯嗯 ,这个有的…"...

2022-01-07 17:36:04 747

原创 Java面试分享之List源码会问哪些问题?

怀才就像怀孕,时间长了总会藏不住的......前言List作为我们开发中经常使用的集合类型,在面试中也会经常被问到,作为一个熟读八股文并精通源码的靓仔,心中对 List 的总体结构和细节有所了解的话,基本面试问题都不大。1 面试题1.1 谈谈你对 ArrayList 的理解?多面试官喜欢这样子开头,考察面试同学对 ArrayList 有没有总结经验,介于 ArrayList 内容很多,建议先回答总体架构,再从某个细节出发作为突破口,比如这样:ArrayList 底层数据结构..

2021-09-15 23:13:55 191

原创 傻瓜,自定义注解你会写了吗?

有些人总说自己过的不好,一上秤却又胖了不少“我可以吃一口吗,就一小口~”前言在工作中经常发现,我们经常会使用一些spring体系的注解。如果面试的时候,你跟老板说你会使用注解,老板觉得你这个人还行;但是如果你和老板说你会自定义注解解决问题,老板肯定就会眼前一亮,这是个人才鸭,嗯,小伙子20k够不够…学习目标1)自定义一个注解,搭配aop实现一个日志打印功能2)结合案例,对注解应用深入了解自定义注解实现准备工作先创建一个springboot项目,并引入aop相关依赖。 &lt.

2021-04-08 21:49:29 210

原创 肝了一早上,终于把mybatis的一级缓存和二级缓存原理搞懂了~

今天的沉淀,是助力明天飞向远方的基石~每当自己沉思下来写学习文章的时候,心情总是会得到一片宁静。缓存的概念我们在查询数据时,经常去查询一些条件相同、数据的正确与否对最终结果影响不大的数据,并且每次查询总是去数据库获取连接查询,这样的操作不仅浪费时间还很消耗数据库连接资源。而缓存就是将数据临时存储于内存,这样就能减少数据查询交互的通讯量,减少处理次数,提高我们的查询效率。会话会话就是用户与系统的一次完整的交流,在一次交流过程中会包含多次请求响应,然后发送的请求都只是同一个用户,SqlSessi.

2021-03-20 12:31:48 1004

原创 基于Netty实现群聊功能

有你的日子你就是一切,没你的日子一切都是你又是一天新的开始,让我来带领你打开任督二脉。。。前言:在前面有了对NIO、BIO知识的学习,以及对netty结构组的基本了解,接下来将学习一下如何使用netty去实现一个群聊功能,读者可自行去对比基于NIO、BIO、Netty实现群聊功能的不同方式,以更深刻的理解IO网络编程。学习内容:整体思路:1) 编写一个Netty群聊系统,实现服务器端和客户端之间的数据简单通讯(非阻塞)2) 实现多人聊天3) 服务器端:可以监测用户上线,离线,并实现消息.

2021-03-11 11:33:57 614 5

原创 基于NIO实现群聊功能

快过年了,兜里还没钱。。。。贫穷的我只能开始打起了理财的歪主意买基金,可是最近由于疫情原因,A股走势一直不好,理财使本来就不富裕的我,雪上加霜。。。。。。。基于NIO实现群聊功能...

2021-01-31 15:33:15 193

银联8583报文解密工具

583协议是基于ISO8583报文国际标准的包格式的通讯协议,8583包最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。8583包前面一段为位图,它是打包解包确定字段域的关键代替。8583协议多在POS机的开发上使用。此报文包括交易报文的结构、格式以及报文域,基本是由64个字段域、最多128个字段域组成,每个域都有个性化的规定,并有定长与变长之分。

2024-03-23

js 实现国密sm2、sm3、sm4 加密解密demo

前端纯js加密、以及后端java解密代码。国密即国家密码局认定的国产密码算法。常用的主要有SM2,SM3,SM4。 SM2:椭圆曲线公钥密码算法是我国自主设计的公钥密码算法,为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。 SM3:消息摘要。可以用MD5作为对比理解。该算法已公开。校验结果为256位。 SM4:对称加密,密钥长度和分组长度均为128位。 由于国际环境(与美国的关系),我们在加密领域也基本切换为国密算法。 最近公司也是要求使用国密加密算法, 折腾了半天,也没有找到合适的资源,所以我这里统一提供了sm2\sm3\sm4 js 前端解解密的demo.需要的小伙伴自行下载

2022-10-11

CMMI项目实施可交付文档(项目各阶段详细设计)

CMMI的全称为Capability Maturity Model Integration,即能力成熟度模型集成。CMMI是CMM模型的最新版本。早期的CMMI(CMMI-SE/SW/IPPD),SEI在部分国家和地区开始推广和试用。随着应用的推广与模型本身的发展,演绎成为一种被广泛应用的综合性模型。 基于目前发展广泛,作为项目管理里比较重要的一个认证体系,与ISO认证的区别,相信没有接触过的小伙伴,是“丈二和尚摸不着头脑”,既然它存在一定有他的道理。这里分享的是CMMI 项目实施可交付的文档。包括内容:项目可实施可交付文档、PMP管理有用模板。其中软件项目实施各阶段交付模板汇总共有45分。PMP5大过程

2022-08-15

金融数据+加密机+程序员手册

pos机在进行交易之前,需得先进行 POS签到。主要是连接后台验证该POS机设备时合法的,以及下载最新的工作密钥。所以在终端每次绑定以后,会请求获取下发工作秘钥。而工作秘钥的获取方式是通过加密机使用本地LMP秘钥加密终端明文主密码获取得到加密以后的终端主密钥,然后再通过加密后的ZMK秘钥请求加密机加密获取PINKEY和终端工作秘钥。最后将工作秘钥进行下发。终端加载后会去使用主密钥验证工作秘钥是否有效,有效即可交易。这其中了解了大概的秘钥加载流程后,再描述一下几个相关概念: 在下载秘钥过程中有使用到加密机。 主要用于实现对主机应用层数据加/解密、消息来源正确性验证、密钥管理等。全国大多数商业银行,城市一卡通系统、公交卡系统、社保卡系统、加油卡系统,金融IC卡系统、电子联行系统、综合业务系统、信用卡系统、银证转帐系统、企业银行系统、网上证券交易系统都有应用.

2022-05-25

jar包修改神器.rar

可修改jar包内package包名,解决jar包不同版本冲突

2021-11-18

flowable官方文档汉化版_text.rar

流程引擎基础案例,全中文文档 Flowable可以作为一个jar替换掉到一个已编译的应用程序中并继续正常工作。 如果在MINOR版本中引入API更改,则策略是保留向后兼容的版本,并使用@Deprecated注释。这样被弃用的API将在稍后被删除两个 MINOR版本。

2021-11-18

独家liquibase操作手册.rar

本文档适用于想要使用liquibase的小白,文档内容涵盖liquibase的详细操作

2021-09-01

java开发支付宝支付案例

因为真实环境下的支付需要企业营业执照,所以平时我们进行支付开发的时候只能使用沙盒去测试。这里我也是使用的支付宝沙盒来模拟真实的支付宝开发。

2020-10-17

图片压缩下载.zip

最近碰到个需要下载zip压缩包的需求,于是我在网上找了下别人写好的zip工具类。但找了好多篇博客,总是发现有bug。因此就自己来写了个工具类。 这个工具类的功能为: (1)可以压缩文件,也可以压缩文件夹 (2)同时支持压缩多级文件夹,工具内部做了递归处理 (3)碰到空的文件夹,也可以压缩 (4)可以选择是否保留原来的目录结构,如果不保留,所有文件跑压缩包根目录去了,且空文件夹直接舍弃。注意:如果不保留文件原来目录结构,在碰到文件名相同的文件时,会压缩失败。

2019-09-17

CAS server可直接部署的war包

 现在市场上大多数单点登录项目,都采用的是CAS(即Central Authentication Server),CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目.提供的war包可直接放在tomcat下运行。

2019-08-21

springboot-mail.zip

发送邮件应该是网站的必备拓展功能之一,注册验证,忘记密码或者是给用户发送营销信息。正常我们会用JavaMail相关api来写发送邮件的相关代码,但现在springboot提供了一套更简易使用的封装。

2019-08-13

springbootrabbitq.zip

Spring Boot与RabbitMQ的整合,内容非常简单,纯API的调用操作。实现了生产者生产消息发送到消息队列,消费者通过消息中间件获取消息

2019-08-13

2018年下半年网络工程师上午+下午试题(含答案).rar

2018年下半年网络工程师【上午+下午】真题&&参考答案&&详解.zip”里面包含上午下午两个分开的文档,并且真题与答案也是分开的,方便打印。 PS:我的主页有很多相关的资源,欢迎访问下载。 2018年下半年网络工程师【上午+下午】。

2019-05-22

2018年上半年网络工程师上午+下午试题.rar

2018年上半年网络工程师【上午+下午】真题&&参考答案&&详解.zip”里面包含上午下午两个分开的文档,并且真题与答案也是分开的,方便打印。 PS:我的主页有很多相关的资源,欢迎访问下载。 2018年上半年网络工程师【上午+下午】。

2019-05-22

java邮箱验证码开发

使用163邮箱或qq邮箱向目的邮箱账号发送信息

2019-01-10

空空如也

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

TA关注的人

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