自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (2)
  • 收藏
  • 关注

原创 淘宝垂直爬虫之关键字搜索(实战+源码+可视化)
原力计划

介绍如何“快速”抓取淘宝商品信息,从几个维度统计并且进行可视化

2020-07-05 22:29:20 320 1

原创 FastHttpClient 基于 apache HttpClient 5.0 进一步封装, 提供方便的API

FastHttpClient 基于 apache HttpClient 5.0 进一步封装, 提供方便的API

2020-07-05 11:49:49 403

原创 爬虫让我再次在女同学面前长脸了~(现实版真实案例)
原力计划

用10分钟写一个 “自考365” 爬虫,帮女同学下载一批量的试题以及答案,最后她想学爬虫了~

2020-06-15 00:40:16 11211 62

原创 SpringBoot打包上传到docker并实现多实例部署(IDEA版)
原力计划

文章目录1. Docker的安装以及开启远程访问1.1 安装1.2 开启远程访问2. IDEA 安装 docker 插件并且连接2.1 安装插件2.2 连接docker3. 打jar包并且编写Dockerfile4. IDEA 配置构建镜像4.1 配置运行脚本4.2 运行脚本5. 宿主机查看镜像并且确认部署成功6. 部署多实例7. 安全问题最近有一个朋友问我有没有玩过docker,回答起来底气...

2020-04-28 01:08:35 419

原创 春眠不觉晓,接口幂等知多少~
原力计划

文章目录1. 写在前面的话2. 了解一个概念:幂等3. 实际场景有哪些?4. 解决方案汇总5. 实现简单幂等方案6. 问题源码7. 解决思路8. 源码实现9. 简单使用: 添加@SimpleIdempotent10. 测试11. 写在最后的话1. 写在前面的话在实际开发中,不知道大家有没有遇到过 “ 测试人员 ” 疯狂点击提交按钮,结果产生脏数据的问题?最终导致一条数据会产生多条记录,这篇博...

2020-04-18 22:42:54 152

原创 @Transactional 踩坑记录(不生效,并发,回滚问题)
原力计划

文章目录坑1: @Transactional 不生效?1. 是否添加依赖?2. 方法是否是公开的( pubilc ) ?3. @Transactional 所属类被 spring 所管理? 类上是否包含 @Controller | @Service | @Component ....4. @Transactional 有些异常没有回滚? 注明 rollbackFor (阿里巴巴规范也要求)5. 查...

2020-03-22 17:10:25 1000 2

原创 设计模式:11-状态模式 / 策略模式 / 职责链模式

文章目录22. 状态模式(State Pattern)22.1 需求的引入22.2 基本介绍22.3 应用实例22.4 状态模式的注意事项和细节23. 策略模式 (strategy pattern)23.1 需求的引入23.2 基本介绍23.3 应用实例23.4 策略模式在 JDK-ArrayList 应用的源码分析23.5 策略模式的注意事项和细节23. 职责链模式 (Chain of Resp...

2020-02-19 20:15:52 156

原创 设计模式:10-备忘录模式 / 解释器模式

文章目录20. 备忘录模式(Memento Pattern)20.1 需求的引入20.2 基本介绍20.3 应用实例20.4 备忘录模式的注意事项和细节21. 解释器模式(Interpreter Pattern)21.1 需求的引入21.2 基本介绍21.3 应用实例21.4 解释器模式在 JDK-Timer 应用的源码分析21.5 解释器模式的注意事项和细节20. 备忘录模式(Memento ...

2020-02-19 20:12:36 189

原创 设计模式:09-观察者模式 / 中介者模式

文章目录18. 观察者模式(Observer Pattern)18.1 需求的引入18.2 基本介绍18.3 应用实例18.4 观察者模式在 JDK 的源码分析18.5 观察者模式的注意事项和细节19. 中介者模式(Mediator Pattern)19.1 需求的引入19.2 基本介绍19.3 应用实例19.4 迭代器模式在 JDK-ArrayList 集合应用的源码分析19.5 迭代器模式的注...

2020-02-19 20:10:03 142

原创 设计模式:08-访问者模式 / 迭代器模式

文章目录15. 访问者模式(Visitor Pattern)15.1 需求的引入15.2 基本介绍15.3 应用实例15.4 访问者模式的注意事项和细节15. 访问者模式(Visitor Pattern)15.1 需求的引入测评系统的需求:将观众分为男人和女人,对歌手进行测评,当看完某个歌手表演后,得到他们对该歌手不同的评价(评价 有不 同的种类,比如 成功、失败 等)15.2 基本介绍...

2020-02-19 20:04:32 383

原创 小结2019 | 2020开篇

2019已经过去了,但是总感觉少点什么?可能缺少了一点点仪式感吧,最终思考再三,觉得一年那么都过了,怎么不花点时间总结一下这一年的 舍 与 得 呢?2019 年是我毕业的第一年,这一年经历了很多人,很多事,收货颇多…记忆总是模糊的,想了好久决定从几个方面总结一下,算是给自己 2019 一个交代吧~~工作主要做一些收费系统学习生活(运动)开源期待...

2020-01-12 13:11:58 99 2

原创 设计模式:07-模板方法模式 / 命令模式

文章目录14. 模板方法模式14.1 需求的引入14.2 基本介绍14.3 应用实例14.4 模板方法模式在Spring框架应用的源码分析14.5 模板方法模式的注意事项和细节15. 命令模式15.1 需求的引入15.2 基本介绍15.3 应用实例15.4 命令模式在Spring框架JdbcTemplate应用的源码分析15.5 命令模式的注意事项和细节14. 模板方法模式14.1 需求的引入...

2020-01-03 00:20:37 85

原创 设计模式:06-享元模式 / 代理模式(静态代理·动态代理·cglib代理)

文章目录12. 享元模式(蝇量模式,池化模式)12.1 需求的引入12.2 基本介绍12.3 应用实例12.4 享元模式在 JDK-Interger 的应用源码分析12.5 享元模式的注意事项和细节13. 代理模式(Proxy)13.1 代理模式的基本介绍13.2 静态代理13.2.1 静态代码模式的基本介绍13.2.2 应用实例13.2.3 静态代理优缺点13.3 动态代理13.3.1 动态代码...

2020-01-01 17:07:09 211

原创 设计模式:05-组合模式 / 外观模式(门面模式)

文章目录10. 组合模式10.1 需求的引入10.2 基本介绍10.3 角色以及职责介绍10.4 应用实例10.5 组合模式在 JDK 集合的源码分析(HashMap)10.6 组合模式的注意事项和细节10.7 组合模式实际应用11. 外观模式(门面模式)11.1 需求的引入11.2 基本介绍11.3 应用实例11.4 外观模式在 Mybatis 的源码分析11.5 外观模式的注意事项和细节11....

2019-12-28 15:27:44 109

原创 Java多线程并发下载文件工具

Java多线程并发下载文件工具…HttpClient 出处:https://blog.csdn.net/JinglongSource/article/details/102559449import cn.shaines.core.utils.HttpClient.Response;import cn.shaines.core.utils.HttpClient.Response.Body...

2019-12-08 22:56:58 541

原创 设计模式:04-适配器模式 / 桥接模式 / 装饰者模式

文章目录7. 适配器模式7.1 类适配器模式7.1.1 类适配器模式应用实例7.2 对象适配器模式7.2.1 类适配器模式应用实例7.3 接口适配器模式(方法级别, 又叫缺省适配器模式)7.3.1 接口适配器模式应用实例7.4 适配器模式在 SpringMVC 框架应用的源码剖析7.4 适配器模式的注意事项和细节本篇博客主要是学习 韩顺平_Java设计模式 做一个学习笔记使用7. 适配器模...

2019-12-01 14:40:07 94

原创 设计模式:03-原型模式 / 建造者模式(生成器模式)

文章目录5. 原型模式5.1. 问题的引入5.2 原型模式的浅拷贝5.3 重写默认原型模式实现深拷贝5.4 原型模式在 Spring 框架中源码分析(getBean)本篇博客主要是学习 韩顺平_Java设计模式 做一个学习笔记使用5. 原型模式基本介绍原型模式(Prototype 模式)是指:用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象原型模式是一种创建型设计...

2019-12-01 14:37:02 164

原创 Java并发编程:04-源码分析-线程池(ThreadPoolExecutor)如何实现Thread的复用

文章目录1. 了解一下Thread的生命周期2. 为什么创建线程会很消耗资源?3. ThreadPoolExecutor 部分源码剖析:3.1 编写测试代码3.2 进入execute(Runnable command)方法3.3 进入private boolean addWorker(Runnable firstTask, boolean core) 方法3.4 进入ThreadPoolExecu...

2019-11-18 19:50:30 124

原创 Java并发编程:03-多线程并发下载器, 支持断点下载(手写不限速的迷你版迅雷)

Java并发编程:03-多线程并发下载器, 支持断点下载(手写不限速的迷你版迅雷)主要是最近学习完一些初级的并发知识, 所以想使用这些知识做一个小小工具, 巩固一下知识点, 然后就想到了多线程并发下载文件的这个小工具, 这个工具可以媲美迅雷中的下载速度哦~~, 我尝试下载过11M/s的速度, 这个速度其实还和你的带宽以及下载的资源有关, 所以在此不做太多关于速度上的较真…使用到的知识点有如...

2019-11-16 19:36:40 357

原创 设计模式:02-单例模式 / 简单工厂模式 / 工厂方法模式 / 抽象工厂模式

文章目录1. 单例模式2. 工厂模式-简单工厂模式(静态工厂模式)3. 工厂模式-工厂方法模式4. 工厂模式-抽象工厂模式本篇博客主要是学习 韩顺平_Java设计模式 做一个学习笔记使用1. 单例模式所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例, 并且该类只提供一个取得其对象实例的方法(静态方法)。 比如 Hibernate 的 Sess...

2019-11-16 16:43:19 138

原创 设计模式:01-设计模式的七大原则(6+1)

文章目录标题设计模式的作用设计模式常用的七大原则(6+1):1. 单一职责原则2. 接口隔离原则3. 依赖倒转(倒置)原则4. 里氏替换原则5. 开闭原则6. 迪米特法则7. 合成复用原则1. 单一职责原则(通常对于类级别而言)问题的引入解决问题1解决问题22. 接口隔离原则问题的引入解决问题3. 依赖倒转原则引入问题解决问题依赖关系传递的三种方式和应用案例1. 接口传递(方法参数传递)2. 构造...

2019-11-10 20:49:54 120

原创 Java并发编程:02 -消息队列(MQ)springboot整合ActiveMQ整体流程版

消息队列是微服务之间通信(调度)的一个重要方式之一,这里只是做一个整合的笔记,因此不做过多的场景描述以及前提文章目录1.0 下载ActiveMQ以及安装并启动window 如何处理步骤1:解压apache-activemq-5.15.10步骤2:cmd 进入bin目录下步骤3:输入命令:步骤4:观察控制台输出是否正常,如下图,你会看到8161的端口几乎是没什么问题的啦步骤5:在浏览器输入:...

2019-10-30 00:53:57 108

原创 Java并发编程:01 - 并发问题的引入以及初体验(理解Java内存模型)

文章目录01 基本概念02 并发问题的引入03 思考问题04 解决问题05 出现并发问题的分析05.01 CPU多级缓存 - 缓存一致性(MESI)05.02 CPU多级缓存 - 乱序执行优化06 Java内存模型(Java Memory Model, JMM)07 Java内存模型 - 抽象结构图08 Java内存模型 - 同步八种操作(很重要)09 Java内存模型 - 同步规则(很重要)10...

2019-10-27 21:47:47 122 2

原创 基于jdk1.8 NIO手写http server,并且部署到阿里云服务器,浏览器可访问

如果没有tomcat,你的java程序是不是单机版?首先明确一个知识点(大前提),网络中的进程是通过socket来通信的最近在学习socket(俗称 套接字),然后顺便了解一下http协议,手写一个http服务端出来玩一下,如果想实现其实也不是很复杂,需要了解一下http协议,了解一下如果使用socket编程,那就一切变得很简单了 ~~# 1.0 简要了解 发送 一个http请求包含的信...

2019-10-19 15:22:42 215

原创 IDEA 普通java工程打jar包

1.0打开模块管理1.0打开模块管理3.0打开模块管理4.0打开模块管理5.06.0java -jar C:\Users\houyu\Desktop\cn.shaines.spider.main.jarjava -DpageEnd=20 -DfileName=C:/ip.txt -jar C:\Users\houyu\Desktop\cn.shaines.spider.ma...

2019-10-19 15:01:31 486

原创 基于HttpURLConnection封装超级好用的HttpClient,模仿jdk11中的HttpClient封装

import javax.net.ssl.*;import java.io.*;import java.net.*;import java.nio.charset.Charset;import java.nio.file.Files;import java.nio.file.OpenOption;import java.nio.file.Path;import java.securi...

2019-10-15 00:45:00 460

原创 java爬虫写一个百度图片下载器

文章目录imd_download看看效果吧![在这里插入图片描述](https://img-blog.csdnimg.cn/20191012234351696.png)在这里插入图片描述了解一下 "图片下载器软件" 目录结构前言: 大概一个月前帮一个朋友写一个爬虫,这个爬虫比较有意思,抓取新浪微博的图片(某个人物的微博)【站内深度抓取】,然后就花了点时间帮他写一个java爬虫,然后打包成为一个...

2019-10-13 13:23:10 191

原创 java是如何运行起来的(执行java文件)?你知道main方法中的args是有哪些用处吗?

java基础之 java是如何运行起来的? javac执行.class文件1.编写基础代码package cn.shaines.test;/** * @author houyu * @createTime 2019/9/20 20:46 */public class Test { public static void main(String[] args) { ...

2019-09-21 01:08:00 640

原创 java + Selenium实现12306自动购票

为什么搞这个东西?【java + Selenium实现12306刷票、抢票、购票】1.主要是12306是爬虫界的一个分水岭,所以我一直想玩12306【本次的实现并非真正意义上的破解12306实现购票,望周知】2.一直看到微信群,朋友圈,甚至私发的携程 / 同程 购票加油包?点一下增加一个速度的那种~,想自实现一个3.加深了解一下Selenium库的使用。【Selenium是一个自动化测试的...

2019-09-18 01:26:57 1181

原创 在window中安装python环境以及Anaconda

1.0 python 安装在window上安装python环境以及集成Anaconda包管理和下载pycharm IDE进行hello world编码window 安装python环境步骤01https://www.python.org/downloads/windows/步骤02window 安装 Anaconda 集成库步骤01https://www.anaco...

2019-09-08 14:42:43 405

原创 一次紧张又刺激的线上sql引发的惨案(CPU:100%)

一次紧张又刺激的线上sql导致的惨案(CPU:100%)故事的开始是这样子的,系统需要导入一批量数据, 大概单表的话6万8左右, 数据量不算大, 由于还有关联关系, 所以还在两张表中存储对应的关联-------------坑1由于使用的是程序导入,批量插入, for循环中构建对应到三张表的依赖关系, 外层使用3个List< Entity >存储, 当数据量达到1000, sa...

2019-09-03 01:25:53 124

原创 解密网易云音乐评论js加密参数,实现分词处理制作词云图

步骤01: 我们随机选择一首歌曲进入页面, 拖到底部查看评论页面然后点击下一页, 网页会请求后台获取数据, 我们通过F12抓包可以知道链接地址以及参数等, 如下图:步骤02: 参看传递的参数, 如下图我们可以了解到url:https://music.163.com/weapi/v1/resource/comments/R_SO_4_1379057027?csrf_token=metho...

2019-08-29 19:49:32 534

原创 如何优雅的编写java代码(Stream/Optional/lambda/lombok), 这些技巧你都知道吗

对于java, 很多开发者都说代码是成吨成吨写的; 其实, 我们也可以比较优雅的编写出高效且简约的代码的, 在这里主要介绍几个API的使用以及语法的简单入门。这些API都是基于Java8的。java.util.stream.StreamConsumerSupplierPredicateFunctionlambda表达式java.util.Optionallombok...

2019-08-14 09:50:11 749

转载 Nginx 极简教程

Nginx 极简教程 ( 转载 )说明: 该篇博客为转录, 主要是我觉得写得很全面, 因为最近我也在学习nginx, 我个人感觉看了原博主的这篇的话收益会非常大, 所以特意转录原博主的该篇文章, 本意在于让更多人看到好文章, 并且从中收益。原文章地址 后端技术精选本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx。示例Demo:https://github...

2019-07-27 23:34:42 176

原创 手把手和你抓取博客园(cnblog)的200页博客数据

教科书版手写多线程爬虫抓取博客园首页的200页数据, 涉及多线程, 又开始考验我的JAVA线程基础啦, 还记得当初大二写一个min爬虫框架, 一多线程就挂, 各种问题, 哈哈哈 这次也算是完成一年前的一个小目标吧…上一个智联的爬虫就暂停一下, 昨天有一个朋友说觉得爬虫有点意思, 然后想尝试抓取一下, 但是遇到了不少问题, 比较经典的就是如下问题啦"为什么你用gradle构建项目?" ...

2019-05-04 12:35:38 514

原创 爬虫分析智联_深圳_JAVA_薪资水平(对比中山)

找时间再续爬虫啦 智联爬虫未完现续~~~上一篇博客获取了中山的JAVA薪资水平, 并且数据可视化, 这次主要在于获取深圳的JAVA薪资水平, 顺便和中山对比一下, 你会发现一线城市和二线城市的IT薪资差异了…上一篇博客 [ 爬虫分析智联_中山_java_薪资水平 ]http://shaines.cn/u/shy/blogs/25https://blog.csdn.net/Jinglon...

2019-04-27 19:01:33 212 3

原创 爬虫分析智联_中山_java_薪资水平

很久没写过爬虫了,其实我挺喜欢写爬虫的,所以今天找了个时间写一个爬虫吧先说为什么要写这个爬虫,因为我公司的电梯有一个广告牌子,每天上下班,吃饭的时候都被洗脑,“上智联你更值”,一个智联的招聘广告,高晓松每天都叫我上智联…广告这东西对吧,没用呀,得看数据呀,所以故事就这样子开始了…没错啦!!!就是下边这个啦实现步骤:01: 先打开熟悉的百度搜索 智联, 然后选择中山, 搜索java...

2019-04-21 22:20:22 225

转载 ImageIconUtil

图片水印工具类import javax.imageio.ImageIO;import javax.swing.*;import java.awt.*;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileOutputStream;import java.io.OutputStream...

2019-04-19 17:55:51 190

原创 使用gradle构建spring cloud,搭建一个cloud的helloworld

spring cloud 越来越流行了,当初学习的时候都是使用maven构建的cloud(网上很多的springcloud案例也是通过maven构建的,gradle构建的cloud资料很少,或者说不全面),所以我一直想使用gradle构建一个cloud的demo.上周花了一个晚上整了一个demo,今天找个时间写一篇博客记录下…直入主题>>>>>>使用的版...

2019-04-14 21:15:58 3968 2

原创 使用git的正确方式,Git操作不规范,代码被吞两行泪

git是开发中必不可少的,其使用虽然简单,但是也是要注意点事项先commit(本地版本控制),把自己本地修改或者更新的提交到本地库,再pull(下拉更新并且解决冲突等),把远程仓库最新版本拉到本地,解决完冲突,运行无误,最后push(提交)。说明:(1)先commit,再pull,这样就算有冲突,不会把本地之前修改的冲刷掉(2)如果没commit,直接pull,有可能远程仓库的文件直接...

2019-03-21 01:02:40 186

concurrent_download.rar

Java多线程并发下载器, 无界面不限速的Java迷你版迅雷, 支持设置并发数, 设置线程执行块大小, 断点下载等功能, 具体源码实现请阅读博客即可!!!

2019-11-16

img_download.rar

使用Java写一个爬虫,动态获取百度图片,并且下载下来,是一个最新的百度图片程序

2019-10-13

空空如也

空空如也

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

TA关注的人 TA的粉丝

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