自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 问答 (1)
  • 收藏
  • 关注

原创 Java编码技巧系列之「用“Optional“后终于不用再烦恼”if-else“ 了」

创建一个 Optional 实例,当t为null时抛出异常创建一个 Optional 实例,但当 t为null时不会抛出异常,而是返回一个空的实例创建一个空的 Optional 实例。

2023-05-30 22:16:08 126

原创 xxl-job调度原来是这样实现的

日常都在使用,但是对于xxl-job是怎么实现调度的,了解的又有多少呢?本文通过对xxl-job源码进行分享,帮助大家了解下这一广泛使用的调度任务,到底是怎么实现的。负责管理调度信息,按照调度配置发出调度请求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系统性能不再受限于任务模块;支持可视化、简单且动态的管理调度信息,包括任务新建,更新,删除,GLUE开发和任务报警等,所有上述操作都会实时生效,同时支持监控调度结果以及执行日志,支持执行器Failover。

2023-05-30 22:13:42 479

原创 Java项目毕业设计「电子商城 SpringBoot + Vue 」

电子商城,Java 前后端源码+ 文档 + 数据库sql。 可作为毕业设计

2023-05-29 22:20:39 145

原创 Java编码技巧系列之「“函数式编程“原来代码可以这么整洁 」

Java函数编程,从源码再到示例。以后再也不困扰了~

2023-05-28 16:06:19 135

原创 Java编码技巧系列之「浅谈“泛型“和“通配符”提高代码扩展性利器」

从Java5开始,泛型(generic)已经成为Java编程语言的一部分。在没有泛型之前,从集合中读到的每一个对象都必须进行转换。如果有人不小心插入了类型错误的对象。在运行时的转换处理就会出错。有了泛型之后,你可以告诉编译器每个集合中接受哪些类型的对象。编译器自动为你的插入进行转换,并在编译时告知是否插入类型错误的对象。这样可以更加安全,也更加清楚。

2023-05-28 09:41:24 45 1

原创 可见性和原子性到底什么区别?「剖析volatile原理」

volatile定义的变量,每次获取时候都从cpu主存获取,禁止从cpu缓存获取。

2023-05-27 20:11:28 37 1

原创 AQS看这一篇就够了「AbstractQueuedSynchronizer 从源码角度剖析」

/该抽象定义state各种获取方法,抽象资源的获取方法 //最核心的方法 就是 acquire() ,acquireShared(int) public abstract class AbstractQueuedSynchronizer extends AbstractOwnableSynchronizer implements java . io . Serializable {

2023-05-27 20:08:53 87 1

原创 synchronized前生今世「与volatile区别 原理」

Java语言的关键字,可用来给对象和方法或者代码块加锁,当它锁定一个方法或者一个代码块的时候,同一时刻最多只有一个线程执行这段代码。当两个并发线程访问同一个对象Object中的这个加锁同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。然而,当一个线程访问object的一个加锁代码块时,另一个线程仍可以访问该object中的非加锁代码块。

2023-05-27 20:08:33 45 1

原创 一文读懂ThreadLocal「线程变量原理 源码剖析」

叫做线程变量,意思是中填充的变量属于当前线程,该变量对其他线程而言是隔离的,也就是说该变量是当前线程独有的变量。为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。ThreadLoal变量,线程局部变量,同一个所包含的对象,在不同的Thread中有不同的副本。因为每个Thread内有自己的实例副本,且该副本只能由当前Thread使用。这是也是命名的由来。既然每个Thread有自己的实例副本,且其它Thread不可访问,那就不存在多线程间共享的问题。提供了线程本地的实例。

2023-05-27 16:00:00 260

原创 Java线程池攻略<二>:四种常用线程池剖析

基于共有四种类型线程池。

2023-05-27 15:56:08 331 1

原创 Java线程池攻略<一>:初识ThreadPoolExecutor

是一个 ExecutorService,它使用可能的几个池线程之一执行每个提交的任务,通常使用 Executors 工厂方法配置。

2023-05-27 15:55:09 55 1

原创 Java设计模式,看这一篇就够了!

设计模式的目标:提升代码重用性、可读性、可扩展性、可靠性,还能降低系统中类与类之间的耦合度,使程序呈现高内聚低耦合的特性。程序员在开始工作和学习的初期,要优先学习一下设计模式,逐渐应用到工作当中。写出高质量代码。设计模式的作用,主要有以下4点:1.代码重用性相同功能的代码不用多次编写。2.可读性设计模式使程序易读,编程规范性,方便其他程序员的阅读和理解。3.可扩展性设计模式能使编写的程序具有良好的可扩展性,满足系统设计的开闭原则。

2023-05-26 21:10:37 533 2

Java web 项目电子商城

SpringBoot + Vue 前后端分离。 前后端源码 + Sql文件 + 文档 适合学习,开发使用。需要的同学们可以看看。 技术栈: springboot、springmvc、mybatis-plus、lombok、vue2.0,redis 准备环境: windows/mac、Idea jdk1.8、 mysql、maven、redis 功能说明 前台: 购买首页:展示商品信息 商品分类:按分类展示商品信息 我的购物车:购物车信息 我的订单:订单信息 后台: 商品分类管理 轮播图管理 商品管理 订单管理 营收管理

2023-05-30

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

TA关注的人

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