3 土豆是我的最爱

已隐藏 软件工程

我的个人网站:https://itudo.cn

等级
TA的排名 3k+

小白都能看得懂的java回调

故事背景在日常编程中,我们经常需要对内存的数据进行持久化的工作,把他们保存在硬盘文件或者数据库中。为了避免重复, 我们通常会把这部分工作封装在一个工具类中, 让各个客户端来调用。下文的FileIO就是一个简单的工具类(为了简单起见,并没有使用单例或静态方法来实现)小张的烦恼Java 帝国的FileIO是一个忙碌的家伙,附近7、8个村落的人都来找他, 请他把数据存储到硬盘里。...

2019-12-16 16:09:08

小白都能看得懂的java泛型

一、什么是泛型泛型是Java SE 1.5的新特性,可以适应不同的很多很多类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。二、为什么使用泛型1.使用泛型能写出更加灵活通用的代码2.泛型将代码安全性检查提前到编译期        使用泛型后,能让...

2019-12-14 21:00:43

Spring IOC?彻底搞懂它!

目录引言BeanFactory 简介创建 Bean 容器前的准备工作创建 Bean 容器,加载并注册 BeanBean 容器实例化完成后准备 Bean 容器: prepareBeanFactory初始化所有的 singleton beans附录id 和 name配置是否允许 Bean 覆盖、是否允许循环依赖profile工厂模式生成 BeanFa...

2019-12-09 15:31:51

亿级流量电商系统jvm参数设置简单优化

前言通过上篇文章小白都能看得懂的java虚拟机内存模型我们已经基本了解了jvm的内存模型,并且通过一个jvm案例分析了程序运行中JVM的内存活动。我们学习jvm是为了什么,为了面试么,当然是一部分,但是真正学习jvm的底层原理,一定是为了调优。那么jvm调优到底是调什么呢,目的是什么呢?Stop-The-World 不知道同学们有没有听过SWT,意思是Stop-Th...

2019-12-03 17:28:06

小白都能看得懂的java虚拟机内存模型

目录一、虚拟机二、虚拟机组成1.栈栈帧2.程序计数器3.方法区对象组成4.本地方法栈5.堆GCGC案例一、虚拟机​同样的java代码在不同平台生成的机器码肯定是不一样的,因为不同的操作系统底层的硬件指令集是不同的。同一个java代码在windows上生成的机器码可能是0101.......,在linux上生成的可能是1100....

2019-11-26 17:21:27

【docker】——docker项目中使用phantomjs实现网页快照缩略图

前言前面有写博文,利用phantomjs实现网页快照,分别适配windows,linux,mac,好不容易搞好了,结果把项目镜像放到docker运行容器的时候,居然失效了。docker内部不也是linux内核么,居然会出问题。找了半天,发现是docker中很多库不兼容可能,不能运行phantomjs命令。想了很多办法,比如更换类库,但是已更换会出现连锁反应,其他一个一个都要换,明显不行。很久才...

2019-11-07 16:48:58

【PhantomJs】——利用phantomjs实现网页快照的两种方式

前言今天遇到一个需求,是前端给后台一个网址,后台需要返回这个网址的快照回去,刚接手的时候一脸懵,了解了一下,是项目中有个播放视频或者直播的区域,需要一张图片来作为封面图,但是如果专门去存的话不方便,也不灵活。既然有需求,那就只能找方法了,网上各种翻阅,方法不多,也不算少,但是很杂,很多工具及代码都有不足之处,有的比较慢,有的是会出现可视化的工具框,比如IFrame,显然不好,最后确定了用p...

2019-10-28 17:51:35

【基本类型】——基本类型与包装类型

一、基本类型Java一种静态编程语言,所有变量和表达式是在编译时就确定的。同时,Java又是一种强类型语言,所有的变量和表达式都有具体的类型,并且每种类型是严格定义的。类型限制了变量可以hold什么样的值,表达式最终会产生什么样的值,可以进行哪些操作。在Java中共有8中基本类型数据,同时每种基本类型又有对应的包装类。最简单的理解,基本类型有默认值,而包装类型初始为null。然后再根据这两...

2018-12-19 11:11:48

【docker】——docker-compose部署springboot镜像项目

前言最近项目要上线喽,经理让我自己在电脑上搭建docker练练手,虽然连docker都没弄明白,也只能硬着头皮慢慢搞,不过确实对docker理解加深了,这里先记录一下,后期再整理吧Docker安装:windows10专业版、企业版、教育版都可以安装docker for windows,这个应该是比较好的,官方是说是windows的最好选择,但是我按照网上的教程装了好几遍,运行一直有问题,每次...

2019-10-18 17:17:50

【短链接】——自己实现一个短网址服务

目录前言什么是短链接为什么要用短链接(引用)如何生成短链接实现代码演示前言前段时间做支付的时候,要生成可供微信和支付宝扫描的支付二维码,二维码里存储的也就是一个链接,但是可能是因为链接比较长的缘故,总是被微信拦截。然后就换成了微信官方的长链接转短链接,好不容易弄好了,发现支付宝扫的话会拦截,两家果真是水火不容。。。有问题就解决问题呗,那我换成第三方的好...

2019-09-21 13:21:00

【支付】——毕业设计中利用websocket做模拟支付

前言最近在做公司项目时使用websocket在支付回调接口中刷新页面状态时,忽然想起今年毕业做毕业设计的时候,做的是一个电商系统,那么支付是必不可少的,当时还没有听说过websocket,去网上查阅资料,申请支付宝或者微信授权肯定是不现实的,还搞了很久的沙箱支付,现在想想真是傻,没有早一点接触到websocket,至于websocket是一门怎样的技术我们在此不做过多介绍,大家可自行查阅资料,...

2019-09-21 18:53:16

【Docker/K8s】——干货满满!10分钟看懂Docker和K8S

2010年,几个搞IT的年轻人,在美国旧金山成立了一家名叫“dotCloud”的公司。 这家公司主要提供基于PaaS的云计算技术服务。具体来说,是和LXC有关的容器技术。 LXC,就是Linux容器虚拟技术(Linux container) 后来,dotCloud公司将自己的容器技术进行了简化和标准化,并命名为——Docker。 Docker技术诞生之后,并没有引起行业的关注。...

2019-09-11 17:47:26

【学习路线】——Python爬虫初学者学习路线

前言这里稍稍整理一下一下爬虫初学者的学习路线,也给自己一个前进的方向。爬虫是入门Python最好的方式,没有之一。Python有很多应用的方向,比如后台开发、web开发、科学计算等等,但爬虫对于初学者而言更友好,原理简单,几行代码就能实现基本的爬虫,学习的过程更加平滑,你能体会更大的成就感。掌握基本的爬虫后,你再去学习Python数据分析、web开发甚至机器学习,都会更得心应手。因为这...

2019-09-11 11:17:53

【设计模式】——代理、策略、委派模式还在傻傻分不清?

前言前面的博文我们已经分别讲述了代理模式,策略模式和委派模式各自的使用及案例实现。但是三者都写完了,我发现其实我自己都有些混淆了,所以今天特意把他们放在一起看看究竟有什么区别和联系策略模式:策略模式是对算法的封装。定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换优点: 1、算法可以自由切换。 2、避免使用多重条件判断。 3、扩展性良好。缺点: 1、策略类...

2019-09-05 16:53:09

【日志】——python自定义日志类

前言学习python也是兴趣使然,毕竟python近年来热度高涨,刚好对爬虫很感兴趣,所以利用闲余时间研究一下,python基础在学校的时候已经比较熟悉,就先做一些准备工作吧!日志当然是其中重要的一部分了!代码实现import loggingimport getpassfrom sys#### 定义MyLog类class MyLog(object): #### 类MyLo...

2019-09-05 11:04:14

【设计模式】——委派模式

前言委派模式不属于GOF23种设计模式, 主要角色有三种: 抽象任务角色, 委派者角色, 具体任务角色.实现层面上, 定义一个抽象接口, 它有若干实现类, 他们真正执行业务方法, 这些子类是具体任务角色; 定义委派者角色也实现该接口, 但它负责在各个具体角色实例之间做出决策, 由它判断并调用具体实现的方法.委派模式对外隐藏了具体实现, 仅将委派者角色暴露给外部应用场景我们在这...

2019-09-04 18:03:41

【jmeter】Jmeter如何监控服务器CPU、内存、i/o等资源

一、要准备好的插件:JMeterPlugins-Standard-1.4.0(pwd:cjqd)、ServerAgent-2.2.1(pwd:pxui); 二、解压JMeterPlugins-Standard-1.4.0.zip,将其中\lib\ext\JMeterPlugins-Standard.jar包复制到jmeter安装目录下的\lib\ext下; 三、重启jm...

2019-09-03 10:57:03

【个人网站】服务器linux安装MySQL以及Redis

一、安装MySQL这里的话可以看另外一篇文章Linux下安装mysql完整教程,文章基本步骤下来是没问题的。二、安装Redis推荐进入linux路径/usr/local1.获取redis资源wget http://download.redis.io/releases/redis-4.0.10.tar.gz2.解压tar -xzvf redis-4.0.10.tar...

2019-08-27 10:45:41

【个人网站】docker中部署springboot项目(多个)

一、docker的安装docker是近年比较火的一个开源的应用容器引擎,咱看半天也没太清楚到底有啥用,反正就是感觉像是一个linux的微缩版,这里暂不讨论,有些东西用着用着就知道他的好处及用途了,只是看的话很难真正理解。PS补充:经过使用后,我目前是这样理解的:docker就是一个虚拟机,其中有三个概念:仓库,镜像,容器。仓库就类似于你ide的工作空间,镜像就相当于工作空间中未启动的项目...

2019-08-26 17:19:53

【个人网站】个人网站搭建预备工作

一、购买云服务器(主机)可以选择阿里云,或者腾讯云,不嫌麻烦或者不在乎性能的可以去寻找免费的,我这里是购买的腾讯云的学生套餐:云+校园购买完成后可以在控制台看到服务器信息二、购买域名(前期可省)如果网站尚未开发完成可以先省略这一步,如果只是单纯为自己玩,也可以不买,直接通过IP访问即可,我这里买的也是腾讯云的腾讯云域名。购买域名非港澳地区还需要进行备案,使用腾讯云助手小程序...

2019-08-26 15:41:41

查看更多

勋章 我的勋章
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 推荐红人
    推荐红人
    发布高质量Blink获得高赞和评论,进入推荐栏目即可获得
  • 精彩红人
    精彩红人
    发布高质量Blink获得高赞和评论,进入精彩栏目即可获得
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 红花
    红花
    子板块内专家分月排名榜第一
  • 黄花
    黄花
    子板块内专家分月排名榜第二
  • 蓝花
    蓝花
    子板块内专家分月排名榜第三
  • 银牌
    银牌
    总榜技术专家分月排行榜第二