自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 JAVAEE2

Springboot简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案;springboot参数配置默认加载顺序Springboot自动配置原理Spring Boot启动的时候会通过@EnableAutoConfiguration注解扫描所有jar包类路径下META-INF/spring.factories配置文件中的所有自动配置类,并对其进行加载,而这些自动配置类都是以AutoConfiguration结尾来命名的,它实际上就是一个JavaC

2021-03-24 09:41:25 221

原创 Java并发编程的艺术2

线程优先级现代操作系统调度运行的线程,会分出一个个时间片,线程会分配到若干时间片。当线程的时间片用完了就会发生线程调度,并等待着下次分配。线程分配到的时间片多少就决定了线程使用处理器资源的多少,而线程优先级就是决定线程需要多或少分配一些处理器资源的线程属性。线程构建的时候可通过setPriority(int)方法修改优先级,默认是5。在不同的JVM以及操作系统上,线程规划会存在差异,有些操作系统甚至会忽略对线程优先级的设定。线程的状态NEW-----初始状态,线程被构建,但是还没调用start方法

2021-03-02 21:16:40 239

原创 Quartz定时任务框架

Quartz框架的核心对象Scheduler – 核心调度器Job – 任务JobDetail – 任务描述Trigger -- 触发器一个Job可以被多个Trigger调度,但一个只能对应一个Job

2021-01-30 11:31:57 423

原创 SpringCloud微服务实战

监控与管理:为了让运维系统能够获取各个微服务应用的相关指标,需要开发一套专门用于植入各个微服务应用的接口供监控系统采集信息。而这些接口往往大部分指标都是类似的,比如环境变量、垃圾收集信息、内存信息、线程池信息。端点就是实现此功能的一个标准化框架。Maven依赖引入spring-boot-starter-actuator模块能自动为SpringBoot构建的应用提供一系列用于监控的端点。同时SpringCloud在实现各个微服务组件的时候,会进一步扩展该模块,为原生端点增加了更多的指标和度量信息(比如在

2021-01-07 17:04:21 292

原创 Java并发编程的艺术

多线程一定快吗?CPU通过时间片分配算法循环执行任务,当前任务执行一个时间片后,会切换到下一个任务。但是在切换前会保存上一个任务的状态。以便下次切换回这个任务时可以再加载这个任务的状态,所以任务从保存到再加载的过程就是一次上下文切换。为什么并发执行的速度,有时候会比串行慢,是因为线程有创建和上下文切换的开销。如何减少上下文的切换?无锁并发编程。多线程竞争锁,会引起上下文切换,所以多线程处理数据时,可以用一些办法来避免使用锁,如将数据的ID按照哈希算法取模分段,不同线程处理不同段的数据。CAS

2020-12-17 23:48:16 270

原创 ActiveMQ

启动/关闭 /bin下 :./activemq start/stop带日志启动:./activemq start > /myactiveMQ/myrumq.logactivemq得默认进程端口61616控制台端口8161 http://192.168.74.138:8161/admin 默认登录用户名密码都是adminJMS总体架构目的地Destination:在点对点的消息传递域中,目的地被称为队列(queue)在发布订阅消息xxxxxxxxxxxxxxxxxxxxxxxx主题(to

2020-08-24 14:41:58 276

原创 Redis

持久化机制RDB: 在指定的时间间隔内将内存中的数据集快照写入磁盘。也是默认的持久化方式,这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。触发方式:1.save触发方式:...

2020-07-31 17:57:30 178

原创 JVM

Java跨平台的原理:一次编译,到处运行,在虚拟机层面隐藏了底层技术的复杂性以及机器和操作系统的差异性运行时区域:1.程序计数器:当前线程所执行的字节码的行号指示器,字节码解释器工作时就是通过改变计数器的值来选取下一条需要执行的字节码指令。2.Java虚拟机栈:线程私有,每个方法被执行的时候,Java虚拟机会同步创建一个栈帧用来存储局部变量表、操作数栈、动态连接、方法出口等信息。一个方...

2020-04-27 09:47:51 276

原创 数据库杂记2

DML插入方式一insert into xxx(colume1,column2…) values (,…);方式二insert into xxx set 列名=值,列名=值…方式一可插多行,可子查询,方式二均不行修改update xxx set 列=值,列=值 where …;update修改多表的记录删除delete from xxx where…truncate tabl...

2019-08-15 10:28:14 199

原创 SpringCloud

什么是微服务?微服务的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底解耦,每个微服务提供单个业务功能的服务;从技术角度看是小而独立的处理过程,类似进程,能自行单独启动或销毁,可拥有独立数据库。微服务技术栈:...

2019-05-25 14:12:01 189

原创 数据结构和算法5(树、图)

赫夫曼树树节点间连线相关的树叫做权(频数)。结点的路径长度:从根节点到该节点的路径上的连接数。树的路径长度:树中每个叶子结点的路径长度之和。结点带权路径长度:节点的路径长度和结点取值的乘积。树的带权路径长度(WPL):树中所有叶子结点的带权路径长度之和。树的带权路径长度越小,二叉树性能越好。WPL最小时,就是最优二叉树,也是赫夫曼树。怎么构造赫夫曼树?在森林中选出两棵根节点的...

2019-04-24 16:55:42 345

原创 数据结构和算法4(树)

树的定义结点的层次从根开始定义,根是第一层,根的孩子是第二层。树中结点的最大层次称为树的深度或高度。如果将树中结点的各子树看成从左至右是有次序的,不可互换的,那该树就是有序树,否则为无序树。森林是m(m>=0)棵互不相交的树的集合。树的存储结构...

2019-04-23 11:10:05 268

原创 数据结构和算法3

斐波那契数列的递归实现斐波那契数列的迭代实现打印出前40位斐波那契数列数:递归迭代和递归的区别:迭代使用循环结构,递归使用选择结构,使用递归可让程序更清晰简洁,但大量的递归会建立函数的副本,会消耗大量的时间和内存,而迭代不需要。递归函数分为调用和回退阶段,递归回退顺序是他调用顺序的逆序...

2019-04-21 10:15:59 141

原创 数据结构和算法2(栈和队列)

栈栈的顺序存储结构typedef struct{ ElemType *base; ElemType *top; int stackSize;}sqStack;base是指向栈底的指针,top是指向栈顶的指针,stackSize是指栈的当前可使用的最大容量。创建一个栈...

2019-04-18 13:41:13 463 1

原创 MySQL索引

sql执行顺序索引是帮助MySQL高效获取数据的数据结构索引目的在于提高查询效率,类比字典简单理解为 排好序的快速 查找数据结构

2019-04-09 11:15:57 215

原创 Elasticsearch笔记2

冒泡排序(平均时间复杂度:O(n2))基本思想:相邻两个数比较大小,较大的数一直往后挪。第一趟:首先比较第1个和第2个数,小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,这样最后一个数就是最大的。所以第二趟比较的时候最后一个数不参与比较;第二趟比较完成后,倒数第二个数是数组中第二大的数。 for(int i = 0;i<a.le...

2019-02-21 19:20:10 209 1

原创 数据结构和算法1(线性表)

算法基本特征:输入,输出,有穷性,确定性,可行性

2019-02-08 11:30:19 221 1

原创 Javaaaaaaaa

webService三要素:SOAP、WSDL(WebServicesDescriptionLanguage)、UDDI(UniversalDescriptionDiscovery andIntegration)之一, soap用来描述传递信息的格式, WSDL 用来描述如何访问具体的接口, uddi用来管理,分发,查询webService 。什么是webservice?WebService是...

2019-01-16 14:32:24 745

翻译 Elasticsearch笔记

索引索引这个词在 Elasticsearch 语境中有多种含义:名词:一个 索引类似于传统关系数据库中的一个 数据库 ,是一个存储关系型文档的地方。动词:索引一个文档就是存储一个文档到一个 索引(名词)中以便被检索和查询。这类似于 SQL 语句中的 INSERT 关键词,除了文档已存在时,新文档会替换旧文档情况之外。倒排索引:关系型数据库通过增加一个 索引比如一个 B树(B-tree)索引到指定的列上,以便提升数据检索速度。Elasticsearch 和 Lucene 使用了一个叫做倒排索引的结构

2019-01-15 16:35:55 213

原创 数据库杂记

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

2019-01-14 17:34:50 181

原创 ArrayList

和Vector不同,ArrayList中的操作不是线程安全的!所以,建议在单线程中才使用ArrayList,而在多线程中可以选择Vector或者CopyOnWriteArrayList。ArrayList包含了两个重要的对象:elementData 和 size。(01) elementData 是"Object[]类型的数组",它保存了添加到ArrayList中的元素

2019-01-02 16:05:52 193

原创 Set

(01) Set 是继承于Collection的接口。它是一个不允许有重复元素的集合。(02) AbstractSet 是一个抽象类,它继承于AbstractCollection,AbstractCollection实现了Set中的绝大部分函数,为Set的实现类提供了便利。(03) HastSet 和 TreeSet 是Set的两个实现类。HashSet依赖于HashMap,它实际上是通过H...

2018-12-29 17:09:20 137

原创 hashCode

Object类的hashCode方法默认返回对象的内存地址。hashCode() 的作用是获取哈希码,也称为散列码;它返回一个int整数。这个哈希码的作用是确定该对象在哈希表中的索引位置。虽然,每个Java类都包含hashCode() 函数。但是,仅仅当创建并某个“类的散列表”时,该类的hashCode() 才有用(作用是:确定该类的每一个对象在散列表中的位置;其它情况下(例如,创建类的单个对...

2018-12-29 13:57:35 121

原创 HashMap 原理

HashMap简介 http://www.cnblogs.com/skywang12345/p/3310835.htmlHashMap 是一个散列表,它存储的内容是键值对(key-value)映射。HashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。HashMap 的实现不是同步的,这意味着它不是线程安全的。它的ke...

2018-12-29 13:55:02 138

空空如也

空空如也

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

TA关注的人

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