自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(140)
  • 资源 (4)
  • 收藏
  • 关注

原创 2024年Java实战面试题

面试篇:减少废话,有效文字!

2024-01-02 15:41:41 1321

原创 2024年Java架构篇之设计模式

1、单例模式。

2024-02-07 14:24:00 1149

原创 2024年Java架构篇之数据结构与算法面试题

面试篇:减少废话,有效文字!

2024-02-04 15:30:36 304

原创 2024年Java搭建面试题

面试篇:减少废话,有效文字!

2024-01-29 15:44:46 275

原创 2024年Java原理面试题

面试篇:减少废话,有效文字!

2024-01-29 15:41:49 1894 1

原创 2024年Java基础面试题

面试篇:减少废话,有效文字!

2024-01-29 15:40:31 1296

原创 2024年Java算法面试题

面试篇:减少废话,有效文字!

2024-01-29 15:38:29 557

原创 2024年Java高阶面试题

面试篇:减少废话,有效文字!

2024-01-29 15:35:39 1521

原创 2023年年末Java5年实战面试题(北京)

面试篇:减少废话,有效文字!

2023-12-04 12:22:34 843

原创 【什么程度叫熟悉linux系统】

什么程度叫熟悉linux系统

2023-02-19 22:18:42 4984

原创 Nexus

NexusNexus基本介绍下载链接http://www.sonatype.org/nexus/linux安装Nexus的安装步骤Nexus和Maven的联合使用pom.xml文件指定仓库:settings.xml中配置指定的仓库:Nexus基本介绍Nexus即私服,个人或者公司管理项目以及jar包的一种私有服务器;安装过程非常简单。下载链接http://www.sonatype.org/nexus/Nexus下载链接:http://www.sonatype.org/nexus/linux安装Ne

2021-04-01 21:28:43 193

原创 Jenkins

JenKinsJenkins基本介绍支持线上ShowDoc支持部署到自己的服务器上可以直接调用接口获取数据(BaaS后端即服务)常用功能编辑建议ShowDoc(采用Markdown编辑器)文档更多效果Jenkins基本介绍Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。支持线上ShowDoc自己不想部署,可以使用线上的ShowDoc 链接:http://www.showdoc.cc支持部署到自

2021-03-24 18:30:46 182

原创 ShowDoc

ShowDocShowDoc基本介绍支持线上ShowDoc支持部署到自己的服务器上可以直接调用接口获取数据(BaaS后端即服务对外暴露)如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入ShowDoc基本介绍ShowDoc就是一个非常适合IT团队的在线文档分享工具,它可以

2021-03-18 18:08:14 710

原创 2021年实战面试题

2021年实战面试题

2021-01-05 09:53:56 158

原创 2021年Java进阶面试题总结

2021年Java基础面试题总结

2021-01-02 19:14:52 229

原创 2021年Java基础面试题总结

1、事务管理(ACID)原子性(Atomicity)原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。一致性(Consistency)事务前后数据的完整性必须保持一致。隔离性(Isolation)事务的隔离性是多个用户并发访问数据库时,数据库为每一个用户开启的事务,不能被其他事务的操作数据所干扰,多个并发事务之间要相互隔离。持久性(Durability)持久性是指一个事务一旦被提交,它对数据库的改变就是永久性的,接下来即时数据库发生故障也不应该对其

2021-01-02 19:14:18 1763

原创 2020总结

布隆过滤机 就理解为 算法 过滤就行了点对点:消息发送客户端与接收客户端没有时间上的依赖,发送客户端可以在任何时刻发送信息到Queue,而不需要知道接收客户端是不是在运行发布/订阅 方式(又称之为广播模式):可能存在多个接收客户端,并且接收端客户端与发送客户端存在时间上的依赖。一个接收端只能接收他创建以后发送客户端发送的信息。发送消息的基本步骤(1)、创建连接使用的工厂类JMS ConnectionFactory(2)、使用管理对象JMS Connectio...

2020-12-30 14:36:33 84

原创 Java中多线程并发处理方式详解

synchronized关键字主要解决多线程共享数据同步问题。ThreadLocal使用场合主要解决多线程中数据因并发产生不一致问题。ThreadLocal和Synchonized都用于解决多线程并发访问。但是ThreadLocal与synchronized有本质的区别:synchronized是利用锁的机制,使变量或代码块在某一时该只能被一个线程访问。而ThreadLocal为每一个线程都提供了变量的副本,使得每个线程在某一时间访问到的并不是同一个对象,这样就隔离了多个线程对数据的数据..

2020-07-21 08:28:39 806

原创 冒泡排序和选择排序代码最简

冒泡排序int[] arr = {3,1,6,8,0}; // 定义一个flag,用来记录上一轮是否有元素进行交换, // 如果上一轮没有元素进行交换,说明已经排序完成,停止排序(优化) boolean flag; for (int i = 0; i < arr.length - 1; i++) {//外层控制的是比较的轮数 //每轮初始flag为true flag = true;...

2020-07-21 08:14:48 200

原创 描述软件生命周期

软件生命周期(Software Life Cycle,SLC)是软件的产生直到报废或停止使用的生命周期。软件生命周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,也有将以上阶段的活动组合在内的迭代阶段,即迭代作为生命周期的阶段。...

2020-07-21 08:09:20 378

原创 Eureka和Zookeeper区别简化

遵循原则不同尤里卡遵循AP原则,动物园管理员遵循CP原则,C:强一致性,A:可用性,P:分区容错性著名的CAP理论中提出,一个分布式系统不可能同时满足C(一致性)A(可用性)P(分区容错性),由于分区容错性p是分布式系统中必须保证,因此只能在a和ç之间权衡...

2020-07-21 08:06:16 155

原创 面向对象编程和面向接口编程

面向对象思想的核心之一,就是模拟真实世界,把真实世界中的事物抽象成类,整个程序靠各个类的实例互相通信、互相协作完成系统功能,这非常符合真实世界的运行状况,也是面向对象思想的精髓。那么什么是面向接口编程呢?我个人的定义是:在系统分析和架构中,分清层次和依赖关系,每个层次不是直接向其上层提供服务(即不是直接实例化在上层中),而是通过定义一组接口,仅向上层暴露其接口功能,上层对于下层仅仅是接口依赖,而不依赖具体类。...

2020-07-21 07:47:40 337

原创 HashMap的实现原理在JDK1.7和1.8的区别

相对于JDK1.7,HashMap处理hash冲突时,会首先存放在链表中去,但是一旦链表中的数据较多(即>8个)之后,就会转用红黑树来进行存储,优化存储速度。其默认的大小是16,一旦>0.75*16之后,就会调用resize()进行扩容,扩容非常耗时,所以如果需要保存较多的话,最好在创建一开始就制定好HashMap的初始容量。当链表元素个数大于8的时候,就会转换为红黑树;当红黑树元素个数小于6的时候,就会转换回链表。链表元素小于等于8时,无论是查询速度还是增删速度都是最合适的,大..

2020-07-21 06:46:06 210

原创 分布式的Cap原则

什么叫做capCap分别指分区容错性,一致性,可用性G1 和 G2 是两台跨区的服务器。G1 向 G2 发送一条消息,G2 可能无法收到。系统设计的时候,必须考虑到这种情况。一般来说,分区容错无法避免。一致性一致性的意思是,写操作之后的读操作,必须返回该修改后的值。可用性可用性意思是只要收到用户的请求,服务器就必须给出回应。...

2020-07-21 06:23:55 134

原创 SpringCloud的分布式锁和分布式事务

基于 Redis 的分布式锁利用 SETNX 和 SETEX基本命令主要有:SETNX(SET If Not Exists):当且仅当 Key 不存在时,则可以设置,否则不做任何动作。SETEX:可以设置超时时间其原理为:通过 SETNX 设置 Key-Value 来获得锁,随即进入死循环,每次循环判断,如果存在 Key 则继续循环,如果不存在 Key,则跳出循环,当前任务执行完成后,删除 Key 以释放锁。这种方式可能会导致死锁,为了避免这种情况,需要设置超时时间。通过数据库实现分布

2020-07-20 13:26:55 678

原创 MySQL的四种事务隔离级别

一、事务的基本要素(ACID)  1、原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位。  2、一致性(Consistency):事务开始前和结束后,数据库的完整性约束没有被破坏 。比如A向B转账,不可能A扣了钱,B却没收到。   3、隔离性(Isolation):同一时间,只允许一个事务...

2020-07-20 13:10:24 104

原创 SpringCloud服务器雪崩效应

spring-cloud服务器雪崩效应 在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用。为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞,此时若有大量的请求涌入,Servlet容器的线程资源会被消耗完毕,导致服务瘫痪。服务与服务之间的依赖性,故障会传播,会对整个微服务系统造成灾难性

2020-07-20 12:29:08 375

原创 SpringBoot启动原理 详解

一、SpringBootApplication背后的秘密@SpringBootApplication注解是Spring Boot的核心注解,它其实是一个组合注解: 1 @Target(ElementType.TYPE) 2 @Retention(RetentionPolicy.RUNTIME) 3 @Documented 4 @Inherited 5 @SpringBootConfiguration 6 @EnableAutoConfiguration 7 @ComponentScan

2020-07-20 10:43:14 173

原创 乐观锁与悲观锁详解与使用场景

乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展。这两种人各有优缺点,不能不以场景而定说一种人好于另外一种人。悲观锁总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。Java中synch.

2020-07-20 10:08:15 158

原创 mybatis缓存机制详解缓存方式

缓存是一般的ORM(mybatis属于半自动化ORM框架) 框架都会提供的功能,目的就是提升查询的效率和减少数据库的压力。跟Hibernate 一样,MyBatis 也有一级缓存和二级缓存,并且预留了集成第三方缓存的接口。缓存体系结构: 所有的缓存实现类总体上可分为三类:基本缓存、淘汰算法缓存、装饰器缓存。一级缓存(本地缓存):一级缓存也叫本地缓存,MyBatis 的一级缓存是在会话(SqlSession)层面进行缓存的。二级缓存:二级缓存是用来解决一级缓存不能跨会话共享的问题的,

2020-07-20 09:50:57 194

原创 mysql缓存机制详解

mysql缓存机制就是缓存sql 文本及缓存结果,用KV形式保存再服务器内存中,如果运行相同的sql,服务器直接从缓存中去获取结果,不需要在再去解析、优化、执行sql。 如果这个表修改了,那么使用这个表中的所有缓存将不再有效,查询缓存值得相关条目将被清空。表中得任何改变是值表中任何数据或者是结构的改变,包括insert,update,delete,truncate,alter table,drop table或者是drop database 包括那些映射到改变了的表的使用merge表的查询,显然,者对于频繁

2020-07-20 09:10:41 184

原创 hashmap与hashtable的区别详解

最主要的区别在于Hashtable是线程安全5261,而HashMap则非线程安全。Hashtable的实现方法里面都添加了1653synchronized关键字来确保线程同步,因此相对而言HashMap性能会高一些,我们平时使用时若无特殊需求建议使用HashMap,在多线程环境下若使用HashMap需要使用Collections.synchronizedMap()方法来获取一个线程安全的集合(Collections.synchronizedMap()实现原理是Collections定义了一个Synch

2020-07-20 08:55:00 140

原创 GC回收机制详解

应用程序对资源(内存使用)管理的方式,常见的一般有如下几种:1、手动管理:C,C++2、计数管理:COM3、自动管理:.NET,Java,PHP,GO…但是,手动管理和计数管理的复杂性很容易产生以下典型问题:1.程序员忘记去释放内存2.应用程序访问已经释放的内存三、GC如何工作:GC的工作流程主要分为如下几个步骤:1、标记(Mark)---GC的根节点也即GC Root2、计划(Plan)3、清理(Sweep)4、引用更新(Relocate)5、压缩(Co

2020-07-20 08:46:09 449

原创 JVM内存模型图解详解

2020-07-20 08:15:49 130

原创 Dubbo底层的网络通信机制原理!

2020-07-16 08:54:15 412

原创 对比SpringCloud和Dubbo的技术选型

spring Cloud与dubbo都为微服务框架,那么我们在进行技术选型时应该怎么考虑呢?可以从以下几个方面考虑1.架构完整度:与spring cloud相比,dubbo的架构完整度不够,其本身只提供了服务注册中心与服务治理两个模块,而spring cloud到现在为止,已经提供了服务注册中心,服务治理等24个模块,并且还在增加中。虽然dubbo也可以整合第三方框架,但是搭建出来的dubbo架构可能出现兼容性问题,而spring cloud不会,因为其每一个模块都是经过严格测试的,几乎不存在兼容性问题

2020-07-14 10:15:53 785

原创 对比SpringCloud和Dubbo的优缺点

dubbo由于是二进制的传输,占用带宽会更少springCloud是http协议传输,带宽会比较多,同时使用http协议一般会使用JSON报文,消耗会更大dubbo的开发难度较大,原因是dubbo的jar包依赖问题很多大型工程无法解决springcloud的接口协议约定比较自由且松散,需要有强有力的行政措施来限制接口无序升级dubbo的注册中心可以选择zk,redis等多种,springcloud的注册中心只能用eureka或者自研但如果我选,我会用springcloud。从公司整体

2020-07-14 09:54:20 436

原创 挑战Java15-40k面试进行中

1、TCP、UDP、HTTP区别?TCP三次握手机制第一次:客户端发送一个SYN包到服务端,并进入SYN_SEND状态,等待服务端的响应。第二次:服务端收到SYN包,并确认,同时自己也发送一个SYN包,即SYN+ACK包,此时服务端进入SYN_RECV状态。第三次:客户端收到服务端的SYN+ACK包,向服务端发送一个确认ACK包,进入ESTABLISHED状态,完成连接UDPUDP也是传输层的一个协议。但是与TCP不同的是,UDP不是面向连接的,并不保证传输的可靠性,没有TCP的建立连接的

2020-07-03 15:17:28 273

原创 Activiti工作流画图工具介绍

推荐Eclipse插件Activiti分为线上安装和离线安装线上安装1、打开Eclipse,Help->Install New Software,弹出如下窗口2、点击addName:Activiti BPMN 2.0 designerLocation:http://www.activiti.org/designer/update下线安装下载离线安装包:h...

2020-03-15 22:54:55 3914 2

原创 三年面试题不断更新

1.Object类中都有哪些方法 12种①registerNatives() //私有方法②getClass() //返回此 Object 的运行类。③hashCode() //用于获取对象的哈希值。④equals(Object obj) //用于确认两个对象是否“相同”。⑤clone() //创建并返回此对象的一个副本。⑥toString() /...

2019-06-17 21:51:33 276 2

教你看穿软考设计师试题

软件设计师试题下午试卷 密码123456

2018-10-24

springboot+mybatis+maven+mysql

springboot+mysql+maven+mysql+jdk1.8实现增删改查 web端实现登录和注册

2018-08-15

eclipse-luna 64位

Eclipse Luna includes official support for Java 8 in the Java development tools, Plug-in Development Tools, Object Teams, Eclipse Communication Framework, Maven integration, Xtext, Xtend, Web Tools Platform, and Memory Analyzer.

2018-04-09

tomcat8.0 32位

Tomcat是Apache 的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范,技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

2018-04-09

空空如也

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

TA关注的人

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