自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

汤圆一号已就位

记录技术、心得、趣事,分享出来的才有意义

  • 博客(56)
  • 收藏
  • 关注

原创 java面试工作必备技能题 - SQL数据剔重

一. 题引编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个(Id 是这个表的主键)。IdEmail1john@example.com2bob@example.com3john@example.com例如,在运行你的查询语句之后,上面的 Person 表应返回以下几行:IdEmail1john@example.com2bob@example.com提示:执行 S

2020-07-23 20:01:13 291 1

原创 一点一滴学前端 - Object.keys()

一. 简介Object.keys() 返回一个对象的自身可枚举属性组成的数组这个对象可以是字符串、数组、对象等二. 语法格式Object.keys(obj)其中,obj可以是如下内容:obj = "";obj = 123;obj = [];obj = {};三. 示例1. 代码示例// 1.字符串返回字符串索引值let temp = "abcd";console.log("字符串 === ", Object.keys(temp));// 2.数组返回数组的索引值temp

2020-06-11 19:49:07 666

原创 一点一滴学前端 - join()

一. 简介join() 方法的作用是把一个数组通过分隔符拼接成一个字符串如:strs = [“a”, “b”, “c”, “d”];使用result = strs.join(’-’);可转变成 result = a-b-c-d二. 语法格式# 通用格式Array.join(separator)# 特殊Array.join() = Array.join(',') 三. 示例<html> <head> <title>test

2020-05-19 19:47:18 1408

原创 npm发包探索之旅

一. 建立npm账号方法一 官网注册登陆官网注册npm官网方法二 命令注册npm adduser执行命令后,依次输入要注册的账号、密码、邮箱(回车键确认),如下图所示注:注册的时候可能会有多种报错情况1.账号问题2.密码问题3.邮箱问题温馨提醒:账号注册好了之后,需要邮箱验证,只能PC验证,无法手机端验证!二. 发布一个新包第一步 登陆npm login登陆好之后,登陆官网 --> 点击头像 --> Auth Tokens会发现列表多了一条访问令牌t

2020-05-14 21:10:48 531

原创 一点一滴学前端 - Object.assign()

一. 简介Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象,它将返回目标对象。简单总结如下两点:如果对象存在,将覆盖对象如果对象不存在,将新增对象二. 语法格式Object.assign(target, ...sources)可以将多个对象合并到目标对象!!!三. 示例单参数示例const target = { name: "张...

2020-04-17 18:47:14 895

原创 Rax新手入门 - 快速构建多端应用

一. 准备首先,需要去官网熟悉一下快速开始 Rax官网1.创建项目npm init rax rax-demo-3注:rax-demo-3换成自己需要的项目名2.创建选项创建项目的时候会有一堆选项,蓝色字体是选项结果,你可以根据需求不同,选择不同的选项3.项目建成看到这个提示之后,项目就建成ok!二. 重点记录通过第一步之后,会生成项目结构如下:重点看下build.js...

2020-04-01 16:51:47 2191 4

原创 Springboot启动失败,报错'hibernate.dialect' not set

报错信息:今天启动了一个工程,报错信息如下:重点信息:Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]...Caused by: org.hiberna...

2020-03-23 19:31:17 1383

原创 人生商业模式趣谈

​“人生商业模式”,这个词是在一位大佬的博文中看到的,我就趁着这个主题,做个小总结。人生商业模式先看下图示,人生商业模式由三大部分组成:能力、效率、杠杆。针对这三大点,分别来聊一下自己的一些想法。| 能力上学的时候,经常听到一句话:你看别人家的谁谁谁,天天在家学习,学习成绩好是有原因的。其实,每个人进入社会都会选择自己的专业领域,像会计、销售、翻译等等,如果还想在这个领域比别人混得更...

2020-03-05 17:43:28 439

原创 扑克牌里的大学问 - 插入排序算法

一. 题引应该大部分人都会打扑克牌,抓牌的时候大家都会有一个习惯性的思维,把牌按照从小到大或者从大到小的顺序摆放(当然了,有部分人不按常理出牌)。如:手上是5 6 8 9,此时抓了一个7,肯定习惯性把7放在6和8中间这就是插入排序二. 插入排序在一个有序的数据序列里面,在这个排好的序列里面插入一个数,要求插入后仍是有序的这个时候就要用插入排序。那么,我们图形的方式看下,排序是怎样做...

2020-03-04 10:11:30 311

原创 “擂台比武式”的归并算法

一. 关于“擂台比武”假设现在有一堆人要进行擂台比武,他们的战斗力如下:[5, 1, 6, 3, 4, 2, 8]数字越小代表战斗力越强现在采用抽签模式,两两对决,胜者进入下一轮(如果奇数,单独人员可直接晋级),情况如下:那么,如何把所有人的战斗力排名算出来呢?二. 归并算法如同擂台比武,先拆分成分各组,直到细分为单个,开始比较后合并注意点:拆分的时候要注意奇偶数的问题合...

2020-03-03 09:46:35 407

原创 简单明了的方式学Lru算法

一. 简介Lru全拼Least Recently Used(字面意思最少、最近使用),即最近最近使用算法,是一种常用的置换算法。通俗解释:简单点说,就是把最近未使用的予以淘汰。二. 举例说明举个例子:定义一个容器只能存储3个对象第一次:依次添加对象A、B、C ==> [A, B, C]第二次:添加对象D ==> [B, C, D]此时把第一次添加的A对象给淘汰了...

2020-03-02 14:54:20 304

原创 服务注册中心(一)之zookeeper

1. 概念官网原话ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.解释ZooKeeper是用于维护配置信息,命名,提供分布式同步和提...

2020-02-02 09:29:53 309

原创 用故事的方式说Paxos和Fast Paxos算法

| Paxos1. 故事背景有一个25人的团队(Porposer:P1,P2 … P25),现在需要选举一个团队负责人(TL)有人说:可以采用投票制,但如果每个人都投自己,就会出现无解情况了…那么我们来看看Paxos是如何选举的~2. 选举方法邀请了5个评审人员(Acceptor:C1,C2,C3,C4,C5),奇数个!!同时选择一个临时负责人专门汇报情况(Leader:P1),P1...

2020-01-10 18:03:16 1218

原创 一句话讲解脏读、幻读、不可重复读

| 脏读核心要领:A事物数据读取后,B事物回滚,导致A读取数据有误时间顺序转账事务(A)取款事务(B)1开始事务2开始事务3查询账户余额为2000元4取款1000元,余额被更改为1000元5查询账户余额为1000元(产生脏读)6取款操作发生未知错误,事务回滚,余额变更为2000元7转入2000元,余额被更改为3...

2020-01-01 15:59:29 1218

原创 价值十个亿的淘宝搜索功能

看到这标题,是不是有小伙伴忍不住点进来看看

2019-12-31 17:34:56 2987

原创 Map四种遍历方式代码示例

import java.util.HashMap;import java.util.Iterator;import java.util.Map;/** * @author yanghao * @version MapTest.java, v 0.1 2019-12-25 09:24 */public class MapTest { public static void m...

2019-12-25 09:40:22 1109

原创 BigDecimal.setScale()方法实用技巧

方法使用scale() 方法用于格式化小数点setScale(1,BigDecimal.ROUND_DOWN) 直接删除多余的小数位,如2.35会变成2.3setScale(1,BigDecimal.ROUND_UP) 进位处理(无论小数如何),2.35变成2.4setScale(1,BigDecimal.ROUND_HALF_UP) 四舍五入,2.35变成2.4(目前最常用的金额处理方法...

2019-12-24 20:19:33 3099

原创 mybatis-dalgen之paging、optimize用法

一. 普通分页paging增加**multiplicity=“paging” paging=“UserList”**即可,生成代码如下TP_USER.xml<operation name="getAllUser" multiplicity="paging" paging="UserList" remark="查询所有用户"> SELECT * FROM TP_USER&...

2019-12-18 20:19:04 2081

原创 mybatis参数类型不匹配错误argument type mismatch

错误日志java.lang.RuntimeException: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: Error selecting key or setting result to parameter object....

2019-12-16 17:13:45 8193

转载 小汤圆的未来,你该如何做?

| 故事互联网寒冬将至,某互联网公司人事变动,部分小伙伴不得不离开这个大家庭,团队小负责人内心很无奈,与大家一起共事、吃饭、运动、聚会这么久,情感早已超出同事之外,但公司的决定也无能为力,只能做一个消息的传达者,和一些石沉大海的利益争取…从公司角度来说,为了保全自己,渡过寒冬,这没有问题,但事情就出在年底降至,并且临时通知。这一下子将这些人措手不及,年底要换工作,基本难上加难,部分公司已...

2019-11-29 11:25:49 305

原创 俄罗斯套娃?一维二维“大鱼吃小鱼”算法

|题引俄罗斯套娃是俄罗斯特产的木制玩具,一般由多个一样图案的空心木娃娃一个套一个组成,最多可达十多个,通常为圆柱形,底部平坦可以直立。颜色有红色,蓝色,绿色,紫色等。最普通的图案是一个穿着俄罗斯民族服装的姑娘,叫做“玛特罗什卡”,这也成为这种娃娃的通称(如下图所示)。|一维套娃 - 最长上升子序列正题给定一个无序的整数数组,找到其中最长上升子序列的长度如:输入: [2,6,1,9]...

2019-11-26 09:10:49 1256

原创 “趣味”or“烧脑”算法 之 王子救公主

| 题引相信大部分人童年都玩过大富豪这样一类的棋,棋格上面有加多少分,减多少分等等设置,比赛最终谁的分值最多(类似下面这个棋盘)| 正题设置小游戏为一个二维矩阵,王子位于左上角,公主位于右下角,每个单元格将会出现怪物或者补给怪物:打斗减血(负数表示,且为整数)补给:加血(正数表示,且为整数)王子只能往下或者往右前进,如果王子血量为0或负数,即为拯救失败,求王子至少需要多少初...

2019-11-20 17:21:24 762

原创 1024程序猿需要修炼的“内功心法”

今天的1024程序猿节日看来,五味杂陈,每个程序猿的心境都不一样,或喜或忧,当然,保持心态是个很重要的事情,简单说说最近的业内事和感受。一、61储蓄卡作为一个2012年创立的创业型互联网公司,发展到现在这个规模,真是一个大写的NB。但是最近这个事情,网上比较轰动,只有说两方都有一定错误吧,A需要巧妙的处理事情,B需要言而有信,就这么简单的事情。作为一个程序猿,我只能说,产品做得再NB,也需...

2019-10-24 21:04:43 346

转载 世界上最好的学习法:费曼学习法

你是否曾幻想读一遍书就记住所有的内容?是否想学习完一项技能就马上达到巅峰水平?除非你是天才,不然这是不可能的。对于大多数的普通人来说,可以通过笨办法(死记硬背)来达到学习的目的,但效率低下。当然,也可以通过优秀的学习法来进行学习,比如今天讲的“费曼学习法”,可以将你的学习效率极大的提高。费曼学习法是由加拿大物理学家费曼所发明的一种高效的学习方法,费曼本身是一个天才,13岁自学微积分,24岁加入曼...

2019-10-15 17:03:24 303

原创 经典水池接雨水算法

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。示例:输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 6输入: [2, 0, 2]输出: 2首先,分析一下解题思路:方...

2019-10-14 19:59:39 561

原创 脑洞大开的“小排列、大组合”算法

给定一个无重复元素的数组 candidates 和一个目标数 target,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的数字可以无限制重复被选取。 !!!可以被重复选取说明:所有数字(包括 target)都是正整数。解集不能包含重复的组合。示例 1:输入: candidates = [2,3,6,7], target = 7,...

2019-10-12 11:18:19 303

原创 算法入门习题集锦【leetcode】题库1

给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]class So...

2019-10-09 19:55:44 277

原创 基于SqlSessionFactory的Mybatis批量更新

实现方式比较多,这里主要说明sqlSessionFactory实现的批量更新1. 首先建一个spring工具类用来自定义获取Mapper类import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframe...

2019-09-17 11:01:07 2226 1

转载 我是高级程序员吗?

中午刚吃过饭,正准备打开网页看看新闻, 张大胖在微信上问我:“老刘,你说我是高级程序员吗?”我愣了一下:“你?工作了六七年了,现在还带着十个人的团队,应该是高级程序员了吧?”“我总是觉得老李才是高级程序员吧, 人家知识体系完整,基础扎实,精通xxx技术, 开发了系统的核心模块。还有老方,代码写得极为优雅漂亮,还特别擅长解决疑难杂症。”我说:“你说的都是高级程序员表现出的特质,在不同的公司对高...

2019-09-16 10:37:42 241

转载 为什么你的需求估算老是翻车?看看这个故事就明白了......

为什么软件开发的实际工作量通常比估计的高几倍? 我们来看一个故事就明白了:作者:Michael Wolfe翻译:童角大王我们决定沿着旧金山到洛杉矶的海岸线来一次远足旅行, 走到纽波特沙滩去看望朋友们。路线如下图:旅程一共400英里,按照每天行走10小时,时速4英里估算,10天就可以了!软件项目的计划一开始很完美。于是我们告知朋友们下个星期天的晚上备好晚餐。亲爱的朋友们已经迫不及待地...

2019-09-09 12:16:52 271

原创 jacoco代码覆盖率浅析

1. jacoco简述一个开源的覆盖率工具很多第三方的工具提供了对JaCoCo的集成,如sonar、Jenkins等目前只支持JDK 1.5及以上官网地址:https://www.eclemma.org/jacoco/github地址:https://github.com/jacoco/jacoco说明:为啥只能使用JDK 1.5及以上,因为jacoco使用的java代理,而j...

2019-09-05 16:02:26 1403

原创 java8 lambda使用方法

记录一下,利用java新特性 lambda表达式的使用方法,这里主要列举常用的3个(list转map,分组,过滤)1. list转map//组装list集合List<User> userList = Lists.newArrayList();userList.add(new User("111", "张三"));userList.add(new User("222", "李四...

2019-08-22 19:17:52 364 1

原创 mysql大于、等于、小于语法大全

第一种原符号 < <= > >= & ' "替换符号 &lt; &lt;= &gt; &gt;= &amp; &apos; &quot;第二种大于<![...

2019-07-23 12:07:45 11814

原创 idea自动生成serialVersionUID设置

问题引用了Serializable之后,提示并没有能直接生成serialVersionUID,如下图所示解决打开idea设置, Editor --> Inspections --> java --> Serialization issues然后把如下图红框的三个选项钩上,点击OK此时,我们再来提示代码,就会多了一个选项,点击自动生成serialVersionUID...

2019-07-16 16:51:36 798

原创 利用Socket实现客服机器人对话

经常有小伙伴可以看到一些大型的网站都会有一些客服机器人协助解决问题,今天在这里用Socket实现了一个简易的对话功能,感兴趣的小伙伴们可以往下看。先来看一下演示结果吧客户端启动后打印如下信息,这个时候可以在控制输入1,2,3来选择机器人小莉的问题解答小莉?你以为是下面这个⬇️不不不,小莉是给机器人起的名字,哈哈哈。。。扯远了。。。下面看下属于指令之后的情况:输入完全服务端...

2019-07-11 20:42:01 972

转载 消息中间件——RocketMQ与Kafka特性对比

        在互联网公司工作的RD们,对消息中间件最为熟悉不过了,如今随着分布式系统架构的盛行。一个高可用、高并发的消息中间件对我们来说尤为重要。在公司快速增长时期,是没有精力去研发这种基础中间件。所以如何选择就成了一个问题?这个问题也需要我们深入了解各个消息中间件的特性。我们就当前比较热门的消息中间件淘宝开源的R...

2019-07-04 15:44:13 276

原创 特殊符号大全

♠♣♧♡♥❤❥❣♂♀✲☀☼☾☽◐◑☺☻☎☏✿❀№↑↓←→√×÷★℃℉°◆◇⊙■□△▽¿½☯✡㍿卍卐♂♀✚〓㎡♪♫♩♬㊚㊛囍㊒㊖Φ♀♂‖@*&#※卍卐Ψ♫♬♭♩♪♯♮⌒¶∮‖€£¥$编号序号①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳⓪❶❷❸❹❺❻❼❽❾❿⓫⓬⓭⓮⓯⓰⓱⓲⓳⓴㊀㊁㊂㊃㊄㊅㊆㊇㊈㊉㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚...

2019-07-04 15:02:28 32789

原创 SSO单点登录(五)服务端集成dubbo版本

目录SSO单点登录(一)理论知识总结SSO单点登录(二)基于redis的服务端SSO单点登录(三)基于session的服务端SSO单点登录(四)客户端的设计与实现SSO单点登录(五)服务端集成dubbo版本持续更新中…回顾一下章节二、三,写的都是服务端,也就是SSO中心要做的事情,但是提供都是http接口,所以章节四对接的时候用的http接口去请求的,那么集成dubbo,利用rpc...

2019-07-02 09:06:28 1682

原创 程序猿养生篮球群里来了一个妹子

程序猿给人的第一反映是老实、呆板、腼腆。。。但其实骨子里闷骚一匹,今天就带大家来重新认识一下你们心目中的程序猿话说,我们部门同事之前有个经常活跃的篮球群 – 《养生篮球

2019-06-26 14:07:36 323

原创 SSO单点登录(四)客户端的设计与实现

目录SSO单点登录(一)理论知识总结SSO单点登录(二)基于redis的服务端SSO单点登录(三)基于session的服务端持续更新中…1.概述一直在写服务端做的事情,今天来看下客户端(目标子系统)是怎样对接的,我比较注重核心思想的表达,一些代码的细节,各位小伙伴自己补充,后面可以考虑编写一个完整的代码demo给大家,废话不多说,看下客户端怎样实现的2.客户端设计要点子系统跳转...

2019-06-21 11:21:54 1095

空空如也

空空如也

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

TA关注的人

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