自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (14)
  • 问答 (1)
  • 收藏
  • 关注

原创 BeanPostProcessor 和BeanFactoryPostProcessor

BeanFactoryPostProcessor和BeanPostProcessor,这两个接口,都是Spring初始化bean时对外暴露的扩展点。两个接口名称看起来很相似,但作用及使用场景却不同,分析如下:1、BeanFactoryPostProcessor接口package org.springframework.beans.factory.config;import org.springframework.beans.BeansException;@FunctionalInterfa

2021-12-12 23:32:04 1463

原创 spring 扩展接口的执行顺序

1. 调用构造方法2. @value @Autowired 注入3 实现了Aware 子类执行 BeanNameAware、BeanClassAware、BeanFactoryAware4. @postConstract 执行/ 所有BeanPostProcessor.postProcessBeforeInitialization方法执行(@postContract 也是通过 BeanPostProcessor 原理实现的)5. 实现InitializingBean接口执行afterP...

2021-12-08 23:46:47 308

原创 InitializingBean 原理以及简单使用

实现InitializingBean 接口,必须重写重写方法afterPropertiesSet(),此时实例已经创建,并且属性已经赋值完成,如下图 在执行到afterPropertiesSet 方法时,demo 属性已经赋值完成,然后在afterPropertiesSet 方法内就可以利用属性属性实现某一些功能@Componentpublic class InitializingBeanImpl implements InitializingBean { @Value("${demo:s.

2021-12-04 00:41:55 454

原创 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 141

原创 rocketmq 消息位点提交

此处只从消费线程池内消费进程讲起ConsumeMessageConcurrentlyService 并发消息消费主类,通过submitConsumeRequest将消息提交至消费线程池consumeExecutor ,如下为ConsumeRequest.run()方法class ConsumeRequest implements Runnable { private final List<MessageExt> msgs; private final

2021-11-13 18:18:55 1320

原创 jvm 学习总计

https://www.processon.com/view/link/611257397d9c0806e4a3bac0

2021-08-10 18:39:40 67

原创 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 938

原创 IO NIO AIO 同步 异步 阻塞 非阻塞

传统javaIO 是同步阻塞IO,在同一个线程内,必须等到阻塞线程返回才会继续处理NIO 是同步非阻塞IO,还是在同一个线程内处理,只不过是设置为非阻塞,同时selctor 会不断查询channel 状态,状态的变更同一处理线程会进行不同的处理AIO 是异步非阻塞IO阻塞与非阻塞 指的是对内存而言,例如内存读取文件内容,读取网卡内容异步与非异步指的是针对是否一个线程处理进行处理还是多线程协作...

2021-07-27 22:39:00 291

原创 rocketmq 学习笔记

rocketmq 底层通信时使用nettyconsmer 负载均衡

2021-06-07 09:10:10 204 3

原创 sharding jdbc 基本概念(二)

分片键用于分片的数据库字段,是将数据库(表)水平拆分的关键字段。例:将订单表中的订单主键的尾数取模分片,则订单主键为分片字段。 SQL中如果无分片字段,将执行全路由,性能较差。 除了对单分片字段的支持,ShardingSphere也支持根据多个字段进行分片。分片算法通过分片算法将数据分片,支持通过=、>=、<=、>、<、BETWEEN和IN分片。分片算法需要应用方开发者自行实现,可实现的灵活度非常高。目前提供4种分片算法。由于分片算法和业务实现紧密相关,因此并未提供内

2021-05-07 23:17:51 173

原创 sharding jdbc 基本概念(一)

逻辑表水平拆分的数据库(表)的相同逻辑和数据表结构的总称,例如:订单数据根据主键尾数拆分为10张表,分别是t_order_0和t_order_9,他们的逻辑表名为t_order真实表在分片的数据库中真实存在的物理表,即t_order_0和t_order9数据节点数据分片的最小单元,有数据源名称和数据表组成即ds_0.t_orderd_0绑定表指分片规则一致的主表和子表,例如:t_order表和t_order_item 表,均按照order_id分片,则此两张表互为绑定关系,绑定.

2021-05-07 23:16:30 113

原创 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 671

原创 Lambda 表达式

执行单语句 Parameters -> an expression执行多语句Parameters -> {expressions;};若lambda 不需要参数 ,可以使用空括号 () -> {for (int i = 0; i < 1000; i++) doSomething();};Java是一个强类型的语言,因此参数必须要有类型,如果编译器能够推测出Lambda表达式的参数类型,则不需要我们显示的进行指定...

2021-02-20 16:31:04 64

原创 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 409 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 2693

原创 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 674

转载 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 320

原创 关于word解析那点事

记录不是目的,记录是为了更好的进步

2020-11-29 00:36:15 417 2

原创 关于BeanUtils 那点屌事

今天出现一个线上bug,我在排查代码的时候,两个高开在我身后陪我排查代码,慌的一批,害怕让他们看见不爽的代码,结果还真发现了,然后被屌了,如下 List<StudentB> studentbList = new ArrayList<>(); studentAList.forEach(student->{ StudentB studentB = new StudentB(); studentB.setName(

2020-11-28 00:11:03 830 1

转载 java 语法糖

转自https://blog.csdn.net/danchu/article/details/54986442语法糖(Syntactic Sugar),也称糖衣语法,指在计算机语言中添加的某种语法,这种语法对语言本身功能来说没有什么影响,只是为了方便程序员的开发,提高开发效率。说白了,语法糖就是对现有语法的一个封装。Java作为一种与平台无关的高级语言,当然也含有语法糖,这些语法糖并不被...

2019-10-26 00:52:49 80

转载 ApplicationContextAware原理

转自 https://blog.csdn.net/baidu_19473529/article/details/81072524入口类ClassPathXmlApplicationContext-&gt;AbstractApplicationContext refresh方法 -&gt;prepareBeanFactory方法 AbstractApplicationContext.ja...

2018-11-08 23:13:16 573

原创 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 139

原创 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 136

转载 C 语言unlink 函数

相关函数:link, rename, remove头文件:#include 定义函数:int unlink(const char * pathname);函数说明:unlink()会删除参数pathname 指定的文件. 如果该文件名为最后连接点, 但有其他进程打开了此文件, 则在所有关于此文件的文件描述词皆关闭后才会删除. 如果参数pathname 为一符号连接, 则此连

2013-09-02 14:57:59 1037

转载 va_arg介绍

va_arg1. 概述由于在C语言中没有函数重载,解决不定数目函数参数问题变得比较麻烦;即使采用C++,如果参数个数不能确定,也很难采用函数重载.对这种情况,有些人采用指针参数来解决问题.下面就c语言中处理不定参数数目的问题进行讨论.2. 定义大家先看几宏.在VC++6.0的include有一个stdarg.h头文件,有如下几个宏定义:[cpp] view pl

2013-08-15 11:12:35 3913 1

转载 C语言字节对齐

别填充三个和两个字节使length和整个结构体对齐。于是我们sizeof(my_stu)会得到长度为20,而不是15.    四、__attribute__选项    我们可以按照自己设定的对齐大小来编译程序,GNU使用__attribute__选项来设置,比如我们想让刚才的结构按一字节对齐,我们可以这样定义结构体    struct stu{   char sex;

2013-08-14 14:12:40 408

转载 C语言位域和位段

C结构体之位域(位段)有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可

2013-08-14 00:42:43 638

原创 C语言 格式化

%s串输出%o八进制输出%x十六进制输出%d十进制输出

2013-08-14 00:14:53 613

转载 C语言位运算符:与、或、异或、取反、左移和右移

语言位运算符:与、或、异或、取反、左移和右移位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。C语言提供的位运算符列表:运算符 含义 描述& 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0| 按位或 两个相应

2013-08-14 00:01:25 781

原创 const 和 *

int x = 1,y = 2; // a 与 b 都是整型常量,值都不能修改,只读变量 const int a = 0; int const b = 0; const int *px = &a;// px 不是常量 *px 是常量 int * const py = &y;// py 是常量 *py 不是常量 const int * const pp = &x;// pp

2013-08-13 22:12:46 588

原创 C语言堆空间的生成与释放

堆空间的分配和释放 #include  malloc、calloc、realloc、free malloc void *malloc(size_t size); 功能:在堆中分配 size 字节的连续空间 参数:size_字节数 返回值:成功返回分配空间的首地址,失败返回 NULL  free void free(void *ptr); 功能:释放由 m

2013-08-13 22:11:06 1510

原创 函数声明与调用问题

假如函数在调用它之前定义可以不用声明实际上,如果在函数调用前,没有对函数作声明,则编译系统会吧第一次遇到的该函数的形式(函数定义或者函数调用)作为函数的声明,并将函数默认值类型认为int型比如有您调用的是void max(int a,int b)系统就会把该函数当做int max(int a,int b);

2013-08-09 14:59:39 782

函数声明与调用问题

假如函数在调用它之前定义可以不用声明实际上,如果在函数调用前,没有对函数作声明,则编译系统会吧第一次遇到的该函数的形式(函数定义或者函数调用)作为函数的声明,并将函数默认值类型认为int型比如有您调用的是void max(int a,int b)系统就会把该函数当做int max(int a,int b);...

2013-08-09 14:59:00 130

转载 C指针

指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。   先声明几个指针放着做例子:   例一:   (1)int*ptr;   (2)char*ptr;   (3)int**ptr;   (4)int(*p

2013-08-04 00:27:36 498

C指针

指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。  先声明几个指针放着做例子:  例一:  (1)int*ptr;  (2)char*ptr;  (3)int**ptr;  (4)int(*ptr)[3];...

2013-08-04 00:27:00 51

原创 C语言学习笔记

静态局部变量:假如静态局部变量不必被赋初值的话编译的时候会自动赋初值0(整型变量)者空字符串(字符类型),而对自动变量的话如果不赋初值的话,则可能是任意值。寄存器变量:在程序运行时,根据需要到内存中相应的存储单元中调用,如果一个变量在程序中频繁使用,例如循环变量,那么,系统就必须多次访问内存中的该单元,影响程序的执行效率。因此,C\C++语言还定义了一种变量,不是保存在内存上,而是直接存储在C

2013-08-03 21:10:29 424

C语言学习笔记

静态局部变量:假如静态局部变量不必被赋初值的话编译的时候会自动赋初值0(整型变量)者空字符串(字符类型),而对自动变量的话如果不赋初值的话,则可能是任意值。寄存器变量:在程序运行时,根据需要到内存中相应的存储单元中调用,如果一个变量在程序中频繁使用,例如循环变量,那么,系统就必须多次访问内存中的该单元,影响程序的执行效率。因此,C\C++语言还定义了一种变量,不是保存在内存上,而是直接存储在C...

2013-08-03 21:10:00 55

原创 extern 在C语言中的应用

C语言中extern关键字详解作者:华清远见武汉华嵌 技术支持 曹伟东内容清单:1. 用extern声明外部变量(1)在一个文件内声明的外部变量(2)在多个文件中声明外部变量(3)在多个文件中声明外部结构体变量2. 用extern声明外部函数3. 总结1. 用extern声明外部变量定义:外部变量是指在函数或者文件外部定义的全局变量。外部变量定义必须在所

2013-08-03 11:21:42 841

extern 在C语言中的应用

C语言中extern关键字详解作者:华清远见武汉华嵌 技术支持 曹伟东内容清单:1. 用extern声明外部变量(1)在一个文件内声明的外部变量(2)在多个文件中声明外部变量(3)在多个文件中声明外部结构体变量2. 用extern声明外部函数3. 总结1. 用extern声明外部变量定义:外部变量是指在函数或者文件外部定义的全局变量。外部变量定义必须在所有的...

2013-08-03 11:21:00 105

原创 tar命令的使用

1、建立TAR包(打包)命令格式:tar cvf TAR包文件名.tar 所备份的文件或目录功能描述:tar cvf命令用于把指定的目录或文件打包到指定的文件中。“c”指定建立(或压缩)TAR包,“v”设置命令执行时有更多的提示信息,“f”指定TAR包的文件名。c:create;v:verbose;f:file另外,在使用tar命令时,可以在cvf前面加上短横线

2013-08-03 09:52:16 795

UE for MAC 破解版

UE for MAC 破解版

2018-03-27

qt公司人员管理系统

qt+sqlite3+tinyxml+公司人员管理系统 完全手写,很适合qt刚刚开始学习的童鞋们

2013-10-30

天嵌的内核移植手册

这是天嵌官方比较新的手册,比起上一版有稍微的改动,现在贴出来,拱大家分享

2013-04-14

SQLite学习手册

sqlite学习手册,内容比较全,并且讲解细致,适合广大的助学者

2013-04-14

tq2440jflash

这是本人在网上找的,希望对你有所帮助,分数也不高哈

2013-03-12

mysql-jdbc驱动

希望能够对有所帮助,这是从网上找的,用的还不错,就是版本有点老了,但还是不错的

2012-12-24

Fiddler2Setup.exe

一个很好用的小软件,个头虽小,但是功能强大,希望能对你有所帮助

2012-10-13

网页制作完全手册

本人从网上找了好长时间找到的,希望能对你有所帮助,多多学习交流

2012-10-10

structsjar包

这是我从网上用了很大功夫找的,希望能对你有所帮助,积分也不是很多,重在互相学习

2012-09-19

Node.js开发指南

希望对你有用啊

2012-08-07

sqlserver 2008完全学习手册

欢迎下载,多多益善,希望对对你有所帮助,

2012-08-06

javaee5 api帮助文档

本人从一个资源上下载的,希望能对你有所帮助,不是很全,但能将就着看

2012-08-01

webservice入门教程

本人资料有限,希望能帮到你,多多学习,多多交流,共同进步

2012-07-31

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

TA关注的人

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