自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

javafirst

分享Java开发技术、Java面试笔试题、IT技术、Java学习视频资源

  • 博客(25)
  • 资源 (8)
  • 问答 (1)
  • 收藏
  • 关注

转载 Java HTTP 组件库选型看这篇就够了

最近项目需要使用 Java 重度调用 HTTP API 接口,于是想着封装一个团队公用的 HTTP client lib. 这个库需要支持以下特性: 连接池管理,包括连接创建和超时、空闲连接数控制、每个 host 的连接数配置等。基本上,我们想要一个 go HTTP 标准库自带的连接池管理功能。 域名解析控制。因为调用量会比较大,因此希望在域名解析这一层做一个调用端可控的负载均...

2019-05-22 18:02:19 1407

原创 趣图:我正在演示一个功能,但没有达到预期效果

扩展阅读趣图:当程序员第一次向老板演示项目时趣图:甲方要求,加个小功能趣图:新手程序员完成一个新功能的过程趣图:当我尝试调整生产数据库中的一些东西时趣图:程序正常运行时,程序员的样子...

2019-05-22 17:58:31 377

转载 阅读源码的利器——Intellij-IDEA-Replace-in-Path-使用技巧

前言讲讲宇宙排名第二的开发工具—–IDEA的使用技巧。搜索/替换 技巧阅读源码的利器1、Match case: 如果勾选该按钮,搜索时将区分大小写字母。2、Preserve case:如果勾选该按钮,搜索时不区分大小写,但替换的时候,将会把你给定的字符串的首字母替换成小写。比如,你输入 HelloWorld,将会被替换成 helloWorld。3、regex:可...

2019-05-21 15:26:08 691 1

转载 分享一些好用的 Chrome 插件!

使用浏览器扩展程序可以使你的工作效率提高数倍不止,那么下面我就向大家分享一下我日常使用的扩展,可能大多数扩展大家都已经在使用了,不过也难免有一两个是你不知道的。以下排名并不分先后,请坚持看到最后,或许你会有惊喜。1、 新浪微博图床感谢新浪微博提供的免费图床(对外链无限制),以及吊炸天的 cdn 图片加速服务,从此妈妈再也不用担心我的图床不能用了,另外还支持在网页图片右键菜单中一键上传。...

2019-05-21 15:22:19 376

原创 趣图:程序员发量的变化过程

扩展阅读趣图:程序员发型的逻辑代数趣图:高级开发人员重构代码趣图:程序员最头疼的原因趣图:调试过多线程的都会懂!趣图:做程序员五年状态变化...

2019-05-21 15:19:15 3270

转载 Spring循环依赖的三种方式

引言:循环依赖就是N个类中循环嵌套引用,如果在日常开发中我们用new 对象的方式发生这种循环依赖的话程序会在运行时一直循环调用,直至内存溢出报错。下面说一下Spring是如果解决循环依赖的。第一种:构造器参数循环依赖Spring容器会将每一个正在创建的Bean 标识符放在一个“当前创建Bean池”中,Bean标识符在创建过程中将一直保持在这个池中。因此如果在创建Bean过程中发现自...

2019-05-13 18:14:38 1301

转载 水平分库分表的关键问题及解决思路

在之前的文章中,我介绍了分库分表的几种表现形式和玩法,也重点介绍了垂直分库所带来的问题和解决方法。本篇中,我们将聊聊水平分库分表的一些技巧。01分片技术的由来关系型数据库本身比较容易成为系统性能瓶颈,单机存储容量、连接数、处理能力等都很有限,数据库本身的“有状态性”导致了它并不像Web和应用服务器那么容易扩展。在互联网行业海量数据和高并发访问的考验下,聪明的技术人员提出了分库分表技术(...

2019-05-13 18:07:06 578

原创 趣图:普通人讲故事 VS 程序员讲故事

扩展阅读趣图:我说自己菜 vs 大佬说自己菜趣图:客户需求VS客户预算趣图:在外行人眼中的程序员如何处理前任程序员留下的代码一个故事讲清楚NIO...

2019-05-10 17:51:06 264

转载 面试官:你了解乐观锁和悲观锁吗?

前言乐观锁和悲观锁问题,是出现频率比较高的面试题。本文将由浅入深,逐步介绍它们的基本概念、实现方式(含实例)、适用场景,以及可能遇到的面试官追问,希望能够帮助你打动面试官。目录一、基本概念二、实现方式(含实例)三、优缺点和适用场景四、面试官追问:乐观锁加锁吗?五、面试官追问:CAS有哪些缺点?六、总结一、基本概念乐观锁和悲观锁是两种思想,用于解决并发场景下的数据竞...

2019-05-09 10:50:46 590

转载 分库分表的几种常见玩法及如何解决跨库查询等问题

在谈论数据库架构和数据库优化的时候,我们经常会听到“分库分表”、“分片”、“Sharding”…这样的关键词。让人感到高兴的是,这些朋友所服务的公司业务量正在(或者即将面临)高速增长,技术方面也面临着一些挑战。让人感到担忧的是,他们系统真的就需要“分库分表”了吗?“分库分表”有那么容易实践吗?为此,笔者整理了分库分表中可能遇到的一些问题,并结合以往经验介绍了对应的解决思路和建议。垂直分表垂...

2019-05-09 10:42:44 2346

原创 趣图:让程序员给你介绍对象会是什么后果

扩展阅读趣图:我说自己菜 vs 大佬说自己菜趣图:“面向对象”程序员眼中的世界套路盘点,那些年程序员都是如何找到对象的趣图:向客户介绍的产品VS实际开发的产品趣图:程序员眼中的(部分)用户...

2019-05-09 10:36:19 241

原创 Redis常见的八道面试题

一、memcached与redis的区别?  1.存储方式不同。memcached把数据全部存在内存之中,断电之后会挂掉,而redis虽然也用到了内存,但是会有部分数据存在硬盘中,保证数据持久性。2.数据支持类型不同。memcached对数据支持比较简单,而redis支持数据类型较丰富,如string、list、set、sorted set、hash。  3.底层实现不同。一般调用...

2019-05-08 11:15:45 2723

转载 Docker Machine 详解

笔者在《Docker Machine 简介》一文中简单介绍了 Docker Machine 及其基本用法,但是忽略的细节实在是太多了。比如 Docker 与 Docker Machine 的区别?又如当我们执行 docker-machine create 命令时,Docker Machine 都做了哪些重要的事情使得我们可以远程操作 Docker daemon?这样的远程操作安全吗?本文将试图解读...

2019-05-08 11:09:52 284

原创 趣图:我说自己菜 vs 大佬说自己菜

扩展阅读一大波趣图:CSS的力量趣图:嫁人就嫁程序员,大妈都懂的!趣图:向客户介绍的产品VS实际开发的产品如何准备校招技术面试+一只小菜鸟的面试之路向Spring大佬低头——大量源码流出解析...

2019-05-08 11:00:59 599

转载 企业面试中关于MYSQL重点的28道面试题解答

问题1:char、varchar的区别是什么?varchar是变长而char的长度是固定的。如果你的内容是固定大小的,你会得到更好的性能。问题2: TRUNCATE和DELETE的区别是什么?DELETE命令从一个表中删除某一行,或多行,TRUNCATE命令永久地从表中删除每一行。问题3:什么是触发器,MySQL中都有哪些触发器?触发器是指一段代码,当触发某个事件时,自动执...

2019-05-07 14:42:20 478

转载 数据结构与算法——常用数据结构及其Java实现

本文采用Java语言来进行描述,帮大家好好梳理一下数据结构与算法,在工作和面试中用的上。亦即总结常见的的数据结构,以及在Java中相应的实现方法,务求理论与实践一步总结到位。常用数据结构数组数组是相同数据类型的元素按一定顺序排列的集合,是一块连续的内存空间。数组的优点是:get和set操作时间上都是O(1)的;缺点是:add和remove操作时间上都是O(N)的。Java中...

2019-05-07 14:34:26 276

原创 趣图:程序员告诉你为什么充钱后速度更快

扩展阅读趣图:向客户介绍的产品VS实际开发的产品趣图:产品还没测试直接投入生产时趣图:你为什么不写文档/注释?

2019-05-07 10:59:40 292

转载 金三银四铜五铁六,面试得做好这个准备

金三银四铜五铁六据说,金三银四,截止今天为止面试黄金时间已经过去十之八九,而鲁班(LB,以下全文均用LB代替)恰逢是这批面试大军其中的一名小兵,很不幸今年恰逢遇上了互联网寒冬(即各大公司都在裁员,对外提供岗位相对较少的,这意味着很多猿即将面临着更多的竞争对手和相对较少的岗位困境),LB求职过程种种被虐,尸体趟过召唤师峡谷每个角落,如今历历在目,终究,当初的一名无名小卒如今已是一名超级兵...

2019-05-07 10:56:19 634

转载 Java中如何模拟真正的同时并发请求?

有时需要测试一下某个功能的并发性能,又不要想借助于其他工具,索性就自己的开发语言,来一个并发请求就最方便了。java中模拟并发请求,自然是很方便的,只要多开几个线程,发起请求就好了。但是,这种请求,一般会存在启动的先后顺序了,算不得真正的同时并发!怎么样才能做到真正的同时并发呢?是本文想说的点,java中提供了闭锁 CountDownLatch, 刚好就用来做这种事就最合适了。只需要:...

2019-05-07 10:26:11 1303

原创 趣图:程序员最头疼的原因

扩展阅读趣图:这就是为什么程序员没有女朋友的原因!!趣图:程序员正在找 Bug趣图:程序正常运行时,程序员的样子

2019-05-07 10:16:12 336

转载 Java并发面试题

题目参考自并发编程网:http://ifeve.com多线程java中有几种方法可以实现一个线程?继承Thread类;实现Runnable接口;实现Callable接口通过FutureTask包装器来创建Thread线程;使用ExecutorService、Callable、Future实现有返回结果的多线程(也就是使用了ExecutorService来管理前面的三种方...

2019-05-06 18:10:47 387

转载 linux内存分配与回收

前言之前在实习时,听了 OOM 的分享之后,就对 Linux 内核内存管理充满兴趣,但是这块知识非常庞大,没有一定积累,不敢写下,担心误人子弟,所以经过一个一段时间的积累,对内核内存有一定了解之后,今天才写下这篇博客,记录以及分享。【OOM - Out of Memory】内存溢出内存溢出的解决办法:1、等比例缩小图片2、对图片采用软引用,及时进行 recycle( ) 操作。...

2019-05-06 18:02:34 615

转载 数据库性能优化的误区

常见的数据库系统优化中的一些观点:“系统性能出现问题进行优化,一定要深入了解数据库内部参数、等待事件、Latch、缓冲池、trace文件、查询/优化引擎等底层细节。”这种观点往往出自数据库“高手”,这部分人以了解数据库底层实现细节而感到非常骄傲。但是从优化角度讲数据库的等待事件、Latch等指标高等等都只是问题的表象,懂得底层细节和内幕固然是好。但是解决问题的关键往往是在应用层进行...

2019-05-05 11:19:47 238

转载 IntelliJ IDEA上操作GitHub

IntelliJ IDEA集成了对GitHub的支持,使上传代码到GitHub和从GitHub下载代码更加方便快捷。一. 分享代码到GitHub1. 首先需要在IntelliJ配置Git,如果没有正确配置会出现如下错误:通过File->Settings打开设置面板进行设置,如图:2. 第一次上传代码到GitHub操作如下:其间需要输入用户名和密码。3. 非...

2019-05-05 11:15:27 369

转载 老板黑话大全,成年人一定要看,不要再被骗了!

来源:少女兔(ID:iiilass)扩展阅读程序员的江湖,黑话一定要牢记一般人不告诉他——程序员职场黑话maven常用命令集合(收藏大全)我偷看了老板的微信分组,惊呆了……IT面试“水泥坑”——异地女友来看你,老板却要你加班怎么办?关于作者:兔姐,宇宙疼老婆协会VIP会员,超人气美女漫画师,最懂少女心的公众号:少女兔(...

2019-05-05 11:09:22 451

Linux Shell脚本攻略(第2版)

Linux Shell脚本攻略(第2版)

2017-06-21

JAVA API1.6中文文档

JAVA API1.6中文文档,Java程序员的必备手册之一,适用于于不擅长看英语文档的小伙伴。谁用谁知道。

2017-03-06

Java面试宝典2017

一套经典的Java面试题,不管是新手老鸟,相信都会有用的,不会让你失望。帮助你复习面试时取得事半功倍的效果。

2017-03-06

鸟哥的Linux私房菜基础篇第三版

《鸟哥的Linux私房菜:基础学习篇》是最具知名度的Linux入门书《鸟哥的Linux私房菜基础学习篇》的最新版,全面而详细地介绍了Linux操作系统。全书分为5个部分:第一部分着重说明Linux的起源及功能,如何规划和安装Linux主机;第二部分介绍Linux的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口shell和管理系统的好帮手shell脚本,另外还介绍了文字编辑器vi和vim的使用方法;第四部分介绍了对于系统安全非常重要的Linux账号的管理,以及主机系统与程序的管理,如查看进程、任务分配和作业管理;第五部分介绍了系统管理员(root)的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。

2017-03-06

阿里巴巴Java开发手册

2017年开春之际,诚意献上重磅大礼:阿里巴巴Java开发手册,首次公开阿里官方Java代码规范标准。 这套Java统一规范标准将有助于提高行业编码规范化水平,帮助行业人员提高开发质量和效率、大大降低代码维护成本。

2017-03-03

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

TA关注的人

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