自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 原型设计模式

作用将克隆过程委派给被克隆的实际对象,当子类的属性特别多的时候,对其进行克隆甚至可以替换子类的构造。优点可以克隆对象,不需要所属的具体类进行耦合可以克隆预生成原型,避免反复运行初始化代码代码示例Javapublic abstract class Animal{ public String name; public int age; public Animal(){} public Animal(Animal target ){ this.na

2021-07-07 21:03:25 99

原创 wsl + windows terminal + ohmy

WSL和windows terminal 可以在微软应用商店中进行下载。ohmy下载apt-get install zshapt-get install gitsh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"默认风格增加路径显示这样下载之后使用的是ohmy自带的风格,在该风格下,shell是没有路径的。cd .oh-my-zsh/themesvim robbyrussel

2021-06-23 14:16:48 173

原创 @Validated 讲解

SpringBoot 中使用@Validated 来检验数据,如果数据异常则抛出异常,统一处理。例如,在Controller层中,对传入的一个参数进行检验@Validated TestDto testDto对应的entity,TestDto@Datapublic class TestDto { @NotEmpty(message = "图片不能为空") private ...

2019-10-29 21:16:08 12097 2

原创 Java死锁案例

两个线程在执行的过程中,因为争抢资源而造成相互等待的现象,若无外力干涉的情况,无法推进。(此案例来源于网络)class HoldLockThread implements Runnable { private String lockA; private String lockB; public HoldLockThread(String lockA, Strin...

2019-08-29 16:57:50 274

转载 微信小程序为什么使用双线程模型

双线程模型为什么使用双线程模型?个人理解总结:小程序的架构设计时,要求渲染快、加载快。渲染页面的技术主要分为三种:纯客户端原生技术渲染(纯客户端技术需要与微信代码一起编包,跟随微信发布版本,这样的开发节奏不对);纯web技术渲染(纯web技术,那么一些复杂交互页面可能面临一些性能问题,因为Web技术中,UI和JS的脚本在单线程中,这样容易导致逻辑任务抢占UI渲染资源。);介于客户端技...

2019-07-19 11:33:36 2381

原创 微信小程序调用API接口不通

Question不在以下 request 合法域名列表中,请参考文档:https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html解决方案one微信开发者工具右上角 — 详情 — 勾选(不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书)two如果还没有解决...

2019-07-08 14:10:39 5916

原创 synchronized 使用详解+案例

synchronizedsynchronized 锁的类型类锁加类锁的方式对象锁加对象锁的方式对于类锁和对象锁的调用呢?synchronized 锁的类型synchronized的锁类型,我觉得主要分为两种,一种是类锁,一种是实例对象锁。类锁类锁,顾名思义,就是在这个类上面加锁,也就是说,对于所有加了类锁的方法的时候,一次只有一个线程能够调用一个增加类锁的方法。加类锁的方式1、在静态方...

2019-06-27 11:13:32 517

原创 Java - 生产者消费者

生产者和消费者模型基于Lock的生产者消费者模型基于阻塞队列的生产消费者模型需求: 一个初始值为0,一个加一,一个减1,循环操作基于Lock的生产者消费者模型class SharaData { private AtomicInteger number = new AtomicInteger(); private Lock lock = new ReentrantLock();...

2019-06-20 15:05:40 105

原创 阻塞队列(BlockingQueue)和生产者消费者

BlockingQueue什么是阻塞队列阻塞队列的使用add removeoffer pollput takeoffer poll 设超时时间什么是阻塞队列举例说明:海底捞有一个等待区,当人满的时候,宾客就在等待去进行等待;然后当有空位的时候,等待区中的人就进去消费,那么这个等待区就相当于阻塞队列。像一个生产消费模型。阻塞队列首先是一个队列,当堵塞队列为空的时候,那么从队列中取元素的操作就会...

2019-06-19 14:10:02 459

原创 Java 锁(可重入锁,自旋锁,读写锁)

Java 一些列锁公平锁与非公平锁可重入锁自旋锁读写锁本文主要介绍Java的一些锁:公平锁,非公平锁,可重入锁,自旋锁,以及它们的使用案例公平锁与非公平锁公平锁就是多线程按照申请锁的顺序来获取锁,先来后到。非公平锁是多线程获取锁的顺序不是按照申请锁的顺序。可能造成优先级反转和饥饿现象,如果能抢占就抢占,否则就按照公平锁进行处理。ReentrantLock默认的时候是非公平锁,但是也可...

2019-06-18 12:12:58 1516

原创 Java集合类不安全问题(HaspMap不安全)

Java 集合类不安全问题ArrayList为什么ArrayList 不安全怎么解决ArrayList 不安全问题HashSet不安全问题HashMap什么时候HashMap是不安全的?怎么解决HashMap不安全问题Java中的一些集合类:例如ArrayList、HashSet、HashMap 在并发条件下都是不安全的。一般情况下报的错误是:“Concurrent Modification E...

2019-06-17 12:19:13 733

原创 Java CAS详解

CAS主要内容CAS实例什么是UnSafe类CAS底层AtomicInteger.getAndIncrement() 进行分析UnSafe 的 getAndAddIntCAS缺点?什么是ABA问题原子引用如何解决ABA问题时间戳原子引用主要内容本文从 CAS实例 --> 什么是UnSafe类 --> CAS底层 -->AtomicInteger.getAndIncrement...

2019-06-12 16:57:55 3932 3

原创 单例模式看这几个

单例模式是一种常用的软件设计模式,通过它能够保证系统中,应用该模式的一个类只有一个实例。在面试中,本人总共手写过三种单例模式:懒汉模式、饿汉模式、双重检查模式懒汉模式:顾名思义,当系统需要类的实例的时候才会进行初始化,否则就不会进行初始化。public class Singleton { private static Singleton singleton = null;...

2019-06-11 23:53:40 125

原创 volatile 禁止指令重排

首先编译器执行指令的时候会存在指令重排的情况,以便于提高指令的执行速度。就像是考试一样,肯定是先把会的题做完再做难的题目。什么时候会发生重排,也就是两个指令之间不会存在依赖性,例如: a = 1; y = a+1。这两个语句就不会发生指令重排,因为y的值依赖a的值;但是如果是: a =1 ; y = 2 。这两个语句就会发生,因为不存在依赖。在单线程的条件下,指令重排不会影响到最终的结果,也就...

2019-06-10 22:04:58 2820 1

原创 volatile 不保证原子性

什么是原子性,说白了就是整个程序中的所有操作要么都执行,要么都不执行。但是 volatile 可以保证可见性,但是不能保证原子性,所以是一个轻量级的同步机制。例如:下面代码加了volatile,但是不能保证原子性,number的最终结果不是20000.class Data { public volatile int number; public void add(){...

2019-06-08 22:19:58 194

原创 volatile 可见性

JVM运行的实习时线程,每个线程都有自己的工作内存(栈内存),工作内存时线程私有的内存空间,JMM中规定所有的变量都存在了主内存中,主内存时共享内存,所有的线程都可以访问,但是线程对于共享变量的操作必须在工作内存中进行,首先要将主内存的值拷贝到自己的内存空间中,然后进行操作,之后写回主内存中,不能直接操作主内存中的共享变量,而是拷贝一份共享变量的副本在线程的工作内存中进行,因此不同的线程之间无法访...

2019-06-05 10:52:17 143

转载 spring-security

使用spring-security来设置登陆功能:1、增加security配置文件 WebSecurityConfig 配置文件需要继承 WebSecurityConfigurerAdapter@EnableWebSecurity@EnableGlobalMethodSecuritypublic class WebSecurityConfig extends WebSec...

2019-05-06 16:37:50 241

转载 Api结构设计-01

一般的返回结果包括:code,message,data。所以对于返回结果进行封装。public class ApiResponse { private int code; private String message; private Object data; public ApiResponse() { this.code = Status....

2019-05-05 20:15:46 354

转载 Flink的一些核心概念

Flink 提供了不同的抽象级别来开发流式或批处理应用最底层级的抽象仅仅提供了有状态流。它将通过过程函数(Process Function)嵌入到DataStream API,过程函数(ProcessFunction) 可以被认为一种提供了对有键状态(keyed state)和定时器(timers)访问的 FlatMapFunction大多数应用并不需要上述的低层级抽象,而是针对 核心AP...

2018-10-17 10:12:43 511

原创 jackson ObjectMapper读取json文件插入到mysql数据库

数据形式{"data":[    {        "id":1,        "eage":20},    {        "id":2,        "eage":21    }]}1、读取json文件String path = "test.json"ObjectMapper objectMapper = new ObjectMapper();Map&amp

2018-06-26 17:22:00 1627

原创 Spring boot集成druid配置

看了官方文档之后的总结。(基于maven)总的来说,现在spring boot 已经可以开始支持druid,所以只需要引入适当的包即可。1、pom.xml<dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId&...

2018-06-13 09:36:03 2291

原创 IDEAL 自动生成 ‘serialVersionUID’

Setting->Inspections->Serialization issues->Serializable class without ’serialVersionUID’ 然后在你要生成UID的class中,Alt+Enter就能看到创建serialVersionUID。

2018-05-08 11:31:16 888 1

转载 SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)

最近看了一篇关于SSM框架的整合文档不错,特此分享出来。原文地址:https://blog.csdn.net/gebitan505/article/details/44455235出处:http://blog.csdn.net/zhshulin

2018-04-17 10:17:15 258

原创 IDEAL 将一个项目转为library导入到另一个项目

在网上搜了很多答案都没有能够很好的解决问题的,自己试了一个方法,最后成功了。需求:将一个项目作为library导入到另一个项目中,可以使用导入项目的所有接口。编辑器:IDEAL1、file --- Project Structure ---Modules2、点击绿色+按钮 --- import Module3、如下图所示,然后一直next4、右边的绿色+号-----Library,然后选中所有的P...

2018-04-17 10:00:40 1423 2

空空如也

空空如也

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

TA关注的人

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