自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

GZL的博客

原来生活,是一直的平淡

  • 博客(164)
  • 资源 (12)
  • 问答 (4)
  • 收藏
  • 关注

原创 漫谈Spring事务管理原理

从代理模式到代码实现, 漫谈spring声明式事务原理

2022-07-18 19:02:53 125 1

原创 规范,优雅的使用工具类

什么是工具类大家项目中不管是自己练习的demo还是企业里正式的项目都肯定有各种各样的工具类, 有祖传的也有新写的. 要说什么是工具类, 大家都能张口就来, 封装了公共逻辑的, 不能实例化的, 不依赖具体业务数据的就是工具类.实际企业项目中的问题但是在项目中我发现大家写的工具类往往不符合Sonar静态代码规范, 甚至在工具类依赖框架bean的时候将工具类实例化当作普通类来使用.理想的工具类我认为理想中的工具类应该具有如下特性:符合工具类定义, 抽象通用逻辑, 不依赖具体业务数据提供静态方法给调

2021-04-14 13:41:37 328

原创 看上市公司如何保证代码质量

代码质量控制是开发人员的朋友而不是敌人, **我们的目标是得到质量良好, 可以长期维护的代码, 质量控制是达到这一目标的手段

2020-08-11 15:12:47 682

原创 你看远处的山它好像一个小顶堆

原创文章,转载请私信.关注公众号 tastejava 学习加思考,品味java之美什么是小顶堆小顶堆是一种经过排序的完全二叉树, 其满足如下性质:小顶堆中的任意父节点都比其两个孩子结点小由上方性质又可以推导出如下性质:小顶堆的根节点为整个堆元素中最小的元素将小顶堆装入数组我们当然可以用面向对象的方式描述一颗二叉树, 但是有没有不浪费一丁点空间. 即除了元素本身开销外, 尽量不额外占用内存空间的描述方式呢?有的, 我们可以把小顶堆装入数组中. 为了把小顶堆装入数组中, 我们需要给出.

2020-06-30 18:08:40 204

原创 来啊, 一起看遍JDK源码

原创文章, 转载请私信. 关注 tastejava 学习加思考, 仔细品味java之美为什么要阅读源码面试要考, 不管是什么公司面试, 源码相关知识点考察是少不了了, 例如ArrayList与LinkedList区别这样的烂大街问题开发要用, 肯定要很熟悉JDK常见api, 理解其内部实现和特点才能正确灵活的运用怎么阅读源码经过一段时间的摸爬滚打, 我发现要想高效的阅读源码, 首先阅读英文原始文档的能力要强, 其次要熟练掌握所使用的IDE方法跳转相关操作, 如实现类跳转到接口, 接口跳转到.

2020-06-29 15:31:11 211

原创 巧妙的CAS与乐观锁思想

原创文章,转载请私信。关注 tastejava 学习加思考,品味java之美摘要接下来我们先理解CAS怎么保证安全的修改共享变量,然后查看JDK源码分析其最佳实践,再举例实际企业开发中乐观锁思想的应用。最后总结CAS以及分析其局限性。什么是CASCAS是CompareAndSwap,即比较和交换。为什么CAS没有用到锁还能保证并发情况下安全的操作数据呢,名字其实非常直观的表明了CAS的...

2020-03-04 09:53:40 191

原创 10句有效代码带你分析6种线程状态

原创文章, 转载请私信. 关注 tastejava 学习加思考, 仔细品味java之美为什么要了解java线程的状态多线程高并发是初级开发者迈向中高级开发者必须要掌握的能力, 万丈高楼平地起, 在深入了解这部分内容前, 我们要明确最基本的概念, 即线程有哪些状态.从源码来看Java线程有哪些状态得益于开源精神, 我们可以直观的分析看到在Java中, 线程到底有哪些状态. Java中记录...

2020-02-13 10:50:31 234

原创 从源码角度分析hashCode和equals, 再也不背hashCode和equals的覆写规则了:)

原创文章, 转载请私信什么是hashCode和equalshashCode和equals都是Object对象中的方法, 也就Java中是所有对象都默认拥有这两个方法. 方法的作用正如其名, hashCode用于返回当前对象的hash值, equals方法用于比较两个对象是否相等.hashCode和equals默认实现Object类中hashCode和equals的源代码分别如下所示:...

2019-12-23 08:27:30 148

原创 Java BIO NIO 与 AIO 分析第三部分之AIO

AIO部分上一篇文章中分析了BIO部分, 接下来分析一下AIO部分, AIO是JDK1.7新增的属于java.nio包下的IO组件. 还是一样的思路, 从了解AIO的各个重要组件开始. JAVA的AIO只提供TCP操作和文件操作, 没有提供UDP支持. 主要组件有CompletionHandler, AsynchronousFileChannel, AsynchronousServerSocke...

2019-12-05 10:36:03 358

原创 jstack排查CPU占用过高之BlockingQueue的陷阱

什么是jstack

2019-12-02 16:34:13 1996

原创 Java BIO NIO 与 AIO 分析第二部分之NIO

NIO 大致体系结构

2019-11-29 17:50:40 175

原创 Java BIO NIO 与 AIO 分析第一部分之BIO

BIO NIO AIO的概念首先要明确阻塞/非阻塞即blocking/non-blocking和同步/异步即synchronous/asynchronous的概念, 阻塞和非阻塞指的是是否会阻塞当前线程, 例如调用ServerSocket的accept方法后, 当前线程就会阻塞等待连接建立. 同步和异步指的是一个操作结果需要主动获取还是通过回调函数处理, 例如:// 解释异步同步概念伪代码/...

2019-11-25 10:10:14 242

原创 JDK8 Optional 应用场景与方式分析

Optional 出现的意义Optional 是从 JDK1.8 开始提供的一个容器类, 主要用于避免空指针异常(NPE), 其提供的一系列方法配合 Lambda 表达式可以让代码更加清晰, 语义化, 以及避免了空指针异常的问题这里要注意是避免空指针异常, 而不是避免返回null.Optional 源码分析及使用关于 Optional 方法怎么使用的资料网络上也有很多了, 不过一些文章不是很...

2019-11-14 15:14:45 6142 3

原创 JDK8 Stream 流式操作分析

Stream 是什么, 能干什么Stream 实例的创建Stream 的使用Stream实例的操作Stream实例操作结果的聚集

2019-11-14 10:13:25 393

原创 Java函数式编程分析

Java开发者一般都习惯面向对象编程, 实际项目中函数式编程出现频率也不太高, 要理解函数式编程首先要理解一些前置概念, 我来总结一下Java中的函数式编程, 如果为其他人节约了时间, 减轻了学习成本, 那就太好了.什么是函数式编程函数式编程是一种编程范式, 允许将函数作为参数传递给目标方法, 目标方法也可以返回一个函数.(将方法实现延后到调用方法传递参数的时刻, 让参数或者返回结果包含逻...

2019-11-13 16:45:36 170

原创 VantUI(ZanUI)框架使用async-validator进行表单数据校验

前端UI框架与async-validator介绍VantUI是一款有赞出品的基于Vue的前端手机端开发框架ElementUI和MintUI是两款饿了么公司出品的基于Vue的UI框架, ElementUI适用于电脑端, MintUI适用于手机端async-validator是一款基于js的异步数据校验插件(当前github上已有117k个仓库使用了async-validator)asy...

2019-10-10 17:11:25 2439

原创 SpringBoot结合Swagger2生产环境实践

SpringBoot结合Swagger2生产环境实践

2019-08-21 18:19:44 525

原创 文件路径问题

unix/linux中文件路径为左斜线'/'分隔windows中文件路径为右斜线'\'java中引用文件路径经常出现"C:\\abc\\bacd\\ef.txt"的情况,因为右斜线需要转义以后java中有关路径都用左斜线'/'简洁.

2017-10-25 13:35:36 257

原创 maven导入项目依赖包的坑

本地仓库已经有依赖,但还是依赖各种下载不下来,删除setting.xml就好了.

2017-10-25 11:21:31 1257

转载 springboot项目以war包形式部署

转载自u012359995 原文链接 http://m.blog.csdn.net/u012359995/article/details/52515226把spring-boot项目按照平常的web项目一样发布到tomcat容器下一、修改打包形式在pom.xml里设置 war二、移除嵌入式tomcat插件在pom.xml里找到spri

2017-10-18 09:54:11 6139

原创 linux中service命令的原理

service xxx启动 /etc/init.d/目录下的xxx脚本例如service vsftpd start 与 /etc/init.d/vsftpd start有着同样的作用常见命令 start stop reload restart force-reload把可执行脚本sh全路径放到/etc/rc.local中即可实现开机自启动rc0.d到rc6.d是linux中

2017-10-17 19:07:31 1757

转载 zookepper搭建

本篇文章结构:总共包括10个系列  ZooKeeper系列之一:ZooKeeper简介  ZooKeeper系列之二:ZooKeeper数据模型、命名空间以及节点的概念   ZooKeeper系列之三:ZooKeeper的安装ZooKeeper系列之四:ZooKeeper的配置ZooKeeper

2017-10-13 14:34:32 948

转载 tomcat集群共享session

本文转载自csdn博客用户fengwind1tomcat集群的主要方法有三种:1、采用粘性会话,即某个ip只会访问集群中的某一台机器,这样就可以简单的解决session共享的问题;2、采用会话共享,目前网上较多的案例是使用memcahed作为共享容器,需要开发以memcahed作为容器的会话管理器,然后配置到tomcat中。3、采用session复制技术,tomcat本身已支持

2017-10-13 13:35:23 445

转载 cookie与session详解

一个很古老的博客,已经不知道原作者是谁了,从文章中说普遍手机浏览器不支持cookie这一点来看这篇博客起码写于2012年以前.cookie与session介绍得很详细,读过之后帮助很大,所以收藏在自己的博客里.读这篇博客的时候文章中的图片是缺失状态,当转载到csdn博客竟然显示出了图片,可以推断原作者很有可能在csdn发表过这篇博文,实在是太奇妙了!1.1  Cookie机制在

2017-10-12 18:18:39 314

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-10-12 17:47:58 198

原创 linux命令加杠不加杠,单杠与双杠

单杠后面参数是单字母形式,双杠后面参数是单词形式例如rm -vf ***tar -xzvf ***.tar.gzgcc --versionrm --help参数前面加杠是System V风格,不加杠是BSD风格.

2017-10-12 10:58:57 1507

原创 ps aux|grep xxx

ps aux|grep tomcatps:Process Status进程状态监控-aux参数-d:显示所有进程但是忽略会话引线-a:显示一个终端的所有进程除了会话引线-u:uid or username 选择有效的用户id或者用户名-x:显示没有控制终端的进程,同时显示各个命令的具体路径,dx不能合用grep:global search regular

2017-10-12 10:27:27 4498

转载 Intellij IDEA快捷键

Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论。每个人都有自己的最爱,想排出个理想的榜单还真是困难。以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧。1 智能提示Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,

2017-09-29 15:16:11 143

原创 spring事务传播

[前方是咫尺,还是天涯,不知道那年高三的你,是否真的在六月的天空,自由飞翔]

2017-09-22 10:55:38 156

原创 被@Autowired的对象不能再new

Spring中被Autowired后的对象不能再用new关键字实例化,否则会报空指针异常org.springframework.web.util.NestedServletException: Request processing fail nested exception is java.lang.NullPointerException被这个错误折腾了一个小下午,我怎么就管不住我这手呢

2017-09-20 19:23:22 2357

原创 git终端生成ssh key

①设置git的username和email$ git config --global user.name "gzl"$ git config --global user.email "[email protected]"②生成ssh key$ ssh-keygen -t rsa -C “[email protected]”生成的ssh key文件在/users/用户名/.ssh文件夹下

2017-09-19 10:00:08 356

原创 反射(Reflection)和内省(Introspector)

反射可以通过类名获取到对应的Class,可以通过方法名获取到Method并通过invoke方法调用获取到的方法.应用场景:这样一个应用程序,它支持动态的功能扩展,也就是说程序不重新启动但是可以自动加载新的功能,这个功能使用一个具体类来表示。首先我们必须为这些功能定义一个接口类,然后我们要求所有扩展的功能类必须实现我指定的接口,这个规定了应用程序和可扩展功能之间的接口规则,但是怎么动态加载呢?我

2017-09-15 11:31:07 257

转载 RESTful登录设计(基于Spring及Redis的Token鉴权)

什么是RESTREST(Representational State Transfer)是一种软件架构风格。它将服务端的信息和功能等所有事物统称为资源,客户端的请求实际就是对资源进行操作,它的主要特点有: – 每一个资源都会对应一个独一无二的url – 客户端通过HTTP的GET、POST、PUT、DELETE请求方法对资源进行查询、创建、修改、删除操作 – 客户端与服务端的交互必须是无状

2017-09-14 14:11:36 357

转载 前后端分离springmvc和RESTful理解

1. 理解MVCMVC是一种经典的设计模式,全名为Model-View-Controller,即模型-视图-控制器。其中,模型是用于封装数据的载体,例如,在Java中一般通过一个简单的POJO(Plain Ordinary Java Object)来表示,其本质是一个普通的Java Bean,包含一系列的成员变量及其getter/setter方法。对于视图而言,它更加偏重于展现,也就是说,

2017-09-14 11:35:11 292

转载 黎活明给程序员的忠告

黎活明,传智播客教育总裁,Java EE高级架构师、咨询顾问、高级讲师,国内第一本ejb3.0书籍的作者,有着丰富的b/s系统开发与网站运营经验。现任传智播客教育科技有限公司Java EE高级架构师与咨询顾问。其中一些我认为经典的地方,做了标红处理。展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告 走过的路,回忆起来是那么曲折,把自己的一些心得体会分享给程序

2017-09-13 14:07:25 248

转载 树莓派搭建服务器具体的教程(tomcat+mysql)

转自gepeisong,怕原作者删除,所以转到自己博客作为一个备份.这几天搞自己的网站,想把树莓派当服务器,于是就捣鼓了几天,期间,遇到了一些问题,感觉网上的资料也不太全面,废话不多说,直接进入正题!(ps:www.gepeisong.com这是我个人的网站)材料:树莓派,tf卡(最好大于8g),读卡器,一根网线,路由器。1 首先你得有块树莓派!其次如果只买了板子,没有买屏幕(建议

2017-09-07 18:25:09 1858

转载 树莓派搭建各种服务器教程

Raspberry Pi(树莓派)有很多的应用,其中搭建服务器是大家应用比较多的,今天就整理一个合集用Raspberry Pi(树莓派)打造各种服务器。欢迎大家提出宝贵意见,更欢迎大家补充您用树莓派所做的好玩的应用![教程] 将树莓派变成网络打印机服务器(更新PC和手机端设置)!http://www.eeboard.com/bbs/thread-8818-1-1.html[

2017-09-07 09:39:36 4128

原创 那些有意思的英文缩写对应的英文全称

BIOS(基本输入输出系统Basic I/O System)

2017-09-06 15:04:10 9045

转载 java线程池分析转自trinea

Java(Android)线程池介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用。本文是基础篇,后面会分享下线程池一些高级功能。1、new Thread的弊端执行一个异步任务你还只是如下new Thread吗?Javanew Thread(new Runnable() { @Override public void r

2017-09-05 10:36:31 148

原创 DCM示例文件下载网站

http://www.barre.nom.fr/medical/samples/http://deckard.mc.duke.edu/%7Esamei/tg18#_DOWNLOAD_THE_TG18

2017-09-04 18:27:10 7492

Java开发手册1.5华山版.zip

阿里巴巴开发手册华山版, 遵守谷歌编码规范或者阿里巴巴编码规范已经成了行业准则, 读了手册之后代码质量会获得质的提升

2019-11-13

精通nginx第2版

该资源是精通nginx第2版,高清pdf并且带目录,全书模块化编写,无需了解nginx即可阅读,很好的资源!!!该资源来自网络,自己作为备份使用.

2018-03-05

java高级成像 jai库

jai的jar包,自己备份,方便大家下载,压缩包内包含了 jai-core-1.1.3.jar jai-lib-1.1.4-b07.jar jai_imageio-1.2-pre-dr-b04.jar

2018-01-17

Weasis桌面版win64已测试

weasis最新版本,dicom阅读器,阅片软件,已测试win10x64可以运行,解压即用,完全免费,很好的医疗阅片软件

2017-12-20

程序员的数学思维修炼高清pdf适合手机阅读

程序员的数学思维修炼高清pdf,特别适合手机阅读,手机阅读效果最佳

2017-12-19

Efilm 4.1 安装文件和注册机 part3

Efilm 4.1 安装文件和注册机 第一部分 共三部分。 http://blog.csdn.net/u010752082/article/details/78784533

2017-12-12

Efilm 4.1 安装文件和注册机 part2

Efilm 4.1 安装文件和注册机 第二部分 共三部分。 http://blog.csdn.net/u010752082/article/details/78784533

2017-12-12

Efilm 4.1 安装文件和注册机 part1

Efilm 4.1 安装文件和注册机 第一部分 共三部分。只有第一部分5分,其他均为免费. http://blog.csdn.net/u010752082/article/details/78784533

2017-12-12

EditPlus3完美破解汉化版

此版本 EditPlus3完美破解,完美汉化,目前使用过最完美的编辑器,无论是初学java还是资深开发人员都应该在电脑常备的一款利器.

2017-09-30

tomcat7 官网原版tomcat

apache tomcat7,官网原版,方便小伙伴们下载.亲测可用apache tomcat7,apache官网原版,方便小伙伴们下载.亲测可用

2017-09-18

SSM整合所需要的全部jar包,spring版本为较新的4.3,mybatis也为较新的3.4,亲测可用.

SSM整合所需要的全部jar包,spring版本为较新的4.3,mybatis也为较新的3.4,亲测可用.Spring SpringMVC Mybatis,适合新手学习更快的找到所必需的jar包

2017-09-18

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

TA关注的人

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