Skip to main content

moregeek program

程序员要用markdown来创作文章-多极客编程

前言:Markdown(简称MD)语言常用于编写开源代码的Readme说明。如今越来越多的人使用Mardown来写作,原因是它简单易用。​1.历史​1.1 发明​2004年,John Gruber创造了MD语言,部分和Aaron Swartz合作而成,Aaron Swartz是一位天才程序员。John Gruber的目的是期望推出“易于阅读、易于撰写的纯文字格式,并选择性的转换成有效的XHTML(

Read More

《thinking in java》作者:不要使用并发!_qq6315732798102的博客-多极客编程

前言今天纯粹就是带你们来读读书的~ 最近除了工作,特地买回了自己很喜欢的作者新发售的一本书《On Java》,作者是我的老朋友布鲁斯·埃克尔,在Java领域很有名,你可能没听过他的名字,但极有可能听过他的另一本书《Thinking In Java》,我想很多Java工程师都读过这本书,可以说是Java编程思想的良心之作。 虽然布鲁斯是我的老朋友,但我不得不吐槽一下,大概通读了一遍《On Jav

Read More

eclipse编码格式该如何设置_是温度呀的博客-多极客编程

说到eclipse编码格式的设置其实一个非常非常小的事情,但是在eclipse的开发使用中却又是一个无法忽视的问题,它甚至会影响到我们的工作以及和团队成员之间的合作,所以,在开发前,动动自己的小手,先把编码格式给统一了吧。在eclipse的开发使用中,我们最常用的是UTF-8,所以这里就给大家简单的说明一下UTF-8的编码格式设置,我们在初次安装好eclipse、给eclipse指定一个新的工作空

Read More

详解java nio,io与nio的区别_是温度呀的博客-多极客编程

一、概念NIO即New IO,这个库是在JDK1.4中才引入的。NIO和IO有相同的作用和目的,但实现方式不同,NIO主要用到的是块,所以NIO的效率要比IO高很多。在Java API中提供了两套NIO,一套是针对标准输入输出NIO,另一套就是网络编程NIO。二、NIO和IO的主要区别下表总结了Java IO和NIO之间的主要区别:1、面向流与面向缓冲Java IO和NIO之间第一个最大的区别是,

Read More

slf4j和logback和log4j和logging的区别与联系_是温度呀的博客-多极客编程

前言Java帝国在诞生之初就提供了集合、线程、IO、网络等常用功能,从C和C++领地那里吸引了大量程序员过来加盟,但是却有意无意地忽略了一个重要的功能: 输出日志。对于这一点,IO大臣其实非常清楚, 日志是个很重要的东西, 因为程序运行起来以后, 基本上就是一个黑盒子,如果程序的行为和预料的不一致,那就是出现Bug了,如何去定位这个Bug 呢?臣民们能用的工具有两个,第一个就是单步调试,一步步地跟

Read More

如何使用 junit + mockito 实践单元测试_是温度呀的博客-多极客编程

一、前言相信做过开发的同学,都多多少少写过下面的代码,很长一段时间我一直以为这就是单元测试...@SpringBootTest@RunWith(SpringRunner.class)public class UnitTest1 { @Autowired private UnitService unitService; @Test public void test(){

Read More

spring集成junit单元测试框架_是温度呀的博客-多极客编程

一.JUnit介绍JUnit是Java中最有名的单元测试框架,用于编写和运行可重复的测试,多数Java的开发环境都已经集成了JUnit作为单元测试的工具。好的单元测试能极大的提高开发效率和代码质量。测试类命名规则:被测试类+Test,如UserServiceTest测试用例命名规则:test+用例方法,如testGetMaven导入junit、sprint-test 、json-path相关测试包

Read More

详解:java 的静态工厂方法_是温度呀的博客-多极客编程

序:什么是静态工厂方法Effective Java2.1 静态工厂方法与构造器不同的第一优势在于,它们有名字2.2 第二个优势,不用每次被调用时都创建新对象2.3 第三个优势,可以返回原返回类型的子类2.4 第四个优势,在创建带泛型的实例时,能使代码变得简洁除此之外3.1 可以有多个参数相同但名称不同的工厂方法3.2 可以减少对外暴露的属性3.3 多了一层控制,方便统一修改总结1. 序:什么是静态

Read More

java vs .net,关于java与.net的特点对比_是温度呀的博客-多极客编程

一、前言为什么要写Java跟.NET对比?.NET出生之后就带着Java的影子。从模仿到创新,.NET平台也越来越成熟。他们不同的支持者也经常因为孰弱孰强的问题争论不休。但是本文并不是为了一分高下。而是针对Java平台跟.NET平台做一些对比。主要围绕项目构建、Web框架、项目部署展开讨论。相信经过这些讨论可以让Java/.NET工程师对Java平台、.NET平台有更好的了解。二、项目构建项目构建

Read More

由浅入深,学习在springboot中使用redis_是温度呀的博客-多极客编程

很多时候,我们会在springboot中配置redis,但是就那么几个配置就配好了,没办法知道为什么,这里就详细的讲解一下这里假设已经成功创建了一个springboot项目。redis连接工厂类第一步,需要加上springboot的redis jar包<pre><dependency> <groupId>org.springframework.boot&

Read More

详解mysql中的锁机制_是温度呀的博客-多极客编程

锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的 计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一 个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。本章我们着重讨论MySQL锁机制 的特点,常见的锁问题,以及解决My

Read More

spring系列之beanfactory与applicationcontext_是温度呀的博客-多极客编程

一、BeanFactoryBeanFactory 是 Spring 的“心脏”。它就是 Spring IoC 容器的真面目。Spring 使用 BeanFactory 来实例化、配置和管理 Bean。BeanFactory:是IOC容器的核心接口, 它定义了IOC的基本功能,我们看到它主要定义了getBean方法。getBean方法是IOC容器获取bean对象和引发依赖注入的起点。方法的功能是返回

Read More

微服务网关鉴权:gateway使用、网关限流使用、用户密码加密、jwt鉴权 _wx62e3937b6ca7e的博客-多极客编程

目标掌握微服务网关Gateway的系统搭建掌握网关限流的实现能够使用BCrypt实现对密码的加密与验证了解加密算法能够使用JWT实现微服务鉴权1.微服务网关Gateway1.1 微服务网关概述不同的微服务一般会有不同的网络地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信,会有以下的问题:客户端会多次请求不同的微服务,增加了客户端的复杂性存在跨域请求

Read More

有了这篇 docker 网络原理,彻底爱了~ _wx62e3937b6ca7e的博客-多极客编程

Docker 网络原理容器是相对独立的环境,相当于一个小型的 Linux 系统,外界无法直接访问,那他是怎么做的呢,这里我们先了解下 Linux veth pair。1\. Linux veth pairveth pair 是成对出现的一种虚拟网络设备接口,一端连着网络协议栈,一端彼此相连。如下图所示:veth pair将两个网络veth0和veth1连通。2\. 理解Docker0我们先查看本地

Read More

docker也疯狂,微服务一键打包部署_博学谷狂野架构师的博客-多极客编程

微服务Docker打包现在的微服务时代,你的代码没个微服务、分布式人家都会觉得低端,当然!对于我们开发人员来说,掌握这些技术意味着涨薪。 我们项目中用到了多个微服务,我们上一节课程打包用的是手动上传,但是很麻烦,有没有更好的方式呢,是有的,我们可以直接通过idea将我们的微服务打包成Docker镜像,并推送到Docker仓库中​ 这里我们采用​​jib-maven-pl

Read More

springboot系列教程之定义接口返回类型的几种方式_wx62f3608c493eb的博客-多极客编程

SpringBoot 系列教程之定义接口返回类型的几种方式实现一个 web 接口返回 json 数据,基本上是每一个 javaer 非常熟悉的事情了;那么问题来了,如果我有一个接口,除了希望返回 json 格式的数据之外,若也希望可以返回 xml 格式数据可行么?答案当然是可行的,接下来我们将介绍一下,一个接口的返回数据类型,可以怎么处理I. 项目搭建本文创建的实例工程采用 ​​SpringBoo

Read More

springboot spi 机制和实现自定义 starter_wx62f3608c493eb的博客-多极客编程

本文适合于实操~,主要讲述如何自定义start,实现一些自定义类的自动装配。面向入门、有需求和想了解的小伙伴们,以免浪费小伙伴们的时间~实现starter,其实就是SpringBoot的自动装配原理的一个实践,以前我也写过SpringBoot的自动状态原理的文章,文章链接细心认真对待,没有什么是很难的。一、SpringBoot 中的SPI机制什么是spi呢,全称是 ​​Service Provid

Read More

从jdbc attack到detectcustomcollations利用范围扩展_wx62f3608c493eb的博客-多极客编程

漏洞分析原理POCString url = "jdbc:mysql://127.0.0.1:3306/test?autoDeserialize=true&statementInterceptors=com.mysql.jdbc.interceptors.ServerStatusDiffInterceptor&user=yso_CommonsCollections4_calc";关键

Read More

美团一面:如何在 100 亿数据中找到中位数?_wx62e3937b6ca7e的博客-多极客编程

海量数据中找到中位数,内存肯定是无法一次性放下这么多数据的中位数定义:数字排序之后,位于中间的那个数。比如将 100 亿个数字进行排序,排序之后,位于第 50 亿个位置的那个数就是中位数。桶排序1)创建多个小文件桶,设定每个桶的取值范围,然后把海量数据元素根据数值分配到对应的桶中,并记录桶中元素的个数2)根据桶中元素的个数,计算出中位数所在的桶(比如 100 亿个数据,第 1 个桶到第 18 个桶

Read More

大厂裁员只是开始,打工人如何避免焦虑,安身立命?_mb61f250ffad834的博客-多极客编程

本文大致花费您7分钟时间,请您有点耐心看到最后,也许会改变您目前的焦虑状态。 首先,你需要知道的是: 很多大公司都准备裁员,而且是30%到40%的裁。 涉及很多领域,互联网、医药、教培、电商……或者会有自己的领域。 未来,这样的事情会反复发生,如何为之做好准备? 为什么会裁员? 三个原因: 疫情时代、流量到顶和35岁危机。 首先是疫情时代。 我想这个不需要多说,大家心知肚明。无论是

Read More