自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

橙中程博客

分享技术,分享生活!

  • 博客(12)
  • 资源 (2)
  • 收藏
  • 关注

原创 String 常用方法

String 常用方法构造方法:String(),String(byte[]),String(char[]),String(String)…常用方法:搜索类:indexOf()lastIndexOf();判断类:equals()equalsIgnoreCase()contains()endsWith()startsWith()isEmpty()获取类:concat()replace()subString()toLowerCase()toUpper

2022-02-12 11:46:32 393

原创 分布式Session解决思路图

2022-02-12 11:26:45 371

原创 Spring 事务管理器中传播机制属性和隔离级别

Spring 事务管理器中传播机制属性Propagtion.Required(必须)支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择,也是Srping默认的事务的传播Propagtion.Supporets(支持)支持当前事务,如果当前没有事务,就以非事务方式 执行。Propagtion.Mandatory(强制)使用当前的事务,如果当前没有事务,就抛出异常。Propagtion.NOT_SUPPORTED()以非事务方式执行,如果当前存在事务,则挂起当前事务。

2021-09-07 18:46:24 182

原创 docker-compose整理

概述Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。从功能上看,跟 OpenStack 中的 Heat 十分类似。其代码目前在 https://github.com/docker/compose 上开源。Compose 定位是 「定义和运行多个 Docker 容器的应用(Defining and running multi-container Docker applications)」,其前身是开源项目 Fig。我们知道使用一个 Dockerfil

2021-04-19 22:32:52 99

转载 RocketMQ基本概念

基本概念1 消息模型(Message Model)RocketMQ主要由 Producer、Broker、Consumer 三部分组成,其中Producer 负责生产消息,Consumer 负责消费消息,Broker 负责存储消息。Broker 在实际部署过程中对应一台服务器,每个 Broker 可以存储多个Topic的消息,每个Topic的消息也可以分片存储于不同的 Broker。Message Queue 用于存储消息的物理地址,每个Topic中的消息地址存储于多个 Message Queue 中。

2021-04-16 17:29:45 92

转载 RocketMQ实现的功能特性

特性(features)1 订阅与发布消息的发布是指某个生产者向某个topic发送消息;消息的订阅是指某个消费者关注了某个topic中带有某些tag的消息,进而从该topic消费数据。2 消息顺序消息有序指的是一类消息消费时,能按照发送的顺序来消费。例如:一个订单产生了三条消息分别是订单创建、订单付款、订单完成。消费时要按照这个顺序消费才能有意义,但是同时订单之间是可以并行消费的。RocketMQ可以严格的保证消息有序。顺序消息分为全局顺序消息与分区顺序消息,全局顺序是指某个Topic下的所有消息

2021-04-16 17:28:36 170

原创 JAVA线上故障排查全套路

JAVA线上故障排查全套路线上故障主要会包括cpu、磁盘、内存以及网络问题,而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍。同时例如jstack、jmap等工具也是不囿于一个方面的问题的,基本上出问题就是df、free、top 三连,然后依次jstack、jmap伺候,具体问题具体分析即可。CPU一般来讲我们首先会排查cpu方面的问题。cpu异常往往还是比较好定位的。原因包括业务逻辑问题(死循环)、频繁gc以及上下文切换过多。而最常见的往往是业务逻辑(或者框架逻辑)

2021-04-13 20:41:29 62

转载 图文讲解,团队开发中的 Git 最佳实践

图文讲解,团队开发中的 Git 最佳实践本文不是一篇 Git 入门教程,这样的文章一搜一大把,我是要从具体实践角度,尤其是在团队协作中,阐述如何去好好地应用 Git。既然是讲在团队中的应用实践,我就尽可能地结合实际场景来讲述。习惯养成如果一个团队在使用 Git 时没有一些规范,那么将是一场难以醒来的噩梦!然而,规范固然重要,但更重要的是个人素质,在使用 Git 时需要自己养成良好的习惯。提交如何去写一个提交信息,《Git: 教你如何在Commit时有话可说》中做了很好的说明。在具体开发工作中主要需

2021-04-13 20:40:00 199

原创 Mybatis-获取SqlSession相关

注:我们目前学习的是基于不使用spring的情况下mybatis的源码。流程首先,我们先看一下我们上次使用的例子:Public static void main(String[] args) {String resource = “config/mybatis-config.xml”;InputStream inputStream;SqlSession session = null;try {inputStream = Resources.getResourceAsStream(reso.

2021-04-07 17:49:45 413

原创 Java1.8的新特性Stream流的操作

Stream的概概念是一种函数式编程方式在集合类上进行复杂的工具。是以内部迭代的方式处理集合数据的操作。对比Java8以前,对集合的操作需要写出处理的过程,如在集合中筛选出满足条件的数据,需要一 一遍历集合中的每个元素,再把每个元素逐一判断是否满足条件,最后将满足条件的元素保存返回。而Stream 对集合筛选的操作提供了一种更为便捷的操作,只需将实现函数接口的筛选条件作为参数传递进来,Stream会自行操作并将合适的元素同样以stream 的方式返回,最后进行接收即可。Stream的使用流

2021-04-07 17:45:58 123

原创 基于Docker里mysql主从复制同步

容器部署主mysqldocker run -p 3306:3306 --name master -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 主数据库。修改my.cnf文件Docker cp /当前文件 容器id:/路径 将宿主机的文件拷贝到容器里路径里修改my.cnf文件:路径:/etc/mysql/my.cnf添加内容开启二进制日志功能log-bin=mysql-bin同一局域网内注意要唯一server-id=100修改完后 进行容器doc

2021-03-22 17:51:51 84

原创 【集合详解】ArrayList源码解读之动态扩容

【集合详解】ArrayList源码解读之动态扩容ArrayList 概述1、ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长。2、ArrayList不是线程安全的,只能用在单线程环境下。3、实现了Serializable接口,因此它支持序列化,能够通过序列化传输;4、实现了RandomAccess接口,支持快速随机访问,实际上就是通过下标序号进行快速访问;5、实现了Cloneable接口,能被克隆。动态扩容代码解析,如何能实现动态数组,怎么样管理容量?一)初始化首

2021-03-19 21:02:10 140

cc学习加油卡中非常好

cc

2022-03-25

MySQL(完整版).pdf

MySQL(完整版).pdf

2021-03-25

空空如也

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

TA关注的人

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