![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java日常
java日常
麦田的守望者1234
这个作者很懒,什么都没留下…
展开
-
FactoryBean 和BeanFactory
FactoryBean 和BeanFactory 虽然名字类似,但是使用场景完全不同FactoryBean 是 工厂类,一般应用场景是手动创建bean注入容器时使用BeanFactory 是bean 容器,管理bean 实例allBeanNamesByType已经bean 定义beanDefinitionMap,并且提供获取和设置bean 的方法,例如:public <T> T getBean(Class<T> requiredType)其中最重要的bean是Defa..原创 2021-12-01 19:18:00 · 163 阅读 · 0 评论 -
rocketmq 消息位点提交
此处只从消费线程池内消费进程讲起ConsumeMessageConcurrentlyService 并发消息消费主类,通过submitConsumeRequest将消息提交至消费线程池consumeExecutor ,如下为ConsumeRequest.run()方法class ConsumeRequest implements Runnable { private final List<MessageExt> msgs; private final原创 2021-11-13 18:18:55 · 1337 阅读 · 0 评论 -
jvm 学习总计
https://www.processon.com/view/link/611257397d9c0806e4a3bac0原创 2021-08-10 18:39:40 · 70 阅读 · 0 评论 -
Java 8 parallelStream 与Stream 比较
java8 parallelStream 与Stream 都是将集合转换为流,parallelStream 是并行流,Stream 是串行流1. 并不是所有大数据量流操作parallelStream 要比Stream 快,如下两个例子 List<Integer> intList1 = new ArrayList<>(); for(int i=0;i<=10000000;i++){ intList1.add(i); .原创 2021-07-29 11:13:21 · 976 阅读 · 0 评论 -
IO NIO AIO 同步 异步 阻塞 非阻塞
传统javaIO 是同步阻塞IO,在同一个线程内,必须等到阻塞线程返回才会继续处理NIO 是同步非阻塞IO,还是在同一个线程内处理,只不过是设置为非阻塞,同时selctor 会不断查询channel 状态,状态的变更同一处理线程会进行不同的处理AIO 是异步非阻塞IO阻塞与非阻塞 指的是对内存而言,例如内存读取文件内容,读取网卡内容异步与非异步指的是针对是否一个线程处理进行处理还是多线程协作...原创 2021-07-27 22:39:00 · 300 阅读 · 0 评论 -
rocketmq 学习笔记
rocketmq 底层通信时使用nettyconsmer 负载均衡原创 2021-06-07 09:10:10 · 237 阅读 · 3 评论 -
sharding jdbc 简单配置
目前市面上的分库分表策略一般比较通用的是使用sharding 和mycat,我只接触过sharding jdbc,此处mycat 不做说明引用pom<dependency> <groupId>org.apache.shardingsphere</groupId> <artifactId>sharding-jdbc-spring-boot-starter</artifactId> <version>4.1原创 2021-05-06 22:45:45 · 699 阅读 · 0 评论 -
Lambda 表达式
执行单语句 Parameters -> an expression执行多语句Parameters -> {expressions;};若lambda 不需要参数 ,可以使用空括号 () -> {for (int i = 0; i < 1000; i++) doSomething();};Java是一个强类型的语言,因此参数必须要有类型,如果编译器能够推测出Lambda表达式的参数类型,则不需要我们显示的进行指定...原创 2021-02-20 16:31:04 · 68 阅读 · 0 评论 -
HashMap 初始值大小 小记
HashMap 默认指定大小为16,负载因子为0.75其实这屌毛HashMap 大小可以指定的,必须指定为2的n次幂,若指定非2的n次幂,会自动设置为比设置的值大的2的n次幂(至于为什么是2的n次幂,下次补充)比如设置为3时,haspMap 自动设置为4 ,设置为7时,HashMap 自动设置为8, 设置为100或者120时,hashMap 会自动设置为128,原因如下代码 static final int tableSizeFor(int cap) { int n =.原创 2020-12-11 14:51:16 · 417 阅读 · 1 评论 -
StringBuffer和SpringBuilder 区别简述
StringBuffer和SpringBuilder 都是AbstractStringBuilder 的子类、单纯从StringBuffer.append 和SpringBuilder.append 方法上来看最大的区别是StringBuffer.append 存在synchronized,其他的都一样,而synchronized 是重量级锁,平常的使用过程中应使用SpringBuilder如下1. StringBuilder实现@Override public StringBu.原创 2020-12-09 20:24:10 · 2730 阅读 · 0 评论 -
JAVA中循环删除list中元素的方法总结
印象中循环删除list中的元素使用for循环的方式是有问题的,但是可以使用增强的for循环,然后今天在使用时发现报错了,然后去科普了一下,再然后发现这是一个误区。下面就来讲一讲。。伸手党可直接跳至文末。看总结。。 JAVA中循环遍历list有三种方式for循环、增强for循环(也就是常说的foreach循环)、iterator遍历。1、for循环遍历listfor(int i=0;i<list.size();i++){ if(list.get(i).equals("de...原创 2020-12-07 23:20:37 · 695 阅读 · 0 评论 -
Java 如何产生UUID
转自https://www.cnblogs.com/maohuidong/p/7998258.html1.UUID 简介 UUID含义是通用唯一识别码 (Universally Unique Identifier),这是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OSF)的组织应用在分布式计算环境 (Distributed Computing Environment, DCE) 领域的一部分。 UUID 的目的,是让分布...转载 2020-12-01 22:52:40 · 325 阅读 · 0 评论 -
关于word解析那点事
记录不是目的,记录是为了更好的进步原创 2020-11-29 00:36:15 · 427 阅读 · 2 评论 -
关于BeanUtils 那点屌事
今天出现一个线上bug,我在排查代码的时候,两个高开在我身后陪我排查代码,慌的一批,害怕让他们看见不爽的代码,结果还真发现了,然后被屌了,如下 List<StudentB> studentbList = new ArrayList<>(); studentAList.forEach(student->{ StudentB studentB = new StudentB(); studentB.setName(原创 2020-11-28 00:11:03 · 900 阅读 · 1 评论 -
java 语法糖
转自https://blog.csdn.net/danchu/article/details/54986442语法糖(Syntactic Sugar),也称糖衣语法,指在计算机语言中添加的某种语法,这种语法对语言本身功能来说没有什么影响,只是为了方便程序员的开发,提高开发效率。说白了,语法糖就是对现有语法的一个封装。Java作为一种与平台无关的高级语言,当然也含有语法糖,这些语法糖并不被...转载 2019-10-26 00:52:49 · 84 阅读 · 0 评论 -
ApplicationContextAware原理
转自 https://blog.csdn.net/baidu_19473529/article/details/81072524入口类ClassPathXmlApplicationContext->AbstractApplicationContext refresh方法 ->prepareBeanFactory方法 AbstractApplicationContext.ja...转载 2018-11-08 23:13:16 · 583 阅读 · 0 评论 -
java 单例模式
/*单例模式类*/package com.test.cn;public class Singleton {private Singleton(){}private int para1;public int getPara1() {return para1;}public void setPara1(int para1) {this.par原创 2017-07-30 15:22:38 · 145 阅读 · 0 评论 -
JAVA 实现冒泡排序
package com.test.cn;public class test1 {public static void main(String[] args) {// TODO Auto-generated method stubInteger i=0, temp=0, j =0;int a[] = {1,2,3,4,5,6,7,8,9,10};for(i=0原创 2017-07-29 22:40:47 · 142 阅读 · 0 评论