自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

大圣即大盗

唯有自律与勤奋才能拯救自己,勿以浮沙筑高台

  • 博客(72)
  • 资源 (1)
  • 收藏
  • 关注

原创 javaNIO详解---Netty(一) --待整理

文章目录Linux IOLinux IO流程各I/O模型比较java IO与NIOjavaIO与NIO的主要区别面向流与面向缓冲阻塞与非阻塞IO选择器(Selectors)java IOsocket通信模型NIOBufferpositionlimitcapacityLinux IOLinux IO流程Linux IO 模型详情查看一下博客(侵删)写的很好,博主就不在这里赘述,直接给链接:...

2021-07-04 23:14:41 230

原创 五分钟读完权威书籍的Redis事务_学习总结

前言Redis在项目实际开发中,经常会使用到的中间件。作为缓存数据的工具,就必然会有保证数据原子性的问题,那么我们今天就来谈谈Redis的事务吧。文章主体脉络:Redis事务要解决的问题?→Redis事务的简单使用→使用会引发的问题→如何解决这个问题:watch→watch的实现机制→事务会引发的问题。Redis为了解决什么问题?在MySQL和Spring都有进行事务控制的方法。Redis作为缓存,我们操作Redis的数据时在特定场景下也要保证我们操作的命令的ACID属性。那么Redis有提供这

2021-06-12 09:16:10 260

原创 大厂二面高可用之Redis哨兵策略

前言笔者在二面某知名大厂时,从Redis的高可用问到kafka的高可用、MySQL的高可用,又让我阐述从高可用的角度设计自己应用程序的高可用,自己回答得不够好,特别是自己项目在QPS陡增时如何设计系统,快速承接大量请求时。本文针对Redis实现高可用的方法-哨兵策略做了详细介绍和图解,希望大家多提意见和问题。笔者的知识脉络哨兵策略要解决什么问题(作用)?哨兵策略如何实现?如何实现哨兵高可用?既然要保证Redis的高可用,那么哨兵自己也要具备高可用。所以第一个我们要说明哨兵如何确保自己高可用

2021-06-12 09:15:14 780

原创 用mySql数据库实现分布式锁思路

在mysql中建一个表,这个表主键唯一。一个系统去处理业务时就往数据库表中添加数据。两个系统的业务ID是一致的,业务ID又是唯一主键,所以当一个系统添加数据时,另一个系统是无法往表中添加数据的。插入数据成功的系统就可以操作业务逻辑,插入失败的系统就不能操作执行业务逻辑了。这就实现了数据库锁。这就是用mysql实现分布式锁的一个大体逻辑,当然了还会由很多问题,但主要流程就是这样的,一步步来...

2021-01-04 17:14:45 2985 4

原创 拥有两年的经验的java工程师要具备的知识

1、对Jvm运行原理与常用配置要有一定的了解。2、熟悉面向对象的设计原则,掌握常用的设计模式和应用场景。3、熟悉Oracle,MySql等常用的数据库系统,具备SQL语句性能调优。4、熟悉Unix/Linux常用操作,能独立部署配置nginx,tomcat等常用的Web服务器5、熟悉掌握常用的JAVA技术框架,如Spring,SpringMvc,MyBatis等框架;和htt...

2020-12-30 00:52:13 8315 1

原创 webService调用天气接口遇见的问题

(1)无法读取WSDL文件 也就是说这个网址是错误的,先拿网址在浏览器上打开一下,确保没错。 错的话换一个,我图片上这个是错的 http://www.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl 这个网址就可以,还是建议自己百度下,试一下,以免更新后这些网址不能用, 我一开始不能用就是因为这个 -s:后面是你要保存的地址 -p:后面是你下载

2020-12-30 00:50:47 5410 11

原创 java实现简单邮件发送代码

我用的是maven项目package com.mail;import java.util.Properties;import javax.mail.Address;import javax.mail.Message;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.Internet

2020-12-30 00:50:21 668

原创 java监视器简单实现

事件public interface IEvent { void setEventListener(IEventListener arg); boolean rain(); boolean snow();}事件监听器public interface IEventListener { void doEvent(IEvent arg); }事件源...

2020-12-30 00:49:52 5801 2

原创 Cannot read property ‘activateByEvent‘ of null

在VScode中运行nodejs项目时突然报这个错。本来以为是自己代码的问题,懒得找。 然后重启了下VScode问题就解决了。

2020-12-30 00:49:16 807

原创 http状态码概要解释(类别含义)

http状态码类别含义

2020-12-30 00:48:45 157

原创 WebSocket简介及实现原理

文章目录WebSocket与http的区别和联系long poll 和 ajax轮询 的原理long pollajax轮询WebSocket优势WebSocket解决服务器上消耗资源的原理WebSocket与http的区别和联系  HTTP有1.1和1.0之说,也就是所谓的keep-alive,把多个HTTP请求合并为一个,但是Websocket其实是一个新协议,跟HTTP协议基本没有关系,只...

2020-12-30 00:48:12 2159

原创 java——List的过滤、排序、分组

文章目录方法实现划重点(∩_∩)方法实现public class Book { private Integer id; /**书名**/ private String name; /**所属类型**/ private String type; public Book(Integer id, String name, String type) { super...

2020-12-30 00:47:27 3136

原创 JVM虚拟机的简析

1、 JVM含义: JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。简单的说就是在内存中分出一块区域给JVM,JVM就是模拟真正计算机的功能。 我们在编辑器编辑Java代码时,运行main方法,会把我们的代码转换成.class的字节码文件(二进制),jvm就

2020-12-30 00:46:45 402

原创 GC详解---JVM(三)

文章目录如何判断对象可以被回收引用计数器可达性分析算法如何判断对象可以被回收引用计数器可达性分析算法

2020-12-30 00:44:18 236

原创 mybatis系统性详解(学习笔记)

视频位置:源码框架专题mybatis知识传统JDBC不足没有连接池,耗费资源硬编码,不利于维护mybatis基础mybatis之注解和xml优缺点注解:不适合复杂sql,收集sql不方便,重新编译XML:条件不确定、特殊字符需转义mybatis的pluginmybatis逆向工程。重要mybatis核心应用配置与原理解析mybatis核心概...

2020-12-30 00:41:33 242 1

原创 Html5(H5)是什么?

目录学习目标:内容:H5的功能关于H5与原生APP介绍区别学习目标:了解H5到底是什么?内容:HTML5并不是一项技术,而是一个标准。标准的意思通俗移动的意思是:准则手册。你可以按照准则做,甚至可以超出准则更加严格的要求自己,也可以不按照准则来别人都不找你玩。就像道德标准一样的,你是“坏人”,别人就会远离你。HTML5本质上就是一群人制定的一套规则,就像你在CSDN用的markDown编辑器。那HTML5这些标准浏览器厂商支持不支持呢?这要看他们各自的特性了。像chrome这种不仅在很多标

2020-12-25 17:50:50 1762

原创 Ceph分布式存储系统简介

目录文章目标:内容:基础介绍核心组件介绍Ceph集群官方资料文章目标:了解CEPH的作用与基本概念内容:基础介绍Ceph是一个可靠地、自动重均衡、自动恢复的分布式存储系统,根据场景划分可以将Ceph分为三大块,分别是对象存储、块设备存储和文件系统服务。在虚拟化领域里,比较常用到的是Ceph的块设备存储,比如在OpenStack项目里,Ceph的块设备存储可以对接OpenStack的cinder后端存储、Glance的镜像存储和虚拟机的数据存储,比较直观的是Ceph集群可以提供一个raw格式的

2020-12-25 17:21:52 339

原创 eclipse中sonarLite与lombok冲突问题

lombok/launch/PatchFixesHider在sonar检查代码时发生这个错误解决办法,把lombok版本换到1.18.12。亲测可用。

2020-03-26 14:58:31 1107

原创 java类加载机制简介---JVM(二)

文章目录类加载器介绍类加载器种类类加载机制双亲委派机制含义全盘负责委托机制含义类加载器介绍类加载器种类启动类加载器(也叫引导类加载器。Bootstrap):这个类加载器负责放在<JAVA_HOME>\lib目录中的,或者被-Xbootclasspath参数所指定的路径中的,并且是虚拟机识别的类库。负责加载jre的核心类库,如jre目标下的rt.jar等等,用户无法直接使用。...

2019-06-03 09:43:16 218

原创 JVM整体结构-java栈详解

文章目录JVM整体结构本文重点:运行时数据区(内存结构)java栈java栈结构图java栈中栈帧运行过程堆执行引擎划重点(∩_∩)JVM整体结构JVM与VMWare都是虚拟机的一种。JVM由三个子系统构成:类加载器子系统运行时数据区(内存结构)执行引擎(包含垃圾收集器)下图是JVM结构图:本文重点:运行时数据区(内存结构)蓝色标记为线程具体执行的,浅橙色标记的为整个进程...

2019-06-01 18:03:39 648

原创 mysql索引优化实战(举例说明)---mysql详解(三)

文章目录一用例表结构分析以下用例的索引使用情况一用例表结构CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `c1` varchar(10) COLLATE utf8mb4_bin DEFAULT NULL, `c2` varchar(10) COLLATE utf8mb4_bin DEFAULT NULL,...

2019-05-31 12:33:26 313

原创 mybatis逆向工程(Generator)自动生成mapper、xml、实体类的实现代码

文章目录实现代码1、新建一个maven项目2、写三个文件就可以实现,以下是实现代码划重点(∩_∩)实现代码1、新建一个maven项目如图所示:2、写三个文件就可以实现,以下是实现代码pom.xmlorg.mybatis.generator重要的jar包,负责生成我们要的类和xml文件。<project xmlns="http://maven.apache.org/POM/...

2019-05-30 16:40:13 932 1

原创 mysql索引数据结构详解---mysql详解(一)

文章目录磁盘存取原理数据结构二叉树:红黑树:B-TREE:B+TREEB-TREE数据存储方式:mysql的B+TREE数据存储方式mysql存储引擎MyISAMInnoDB联合索引的底层数据结构字符串类型多种数据类型组成的联合索引磁盘存取原理mysql的数据最终是在磁盘的,读取数据也是从磁盘读取。那么就有必要知道磁盘的工作原理。如图所示磁盘的结构图。磁盘是逆时针旋转的,而磁头只能左右移...

2019-05-30 13:32:59 773 2

原创 mysql执行计划与索引详解---mysql详解(二)

ddd

2019-05-30 12:22:41 532 1

原创 前端请求完整执行sql

文章目录实现划重点(∩_∩)实现以下是实现的逻辑及方法。注意:此方法一定要进行充分的权限校验,否则很容易被攻击。public class ExcuteSqlController { @Autowired MeasureMapperDef mapperDef; @Autowired HttpServletRequest httpServletRequest; ...

2019-05-20 16:25:58 1569 3

原创 java文件操作方法大全

方法 mkdir,//创建目录 strWriteFile,//字符串写入文件 deleteFolder,//删除文件夹 copyDirectiory,//拷贝目录 copyFile,//拷贝文件 getDocumentList,//获取文件夹列表或文件列表 readTxtToStr,//读取txt文件具体实现public class FileHelper { private...

2019-05-10 20:39:19 315

原创 分析代码遇到的知识点

spring参数注解@Null 被注释的元素必须为null@NotNull 被注释的元素不能为null@AssertTrue 被注释的元素必须为true@AssertFalse 被注释的元素必须为false@Min(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值@Max(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值@De...

2019-05-08 10:57:03 183

原创 mysql删除重复记录/数据

文章目录单字段去重表结构如下sql语句多字段去重表结构如下sql语句mysql表添加别名删除的注意点反例:正确写法划重点(∩_∩)单字段去重表结构如下sql语句注意:本例中user_id为主键,user_account为理论上的唯一值,DELETEFROM cmpms_userWHERE user_account IN ( SELECT t.user_account...

2019-05-08 10:51:03 210

原创 记一次数据导入的想法

文章目录需求具体情况描述(以用户角色为例)解决方案1、借助于java代码和临时表来实现,适用于大规模多次的导入。2、方法较为简单,适合关联关系较简单的数据库划重点(∩_∩)需求项目于5月份上线支持。但是从3月份开始,公司就开展了实践,用Excel和文档来记录了两个月的相关数据。而且数据库的表之间是有关联关系的,并且是以数据库表自增的主键关联起来。现在需要把这两个月的数据导入到生产环境数据库,生...

2019-04-29 21:46:17 204

原创 Redisson实现联锁的源码分析及机制

public void lockInterruptibly(long leaseTime, TimeUnit unit) throws InterruptedException { long waitTime = -1; if (leaseTime == -1) {//未设置超时时间 waitTime = 5; uni...

2019-03-12 17:17:19 1163

原创 程序的高可用相关知识

文章目录含义典型架构分层设计及各层实现高可用的原则接入层高可用设计应用层高可用设计服务层高可用设计1、各级服务的部署原则:核心服务:独立服务器且N+1部署。三级和四级服务可以共享服务器部署。2、各级服务上线发布原则:核心和重要服务:晚上12点上线。,三级和四级随时可上线3、**各级服务监控原则:**1、核心服务2、重要服务3、一般服务4、工具服务数据层的高可用设计保障高可用系统的技术方案扩展隔离解...

2019-03-12 17:15:39 739

原创 Apache Ignite详解

文章目录一、Ignite简介和用途简介(1)In-Memory Database(2)Key-Value In-Memory Data Grid(3)Database Caching(4)distributed database(5)SQL Database(6)Native Persistence(7)Ignite for NoSQL(8)ACID Transactions特征:(1)分布式sq...

2019-03-12 17:10:31 35820 3

原创 Apache Ignite——SQL文档查看及简单归纳

文章目录官方中文文档:一、介绍二、SQL参考三、架构四、JDBC驱动五、ODBC驱动六、工具和分析七、Java开发向导划重点(∩_∩)官方中文文档:https://www.zybuluo.com/liyuj/note/230739一、介绍Apache Ignite是一个兼容ANSI-99、水平可扩展以及容错的分布式SQL数据库,这个分布式是以数据在集群范围的复制或者分区的形式提供的,具体的...

2019-03-12 16:32:44 3967 1

原创 HDFS全面详解

文章目录课程大纲(HDFS详解)学习目标:HDFS基本概念篇1.1HDFS前言1.2HDFS的概念和特性HDFS基本操作篇2.1HDFS的shell(命令行客户端)操作2.1.1 HDFS命令行客户端使用2.2 命令行客户端支持的命令参数2.3 常用命令参数介绍HDFS原理篇hdfs的工作机制3.1 概述3.2 HDFS写数据流程3.2.1 概述3.2.2 详细步骤图3.2.3 详细步骤解析3.3...

2019-03-12 13:55:54 56938 7

原创 对象存储(云存储)概述

文章目录三种存储形态1、块存储2、文件存储3、对象存储对象存储对象存储需求对象存储含义对象存储与传统网络存储的区别扩展知识:NAS与SAN概述1、NAS(Network Attached Storage)优点局限2、SAN(Storage Area Network and SAN Protocols)优点局限对象存储的特性1、优秀的扩展性2、基于策略的自动化管理3、多租户技术扩展知识:多租户技术介...

2019-03-08 17:54:09 48482 1

转载 动手实现HashMap以便了解原理

1、HashMap的数据结构数据结构中有数组和链表来实现对数据的存储。数组数组存储区间是连续的,占用内存严重。数组的特点是:寻址容易,插入和删除困难;链表链表存储区间离散,占用内存比较宽松。链表的特点是:寻址困难,插入和删除容易。HashMap数据结构根据图片可以很直观的看到,HashMap是由数组和链表两种数据结构组合而成的,其节点类型均为名为Entry的类。采用这种...

2019-01-31 15:40:37 258

原创 链表知识点详解

文章目录基础知识单向链表简介:java实现双向链表简介java实现循环链表参考文献:基础知识  链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。  使用链表结构可以克服数组链表需要预先知道数据大小的缺点,链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。但是链表失去了数组...

2019-01-31 10:04:02 588

原创 前端页面模拟浏览器搜索功能Ctrl+F实现

&amp;lt;html&amp;gt;&amp;lt;head&amp;gt; &amp;lt;style type=&quot;text/css&quot;&amp;gt; .res { color: Red; } .result{ background: yellow; } &amp;lt;/style&am

2019-01-29 10:06:49 10242 2

原创 iview的下拉框select无法渲染数据问题

问题代码: &amp;lt;FormItem label=&quot;选择系统:&quot; &amp;gt; &amp;lt;Select style=&quot;width:350px&quot; v-model=&quot;systemFolderName&quot; placeholder=&quot;请选择系统&quot; @on-

2019-01-28 14:34:11 9337 5

原创 经常遗漏阿里要求的java代码重要规约

编程规约命名规约:代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。命名必须以英文。类名使用 UpperCamelCase 风格,必须遵从驼峰形式,但以下情形例外:(领域模型的相关命名)DO / BO / DTO / VO 等。抽象类命名使用 Abstract 或 Base 开头;异常类命名使用 Exception 结尾;测试类命名以它要测试的类的名称开始,以 ...

2019-01-14 15:53:57 327

md5的jquery

2017-03-11

空空如也

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

TA关注的人

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