
Java
文章平均质量分 58
JavaSE,Java实现有趣的功能,Java高级用法
结构化思维wz
敬他人,即是敬自己;靠自己,胜于靠他人。
展开
-
MyBatis是如何为Dao接口创建实现类的
本文是我的MyBatis源码分析专栏中的一小部分,作为试读部分,详细讲述了MyBatis是如何通过动态代理创建Dao接口的实现类的。原创 2022-11-28 21:37:36 · 887 阅读 · 0 评论 -
常见的限流算法与实现
限流在开发中的应用有很多,常见的限流算法有什么呢?系统学习常见的限流算法,不但可以更好的应用,对学习开源限流框架也有很大的帮助。原创 2022-11-20 20:36:32 · 729 阅读 · 0 评论 -
自定义校验注解的开发
在业务中,会涉及到很多参数校验,通常情况下,我们会使用注解在入参中进行标注。但是一些特定的业务校验注解需要我们自定义开发。原创 2022-11-07 21:12:15 · 438 阅读 · 0 评论 -
Sentinel从入门到应用
官方介绍:随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。Sentinel 的开源生态:Sentinel具有以下特征:丰富的应用场景:秒杀限流,消息削峰填谷、集群流量控制、实时熔断下游不可用应用等完备的实时监控:Sentinel 同时提供实时的监控功能。原创 2022-10-12 21:28:59 · 972 阅读 · 1 评论 -
Redisson实现分布式锁从入门到应用
随着技术快速发展,数据规模增大,分布式系统越来越普及,一个应用往往会部署在多台机器上(多节点),在有些场景中,为了保证数据不重复,要求在同一时刻,同一任务只在一个节点上运行,即保证某一方法同一时刻只能被一个线程执行。白话讲分布式锁:所有请求的线程都去同一个地方占坑,如果有坑位,就执行业务逻辑,没有坑位,就需要其他线程释放坑位。这个坑位是所有线程可见的,可以把这个坑位放到 Redis 缓存或者数据库。原创 2022-10-12 21:26:29 · 1222 阅读 · 2 评论 -
记录一次可见性问题引发的思考
可见性问题欢迎大家在评论区说出自己的想法案例描述:写一个while循环,条件变量设置为ture,创建一个线程(线程0)调执行此方法。用main线程修改条件变量,看是否while循环结束了。如果结束了,证明main线程在工作内存中修改的条件变量被线程0读取到了。如果没结束,证明main线程在工作内存中修改的条件变量没有被线程0读取到。public class TestVolatile { public static void main(String[] args) {原创 2022-04-10 16:49:51 · 385 阅读 · 0 评论 -
【恋上数据结构】回溯 | N皇后问题
N皇后问题8皇后问题❓ 在 8*8 的棋盘上,摆放八个皇后,使其不能互相攻击:任意两个皇后不能处于同一行、列、对角线上。 问有多少种摆法?回溯解法首先,缩小问题范围(4皇后问题),理解回溯的思想:剪枝:根据限制条件,发现同一行同一列、对角线不能摆放皇后,可以进行剪枝操作。package 回溯;/** * @ClassName: Quen * @Description: 八皇后问题 * @author: WangZe * @date: 2022/3/14 14:40 */原创 2022-03-14 16:07:35 · 544 阅读 · 0 评论 -
快速理解 POJO,VO,DO,DTO,Entity
项目中总是能看到包名叫 POJO,VO,DO,DTO,Entity的一些包,这些包中的对象是什么用处呢 ?本文可以让你快速理解,适合小白!文章目录POJOVODTODOEntity先来一张图帮助理解:POJO全称:Plain Ordinary Java ObjectPOJO对象的特点:类型中如果存在成员变量,必须提供get,set方法。提供默认无参构造可以实现Serializable,也可以不实现。不能实现容器或者框架所规定的接口。POJO是DO/DTO/BO/VO的统称,禁.原创 2021-12-23 12:35:24 · 1928 阅读 · 2 评论 -
2w字合集 | 函数式编程—Stream流
2w字+生动形象的图+优质例子,熟练使用Java8 函数式编程、Stream流。从0到1,本文涵盖Stream流所需的各种前置知识,真正一文读懂Stream流!原创 2021-12-11 23:55:56 · 1560 阅读 · 3 评论 -
WebService 入门
WebServiceWebService概述WebService 即Web服务,一种跨编程语言跨操作系统的远程调用技术。主要用于多个异构系统的数据交互。 Web Service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的交互操作的应用程序。 [1] Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件, 就可原创 2021-12-09 09:25:31 · 921 阅读 · 0 评论 -
UML | 类图
文章目录类图类图的表示方法类与类之间关系的表示方法关联关系聚合关系组合关系依赖关系继承关系实现关系类图用于描述系统中类与类之间的各种静态关系。依赖,泛化(继承),实现,关联,聚合,组合类图的表示方法属性/方法名称前加的加号和建好表示了这个属性/方法的可见性,UML类图中表示可见性的符号有三种:+: 表示public-: 表示private#:表示protected属性的完整表示方式是:可见性 名称 :类型 [ = 缺省值]方法的完整表示方式是:可见性 名称(参数列表) [ :原创 2021-10-31 20:34:08 · 1221 阅读 · 0 评论 -
笔试 | Java知识点总结(一)
Java笔试总结刷了一些笔试题总结了一些细节! 加油吧!Java成员变量的访问控制权限访问级别访问控制修饰符同类同包不同类同包子类不同包不同类不同包子类公开public????????????????????受保护protected????????????????注意默认default????????????私有private????Math.ceil 与 Math.floordoubl原创 2021-10-07 08:42:43 · 348 阅读 · 0 评论 -
速学 | 如何帮女朋友用Java合并两个PDF
今天女朋友要我帮她把两个PDF合并成一个,当时太忙没来得及弄,却被打印店老板抢了风头,越想越气。想来我怎么也是个java小菜鸡,这么强大的Java生态肯定有操作PDF的。于是立马百度大法作此文章!1.引入依赖<dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.4.3</ve.原创 2021-10-05 19:37:09 · 1035 阅读 · 4 评论 -
[ 4w字 ] JavaSE总结(基础+高级+多线程+面试题)
???? JavaSE温故而知新结合jvm学习java。学自胡鑫喆老师。可能是你见过最好最通俗的java笔记,每一个例子每一个图都会让你有新的理解。不论是小白初学还是复习用,都会有新的收获。持续更新中。。。文章目录一、Java基础JDK、JRE、JVM**基础语法**Java编码规范1.注释2.关键字3.数据类型4.变量和常量5.运算符6.流程控制7.方法(函数)8.方法与JVM结合分析嵌套调用分析递归调用分析9.数组数组的语法:数组的内存结构二维数组**面向对象**1.定义一个Java类2.对象的原创 2021-07-08 19:27:41 · 3323 阅读 · 14 评论 -
Junit 单元测试
package cn.test.Day12;import org.junit.Assert;import org.junit.Test;/** * @author wangze * Junit单元测试 * 白盒测试:需要写代码,关注程序运行的具体流程 * 黑盒测试:不需要写代码,给程序输入的值看是否输出跟预期一样 * Junit属于白盒测试的一种 * 使用步骤: * 1.定义一个测试类(测试用例) * 建议:测试类名:被测试类+Test * 定义测试方法:可以独立运行 *原创 2021-03-19 14:56:13 · 138 阅读 · 0 评论 -
java(反射)
反射什么是反射? 在程序运行过程中分析类的一种能力反射能做什么? 1.分析类 加载并初始化一个类 查看类的所有属性和方法 2.查看并使用对象 查看一个对象的所有属性和方法 使用对象的任意属性和方法反射的应用场景 构建通用的工具 搭建具有高度灵活性和拓展性的系统框架类加载器(ClassLoader) 负责将类的字节码文件(.class文件)加载到内存...原创 2021-03-13 20:42:46 · 147 阅读 · 1 评论 -
java案例(用集合知识模仿斗地主发牌系统)
package cn.demo.one;import java.sql.Connection;import java.util.*;/** * @author wangze 模拟斗地主发牌 */public class SendPokerTest { public static void main(String[] args) {// 1.买牌// 1.1定义一个双列集合,键:牌的编号 值:具体的牌,规则:编号越小,牌越小 Map&l原创 2021-03-12 14:43:42 · 191 阅读 · 1 评论 -
java9(Set,Map)
package cn.test.Day09;/** * @author wangze */public class Day09 { /* Collections工具类 针对集合进行操作的工具类 成员方法: sort(List<T>) 根据元素的自然顺序,将指定列表按升序排列 max(Collection<T>)返回集合的最大元素 reverse(List<T&原创 2021-03-12 11:39:14 · 198 阅读 · 0 评论 -
java8(List集合,增强for,泛型)
import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.ListIterator;/** * @author wangze */public class Day08 { /* JAVA常用工具_集合 集合简介:什么是结合??? 简称集,用来存储多个元素的容器 集合与数组的区别:元素类型原创 2021-03-12 10:11:22 · 423 阅读 · 0 评论 -
java7(API)
扶我起来,氧气瓶,我还能写import java.util.Date;import java.util.Scanner;public class Day07 { /** API 使用API 的步骤: 查找类 查看模块名 查看包名 查看构造方法 找到符合需求的方法原创 2021-03-11 16:20:32 · 201 阅读 · 2 评论 -
java6(多态,抽象类,接口)
虽然注释看着不明显,但是可以直接到编辑器中运行。结合注释与代码,一定能更好理解!/** * @author wangze */public class Day06 { /** 多态 1.多态的概念:同一对象在不同情况下表现出的不同状态或行为 2.实现多态的步骤: 要有继承(或实现)的关系 要有方法重写 父类引用指向子类对象(is a关系) 例如:Animal a = ne原创 2021-03-11 10:52:16 · 229 阅读 · 2 评论