5 程序员爱酸奶(QuellanAn)

尚未进行身份认证

专注springboot、springcloud、docker、redis。乐于分享,欢迎关注

等级
TA的排名 5k+

天哪!手动编写mybatis雏形竟然长这样

前言mybaits 在ORM 框架中,可算是半壁江山了,由于它是轻量级,半自动加载,灵活性和易拓展性。深受广大公司的喜爱,所以我们程序开发也离不开mybatis 。但是我们有对mabtis 源码进行研究吗?或者想看但是不知道怎么看的苦恼吗?归根结底,我们还是需要知道为什么会有mybatis ,mybatis 解决了什么问题?想要知道mybatis 解决了什么问题,就要知道传统的JDBC 操作存在哪些痛点才促使mybatis 的诞生。我们带着这些疑问,再来一步步学习吧。原始JDBC 存在的问题所

2020-05-25 19:12:29

面试不是无情物,参数注解知多少?

前言前两天面试的,面试官问我用在参数上的注解有哪些?我想了一下说有RequestParm,每个参数都需要RequestParm修饰,可以设置required 等于false,表示该字段非必传。面试官:还有呢?我:只知道这么多了,RequestParam 注解用的比较多,其他的没怎么用?面试官:好了,今天的面试就到这,后续有消息会通知你。挂掉电话我:???结束调面试后,好好的看了下用在参数上的注解。用在参数上的注解,主要是controller 层,用来接收请求中的参数。常用的有三种@Re

2020-05-08 18:10:36

cannot create temp file for here-document: No space left on device

前言买了一个云服务器,部署了一个项目上面,然后过了两个月没有管他,今天兴致来了上去看看,当我想要用tab 键获取提示时就报这种错。什么鬼tab 键不能用了?网上搜了一下,发现竟然是磁盘空间满了导致的。发现使用下面命令看下df -h发现我50g 的磁盘空间竟然满了,那个文件夹下占用了那么多磁盘空间呢?我接着用下面命令查下du -sh /*发现root 目录下占了42g 肯定...

2020-05-07 16:39:40

emoji-java 用来表情转换,你会用了吗?

前言今天项目中遇到一个需求,APP的问题上报和意见反馈提意见的时候,需要支持表情。前端没什么,但是如果存入到mysql 就会报错了。导致的原因是,Emoji表情占用4个字节,但是MySQL数据库UTF-8编码最多只能存储3个字节。所以存储就会报错。想要解决上面的问题,可以修改mysql 的编码格式,这里就不建议了,大部分的还是3个字节的utf-8的编码。如果直接改成4个字节的编号,会造成资源浪...

2020-05-06 17:51:07

手撸一个自定义starter,它不香吗

前言springboot 中有很多的starter 。我们用起来很爽不是吗,之所以这么爽难道不是因为我们少了很多配置吗,之前我们想要使用jdbcTemplete 是不是需要在xml 文件中配置bean 后才能使用。有被xml 一推配置支配的工具吗?为了解救从多处于水深火热的程序猿们,springboot 横空出世,带着starter 的利刃来普度我们了。我们在心怀感激的同时,是不是也得有一...

2020-04-26 12:11:57

主线程等待所有子线程执行完后执行

前言前段时间一直在做数据同步的工作,就涉及到数据量比较大,采用多线程来同步,但是地市又没有分表。将一下场景吧。假设一共有10张表数据要同步,每张表包含10个地市,每张表需要这10个地市的数据都同步完了,然后统一进行一次处理。开始设想的是,只为每张表启动一个线程,然后这一个线程直接跑完所有地市。结果发现效果很差,同步一次需要大概半小时左右才能将数据同步完,所以就想着改进,给每个张表分配一个主线...

2020-04-09 13:49:48

webService 实战篇--客户端调用

前言好久都没有使用webservice 进行接口联调了,今天需要一个和第三方的webservice 接口进行联调。整体是很简单的。记录一些坑。wsdl首先由于测试环境网络不互通,对方提供的开始提供的wsdl 死活不能解析成功,后来找他们算账,是他们提供的wsdl 文件格式有问题。我们这里提供最终的wsdl 文件吧<?xml version="1.0" encoding="UTF-8...

2020-04-02 16:45:50

springboot 升级依赖的第三方jar包

前言我们在实际工作中往往会遇到这样的问题,我们项目依赖的一些jar 包升级了,修复了一些漏洞,为了安全考虑,我们也需要进行升级,通常来说,我们不会深度的用到依赖的jar 包,所以升级一个小版本直接替换就完事了。但是Springboot项目滨改没有我们想的那么简单。打包方式首先还得从打包方式说起,我们使用的打包方式不是直接将将依赖的jar 和配置文件都打在可运行的jar 中。我们打包方式如下...

2020-04-02 15:09:06

多线程处理大数据问题

前言这两天公司要求也一个工具,对27类资源进行计算,看这个资源属于哪一个网格。一个资源的数据量大概是1万左右。然后网格的数据大概在5000.也就是说每种资源的每条数据都要个这5000多条的网格进行匹配,正常的话,一条数据找到对应的网格需要1分钟。但是要求整个一晚上跑完。所以就做了如下调整。每天定时任务执行一次。获取网格信息和27类资源信息。然后27类资源分别27个线程处理。然后每个资源中...

2020-03-23 17:40:17

如何使用 Springboot 爬取页面信息?

前言捣鼓了两天,总算是做了demo 啦。整体思路如下:可以看到整体思路还是比较简单的,真机IP访问的话,很容易被限制,所以增加代理访问。主要就是三步走,1将url 存入到url 缓存池中。2 将代理信息存入到代理池中,3.分别从url缓存池和代理池中取出一个进行爬取页面,并将页面数据解析出来。下面来仔细看看如何实现的吧。代理相关代理的信息可以从如下两个地址中获取。https://raw...

2020-03-13 11:56:50

困扰我两天的问题(nginx配置好ssl证书,https却不能访问)

前言还得这个问题说起。我买了服务器、域名、和申请的证书。什么都配置好之后,但是https 无法正常访问。http 可以正常访问。详细问题地址:腾讯云配置了ssl 证书,浏览器却无法访问?分析这个问题折磨了我整整两天,我将nginx 配置换了一遍有一遍,确认配置是没有错的,都是从安装指导上copy 下来的。并且telnet 443 端口也可以通。所以觉得没有问题。然后怀疑是证书的问题,...

2020-03-05 11:55:54

升级nginx ,为nginx配置https证书

前言买了服务器和域名后真的是为所欲为,发现自己的网站总是提示不安全,所以就想着要弄一个证书。刚好腾讯云上有免费申请的证书,所以就弄了一个。申请证书我的证书是在腾讯云上申请的,很快也很方便中,具体怎么操作,就不说了。申请好之后下载。解压后获取如下文件升级nginx我发现我服务器上的nginx 上次竟然安装的是1.6.2 版本太低了,不支持ssl.支持ssl 需要nginx 1.10....

2020-03-04 10:57:33

将个人博客迁移到云服务器上

前言之前通过github 和coding 来搭建的个人博客,但是搜索引擎一直不是很好,并且总感觉不稳定,访问很慢。最近刚刚买了一个云服务器,所以就打算将个人博客迁移到云服务器上。服务器环境准备我们登录云服务器,主要做一些准备工作。安装gityum install git创建git 用户这里我们需要创建一个git 用户来做服务器库。方便我们本地将文件推送到服务器库。adduser ...

2020-02-26 21:06:08

kafka也没那么难--kafka的安装与简单使用

前言前短时间在腾讯云上买了一个linux 服务器,决心把kafka这一模快的知识补充起来啦。所以就搞起来。安装安装算是比较简单的,可以直接用wget 下载,也可以将安装包下载下来,上传到服务器上,都是一样的。kafka 安装包网址:http://mirror.bit.edu.cn/apache/kafka我选择的版本2.4.0:wget http://mirror.bit.edu....

2020-02-25 18:09:30

centOS7 安装nginx

前言在家呆的时间很长,没有linux 服务器,所以就在腾讯云上买了一个云服务器折腾一下,重置秘密重装系统和用远程连接什么的就不讲了,都比较简单,在控制台上都可以操作。我安装后,想搭建一个nginx试试。自己也是采坑一路,虽然以前也在Ubuntu上安装nginx 的,但是还是和centOS 上有些不一样的。如果是在腾讯云上买的服务器,其实可以一步到位yum install nginx但是...

2020-02-23 14:07:20

《剑指offer》之扑克牌顺子

前言接着来刷一道简单的算法题题目LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q...

2020-02-13 15:00:56

《剑指offer》之和为S的两个数字

前言昨天刷的和为S的连续正数序列,用到的窗口双指针的方法很好用,今天刚好刷到一道类似的,也是用窗口双指针的,一次就过的感觉还不错。题目输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。输出描述:对应每个测试案例,输出两个数,小的先输出。分析输出两个数的乘积最小的。这句话的理解?假设:若b>a,且...

2020-02-13 11:14:31

《剑指offer》之和为S的连续正数序列

前言今天刷的一道题目是是关于穷举的。题目小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck!输出描述...

2020-02-12 12:39:17

调第三方厂家接口实现文件文件上传httpclient

前言这种情况算是很少见的,前端上传文件到服务端,服务端接收文件,再调第三方接口,将文件存到第三方服务器。从客户端接收文件的就不说了,比较常见,就记录下调第三方接口带参数。代码public static String sendPost(String url, JSONObject jsonObject, String token,File file) { StringBuil...

2020-02-11 15:58:17

《剑指offer》之二叉树的深度

前言我们今天接着来看一道关于二叉树的算法题,关于二叉树的深度。题目输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。分析求该树的深度,主要就是看最长路径。比如下图的深度为5,最长的路径为34,99,35,64,77那应该怎么做了?这里用递归,如果当前节点没有左右节点,就返回当前节点,如果有左右节点,就返回左右节点的...

2020-02-10 19:21:53

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证(专家版)
    技术圈认证(专家版)
    博客专家完成年度认证,即可获得
  • 推荐红人
    推荐红人
    发布高质量Blink获得高赞和评论,进入推荐栏目即可获得
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv3
    阅读者勋章Lv3
    授予在CSDN APP累计阅读博文达到30天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 博客之星-入围
    博客之星-入围
    授予每年博客之星评选结果第21-200名的用户
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。
  • 分享精英
    分享精英
    成功上传11个资源即可获取