8 码农突围

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 715

好用到爆的 Java 技巧

本文不是一个吹嘘的文章,不会讲很多高深的架构,相反,会讲解很多基础的问题和写法问题,如果读者自认为基础问题和写法问题都是不是问题,那请忽略这篇文章,节省出时间去做一些有意义的事情。开发工具不知道有多少 “老” 程序员还在使用 Eclipse,这些程序员们要不就是因循守旧,要不就是根本就不知道其他好的开发工具的存在,Eclipse 吃内存卡顿的现象,以及各种偶然莫名异常的出现,都告知我们是时候寻找新的开发工具了。更换 IDE根本就不想多解释要换什么样的 IDE,如果你想成为一个优秀的 Java 程序员

2020-08-04 19:02:14

为什么国内流行的 MyBatis ,国外 Java 工程师却不愿意使用?

Spring 团队的Josh Long自己在Twitter上做了一个调查。1625次投票,样本量不算大,但也能说明问题。和我答案最后的那些调查图表基本一致。我们看一下Google Trends的数据:搜索条件是这样的:World Wide:United States:France:India:Canada:China:Japan:其他英文技术网站上的多个统计:再看看Stack Overflow上的问题数:(含有hibernate的标签和问题数)(含有myb

2020-08-03 22:24:39

面试官写了个双冒号::问我这是什么语法?Java中有这玩意?

一:简洁二:方法引用三:Optional 可选值一:简洁方法引用分为三种,方法引用通过一对双冒号:: 来表示,方法引用是一种函数式接口的另一种书写方式静态方法引用,通过类名::静态方法名, 如 Integer::parseInt实例方法引用,通过实例对象::实例方法,如 str::substring构造方法引用,通过类名::new, 如 User::new二:方法引用public final class Integer { public static int parseIn.

2020-07-31 20:26:10

Java 程序员常用资源工具集合(建议收藏)

搜索资源网站工具类思维导图工具文档笔记平台搜索资源网站学习技术过程我们经常需要使用搜索引擎来检索资料,国内常用的也就是某度了。当然有条件的话,搜索引擎首先还是推荐使用 Google,如果没办法使用,可以使用以下几个作为备用:BingBing 国际版:https://cn.bing.com/比某度好用,之前还被停用了几天,最近可以了。DuckDuckGoDuckDuckGo:https://duckduckgo.com/从官网的介绍来看这个搜索引擎不收集用户信息,而且没有广告。S.

2020-07-28 19:30:30

贼好用的Java工具类库,GitHub星标10k+,你在用吗?

简介Hutool是Hu + tool的自造词,前者致敬我的“前任公司”,后者为工具之意,谐音“糊涂”,寓意追求“万事都作糊涂观,无所谓失,无所谓得”的境界。Hutool是一个Java工具包,也只是一个工具包,它帮助我们简化每一行代码,减少每一个方法,让Java语言也可以“甜甜的”。Hutool最初是我项目中“util”包的一个整理,后来慢慢积累并加入更多非业务相关功能,并广泛学习其它开源项目精髓,经过自己整理修改,最终形成丰富的开源工具集。(抄自作者简介)功能一个Java基础工具类,对文件、流、加密

2020-07-27 17:20:33

深入理解 Java 内存模型

Java内存模型(Java Memory Model,JMM)是java虚拟机规范定义的,用来屏蔽掉java程序在各种不同的硬件和操作系统对内存的访问的差异,这样就可以实现java程序在各种不同的平台上都能达到内存访问的一致性。可以避免像c++等直接使用物理硬件和操作系统的内存模型在不同操作系统和硬件平台下表现不同,比如有些c/c++程序可能在windows平台运行正常,而在linux平台却运行有问题。物理硬件和内存首先,在单核电脑中,处理问题要简单的多。对内存和硬件的要求,各种方面的考虑没有在多核的情

2020-07-24 19:24:34

Java中堆和栈的区别

堆和栈都是Java用来在RAM中存放数据的地方。堆(1)Java的堆是一个运行时数据区,类的对象从堆中分配空间。这些对象通过new等指令建立,通过垃圾回收器来销毁。(2)堆的优势是可以动态地分配内存空间,需要多少内存空间不必事先告诉编译器,因为它是在运行时动态分配的。但缺点是,由于需要在运行时动态分配内存,所以存取速度较慢。栈(1)栈中主要存放一些基本数据类型的变量(byte,short,int,long,float,double,boolean,char)和对象的引用。(2)栈的优势是,存取速

2020-07-23 21:01:54

优秀的 Java 项目代码都是如何分层的?

1、背景说起应用分层,大部分人都会认为这个不是很简单嘛 就controller,service, mapper三层。看起来简单,很多人其实并没有把他们职责划分开,在很多代码中,controller做的逻辑比service还多,service往往当成透传了,这其实是很多人开发代码都没有注意到的地方,反正功能也能用,至于放哪无所谓呗。这样往往造成后面代码无法复用,层级关系混乱,对后续代码的维护非常麻烦。的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。但是在真

2020-07-22 21:36:33

Java程序员必备的11大Intellij插件

善用Intellij插件可大幅提升我们的效率以下是我用过不错的Intellij插件1. .ignore地址:https://plugins.jetbrains.com/plugin/7495–ignore生成各种ignore文件,一键创建git ignore文件的模板,免得自己去写截图:2. lombok地址:https://plugins.jetbrains.com/plugin/6317-lombok-plugin支持lombok的各种注解,从此不用写getter setter这些 可

2020-07-20 19:53:50

我从外包公司离职了(一定要看!)

点击上方“码农突围”,马上关注这里是码农充电第一站,回复“666”,获取一份专属大礼包真爱,请设置“星标”或点个“在看”作者:张林-布莱恩特来源:www.cnblogs.com/zh...

2020-07-19 11:40:00

这个用Java写的开源音乐播放器,我粉了

随着版权意识的增强,如今,想听几首歌,都得下载好几个音乐软件,这也就算了,大部分音乐还都是付费,安装这么多APP或许还说的过,但是对于不是粉丝的人来说,付费听歌都不怎么愿意,于是就开始寻找免费的音乐下载,这时候要是有一个音乐播放器那就完美了。近日,猿妹发现一个用Java编写的音乐播放器——MusicPlayer,支持 Win / macOS/平台,整体界面如下:MusicPlayer具有如下特性:播放清单,你可以通过以下方式将歌曲添加到播放列表:选择一首歌曲后,单击“将歌曲添加到播放列表”按钮。

2020-07-16 18:51:25

阿里巴巴关于Java重要开源项目汇总

1.分布式应用服务开发的一站式解决方案 Spring Cloud AlibabaSpring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通过阿里中间件来迅速搭建分布式应用系统。地址:https://

2020-07-14 20:10:35

最难的几道Java面试题,看看你跪在第几个?

这是我收集的10个最棘手的Java面试问题列表。这些问题主要来自 Java 核心部分 ,不涉及 Java EE 相关问题。你可能知道这些棘手的 Java 问题的答案,或者觉得这些不足以挑战你的 Java 知识,但这些问题都是容易在各种 Java 面试中被问到的,而且包括我的朋友和同事在内的许多程序员都觉得很难回答。1.为什么等待和通知是在 Object 类而不是 Thread 中声明的?一个棘手的 Java 问题,如果 Java编程语言不是你设计的,你怎么能回答这个问题呢。Java编程的常识和深入了解有

2020-07-13 17:55:56

面试题:Java对象不再使用时,为什么要赋值为null?

前言许多Java开发者都曾听说过“不使用的对象应手动赋值为null“这句话,而且好多开发者一直信奉着这句话;问其原因,大都是回答“有利于GC更早回收内存,减少内存占用”,但再往深入问就回答不出来了。鉴于网上有太多关于此问题的误导,本文将通过实例,深入JVM剖析“对象不再使用时赋值为null”这一操作存在的意义,供君参考。本文尽量不使用专业术语,但仍需要你对JVM有一些概念。示例代码我们来看看一段非常简单的代码:public static void main(String[] args) {

2020-07-09 22:09:08

有了这款可视化工具,Java 应用性能调优 so easy。。。

JVisualVM 简介案例分析准备模拟内存泄漏样例使用JVisualVM分析内存泄漏JVisualVM 远程监控 TomcatJVisualVM 简介VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带,能够监控线程,内存情况,查看方法的CPU时间和内存中的对 象,已被GC的对象,反向查看分配的堆栈(如100个String对象分别由哪几个对象分配出来的)。在JDK_HOME/bin(默认是C:\Program Files\Java\j.

2020-07-08 19:43:48

如何在Java代码中去掉烦人的“!=null”

问题为了避免空指针调用,我们经常会看到这样的语句if (someobject != null) { someobject.doCalc();}最终,项目中会存在大量判空代码,多么丑陋繁冗!如何避免这种情况?我们是否滥用了判空呢?回答这是初、中级程序猿经常会遇到的问题。他们总喜欢在方法中返回null,因此,在调用这些方法时,也不得不去判空。另外,也许受此习惯影响,他们总潜意识地认为,所有的返回都是不可信任的,为了保护自己程序,就加了大量的判空。吐槽完毕,回到这个题目本身,进行判空前,请

2020-07-02 19:36:05

分享一个牛逼的 Java 开源后台管理系统,不要造轮子了!

还是那句话,重复造轮子是个苦逼的活,能搞懂搞会一个好轮子,是多么美好的事情,今天介绍一款杠把子级别的Java开源后台管理系统,RuoYi 基于SpringBoot开发分普通交互前段bootstrap版本,和vue前后端分离版本;bootstrap版本开源地址:https://gitee.com/y_project/RuoYi/vue前后端分离版本开原地址:https://gitee.com/y_project/RuoYi-Vuebootstrap版本:演示地址:http://ruoyi

2020-07-01 17:57:00

面试官问:为什么 Java 线程没有 Running 状态?我懵了

什么是 RUNNABLE?与传统的ready状态的区别与传统的running状态的区别当I/O阻塞时如何看待RUNNABLE状态?Java虚拟机层面所暴露给我们的状态,与操作系统底层的线程状态是两个不同层面的事。具体而言,这里说的 Java 线程状态均来自于 Thread 类下的 State 这一内部枚举类中所定义的状态:什么是 RUNNABLE?直接看它的 Javadoc 中的说明:一个在 JVM 中执行的线程处于这一状态中。(A thread executing..

2020-06-30 17:51:16

阿里内部员工,排查Java问题常用的工具单

这是一篇来源于阿里内部技术论坛的文章,原文在阿里内部获得一致好评。作者已经把这篇文章开放到云栖社区中供外网访问。Hollis对文章内容做了部分删减,主要删减掉了其中只有阿里内部才能使用的工具的介绍,并删减掉部分只有通过阿里内网才能访问到的链接。前言平时的工作中经常碰到很多疑难问题的处理,在解决问题的同时,有一些工具起到了相当大的作用,在此书写下来,一是作为笔记,可以让自己后续忘记了可快速翻阅,二是分享,希望看到此文的同学们可以拿出自己日常觉得帮助很大的工具,大家一起进步。闲话不多说,开搞。Linux

2020-06-29 22:44:15

面试美团,面试官突然问我 Java “锁” ,我哭了

前言Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK 8)、使用场景进行举例,为读者介绍主流锁的知识点,以及不同的锁的适用场景。Java中往往是按照是否含有某一特性来定义锁,我们通过特性将锁进行分组归类,再使用对比的方式进行介绍,帮助大家更快捷的理解相关知识。下面给出本文内容的总体分类目录:1. 乐观锁 VS 悲观锁乐观锁与悲观锁是一种广义上的概念,体现了看待线程同步的不同角度。在Java和数据库中都有此概念对应的

2020-06-17 18:25:55

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 博客之星
    博客之星
    授予通过"CSDN博客之星评选"中脱颖而出的十大博客之星称号的用户。
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。