前言因为要最近要面试,冲刺挑战一下,下面是准备的并发篇面试题,其实我对并发也不太清楚,没怎么接触实战。大家也可以留言,我再加上一、线程篇这里讲解线程和线程相关分析二、并发安全篇1、高并发中如何保证脏读数据答:只有全局变量存在线程安全,多线程共享同一个全局变量会出现线程安全问题使用Syn(自动)或lo...
分类:Java
28 篇文章前言hello,大家好,我是霸气侧漏的秀总,时隔多日,今天秀总给大家带来什么呢?大家都知道,此前我带来过一篇关于多线程的文章,如果你项目中多线程遇到不多,没必要使用线程池,那么今天给大家带来多线程一些常见的使用方法场景1、后台任务,例如:定时向大量(100w以上)的用户发送邮件;2、异步处理,例如:...
前言hello,大家好,俗话说,上传下载是我们作为开发必不可少的业务,这里讲解比较常用的单纯上传下载功能,不涉及到很高级的比如幂等性、鉴权等业务前言一、上传接口废话不多说,直接撸代码一、上传接口...
前言hello,大家好,前面讲过一篇策略模式,后来发现哪种方法有个bug,那就是实现类里面使用mapper或者dao,发现是个空的。原因其实原因是这种方法实则是new了一个接口,然后相继里面的bean肯定都是空的,那么怎么解决呢,今天叫一个新的处理方式。解决废话不多说,直接开干1、创建枚举publi...
前言众多周知啊,在我们java基础中,有一个基础是我们面试必不可少的话题,但是实际工作中,又很少使用,乃至根本不怎么用。那么这个就是多线程,但也有朋友说根据场景来使用的,也不是用在哪里都好,只有结合时间复杂度以及性能、异步才能完美演绎。...
前言hello,老朋友好,秀基宝,这是我第十七篇关于spring boot相关的文章。前段时间啊,我在写我的秀基宝项目时候,做一个扫码登录,里面就用到了websocket,其实核心原理就是这个技术。下面先讲一个扫码的思路背景扫码登录思路对象PC手机服务器思路1、前端访问服务器生成一个二维码,里面放置了一个u...
这篇个人常用Java函数,不是技术类文章目录1、数据库事件用到的sql2、json字符串截取与替换一、数据库事件用到的sqlDECLARE startDate date DEFAULT DATE_FORMAT(now_day,'%Y-%m-%d');-- 更新数据的时间DECLARE startSt...
函数式编程函数式编程是一种编程范式,他将计算机视为函数的运算,并避免变化状态和可变数据。他是一种声明式编程范式,也就是说:编程是用表达式或者声明而不是语句完成好处代码简洁,开发快速接近自然语言,易于理解:自由度很高更方便的代码管理:不依赖、也不会改变外界的状态易于"并发编程":不...
微信公众号:纯洁的麦田。如有问题,请后台留言,反正我也不会听。前言如题,今天介绍下 SpringBoot 是如何异常处理机制源码分析,自定义全局异常和自定义异常。一、springboot原理探究1.1、springboot默认错误处理机制错误页面默认响应json数据1.2、源码分析BasicErro...
前言这篇开始给大家带来的是消息中间件模块,分别给大家带来RocketMq、kafka和rabbitMq安装一、RocketMq安装...
前言今天给大家带来的不同于apollo的另外一种配置管理,与其说也是一个服务治理与管理简介Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 ...
前言这篇给大家带来apollo安装以及使用,部署方式是Mac上部署,linux也类似。一、Apollo介绍Apollo(阿波罗)是携程框架部门研发的开源配置管理中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。application...
前言工具做为图形化界面来展示更能直观的发现问题,另一方面一些耗费性能的分析(dump文件分析)一般也不会在生产直接分析,往往dump下来的文件达1G左右,人工分析效率较低,因此利用工具来分析jvm相关问题,长长可以到达事半功倍的效果来。jvm监控分析工具种类一种是jdk自带的工具:一种是第三方的分析...
前言本文章主要讲解内存分析、内存泄漏、内存溢出和CPU飙升的问题???本文章使用Mac作为的开发工具一、大纲什么是内存泄漏、内存溢出排查CPU飙升jvisualvm分析内存溢出问题...
前言本文章主要学习Java中的重要概念封装、继承和多态,通过案例的方式进行讲解,让你对继承和多态在企业中的应用更加了解。一、大纲什么是多态基于继承关系的类型复用和拓展设计多态,运用多态二、封装2.1、什么是封装 封装(Encapsulation)是面向对象方法的重要原则,就是把对象的属性和操作(或...
示例1:面向对象的特征有哪些方面?继承封装多态抽象示例2:String是最基本的数据类型吗?String是类对象,八大对象:byte,long,short,char,int,float,double,booble示例3:int和Integer有什么区别?int是基础类型,Integer是类类型,之间...
前言因为要最近要面试,冲刺挑战一下,下面是准备的中级面试题一、设计模式篇1.常用的设计模式答:单例:保证Jvm中只有一个实例,一般用在配置、Springbean,servlet工厂:创建对象和使用过程完全分开代理:在目标方法前和目标方法后实现增强策略、模板、责任链、观察者、装饰、门面模式2.策略模式...
前言先来思考几个问题:策略模式用在哪里,怎么使用,思想是什么本次来一点实际开发中会用到的小技巧。比如平时大家是否都会写类似这样的代码if (a) {// 微信支付} else if(b) {// 阿里支付} else if(c) {// 银联支付}试想而知,条件少还好,一旦 elseif 过多这里的...
微信公众号:纯洁的麦田。如有问题,请后台留言,反正我也不会听。前言该篇文章内容较多,包括有rabbitMq相关的一些简单理论介绍,provider消息推送实例,consumer消息消费实例,Direct、Topic、Fanout的使用,消息回调、手动确认等。(但是关于rabbitMq的安装,就不介绍...
微信公众号:纯洁的麦田。如有问题,请后台留言,反正我也不会听。前言如题,今天介绍下SpringBoot是如何整合MongoDB的。MongoDB简介MongoDB是由C++编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,它将数据存储为一个文档,数据结构由键值(key=>valu...
前言:一直很想写一篇记录mybatis传值篇,我们都知道有map传参,DTO传参,list传参,string传参等等,所以我想总结一下,记录一下,其中还会讲解到#传参和$传参一:传参类型String传参mapper接口List<BasLocation>selectInLocListFor...
SpringBoot整合redis单机、集群、哨兵模式前言在本篇文章中将SpringBoot整合Redis,使用的是RedisTemplate,分别实现了SpringBoot与redis的单机版、集群版、哨兵模式的整合。Maven依赖<dependency>&...
这里讲解直接安装启动kafka,没有先安装zookeeper一、linux安装1、下载wgethttp://mirror.bit.edu.cn/apache/kafka/2.2.0/kafka_2.12-2.2.0.tgz或者官网下载再上传linuxhttp://kafka.apache.org/d...
RPC:RemoteProcedureCall即远程过程调用是一种常见的一种通信方法,从跨进程到跨物理机以及有即使年历史理论知识:跨进程交互形式:RestFul、WebService、HTTP、基于DB做数据交互、基于MQ数据交互、以及RPC图解交互形式:现有框架对比核心原理(整体架构)RPCSer...
本文摘自阿里开发规范,是阿里工程师们严格遵循的开发标准,同时也是培养自己写出高质量代码的必然要求,不让自己写出来的代码像个刚毕业的。命名的风格代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。反例: _name $name代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使...