自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(419)
  • 论坛 (1)
  • 收藏
  • 关注

转载 SpringBoot 完全整合 Quartz 的简单例子

本例是 SpringBoot 完全整合 Quartz 的一个完整例子,基本不需要其他过多配置:基本的实现效果: 对定时任务的 自定义逻辑、启动、暂停、恢复、删除、修改。本例子中的测试 url:访问 http://localhost:8080/startHelloWorldJob 启动一个名为 HelloWorld,组名为 GroupOne 的定时任务,每隔 2 秒打印 “hello wo...

2020-04-10 01:03:17 304

转载 用例图详解

对于用例图来说我们需要了解的是什么叫用例图,构成用例图的要素,用例图有哪些重要的元素,各个用例之间的关系。当然最重要的是如何根据需求创建用例图。具体的创建通过一个简单的学生管理的例子说明创建的过程和例子。  我的所有例子都是是使用Rose这个软件来画的,现在虽然有新的UML模型画图软件,但是我比较喜欢用这个Rose,如果你还没有装这个软件需要先装一个,或者使用你比较喜欢的UML画图软件。下面我们...

2020-03-29 16:25:58 679

转载 github总结(3)--怎样在github上面实现页面托管

part Ⅱ:gh-pages分支--实现页面托管第一步:在github线上创建一个新的仓库第二步:在项目本地地址,git init初始化,再git add --all进行文档追踪添加第三步:git commit - m '提交记录描述',提交项目文档到本地git仓库第四步:git remote add origin 线上github仓库地址,建立本地与线上仓库连...

2020-03-28 14:54:58 105

转载 github总结(1)--怎样创建一个新的仓库

第一步:登录账号,进入github,创建一个新的空仓库第二步:打开电脑上已经安装好的git-bash,切换至项目所在本地目录第三步:创建本地仓库及提交文件到本地仓库(用windows命令行或者git-bash均可以)git init //创建一个新的本地仓库git status //查看本地仓库状态git add ...

2020-03-28 14:52:01 181

转载 github总结(2)--怎样在github上面创建新的分支

part I:添加新的分支步骤分解第一步:git branch 查看当前分支情况git branch //查看当前分支情况第二步:git branch 分支名,新建一个自己的分支git branch 分支名 // 新建一个自己的分支第三步:git checkout 分支名,切换到新建的分支git checkout 分支名 //切换到新建的...

2020-03-28 14:50:56 176

转载 github总结(4)--关于git reset --hard这个命令的惨痛教训

背景叙述:前几天,上传自己的个站到git上的时候,手欠脑发晕的用了次git reset --hard xxxxxx 命令。由于只在线上传入了一个index.html页面(自己都不知道自己咋想的,就这么干了,O__O"…),且第一次commit的时候也只commit了一个index.html文件,其他文件的只是通过git add --all命令进行本地追踪。然后,突发奇想,想恢复到第一次提交...

2020-03-28 14:48:08 397

转载 [git] git reset --hard后恢复操作

看到这个标题,你以为能恢复??。。。转载过来以为是能挽救git reset –hard的神技,然而不是。。。看到这篇的同学可以有个心理安慰了,这边还有没提交修改就rest,想撞墙的想剁手的。。。划重点,使用git reset–hard(此参数有毒)之前一定要git commit 或者 git add 或者 git stash或者。。。假如你这些操作都没有执行的话,博主还有一个找了多年的方...

2020-03-28 14:37:53 121

转载 VO、DTO、DO、PO

概念:VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。DO(...

2020-03-15 11:04:29 103

转载 TCP和Http的区别

相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通过自己的浅显理解能对初学者有所帮助。1、TCP连接手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。建立起一个TCP连接需要经过“三次握手”:第一次握手:客户端发送s...

2020-02-26 14:24:54 226

转载 互联网常见架构模式 之 nginx负载均衡

一:什么是NginxNginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度...

2020-02-24 16:12:34 179

原创 HashSet避免存储重复元素的原理

请参考:HashSet为什么不能存取重复元素?(底层图解详解)以及:JAVA集合Set之HashSet详解

2020-02-20 18:00:48 159

转载 HashMap常见面试题整理

1.谈一下HashMap的特性?1.HashMap存储键值对实现快速存取,允许为null。key值不可重复,若key值重复则覆盖。 2.非同步,线程不安全。 3.底层是hash表,不保证有序(比如插入的顺序)2.谈一下HashMap的底层原理是什么?基于hashing的原理,jdk8后采用数组+链表+红黑树的数据结构。我们通过put和get存储和获取对象。当我们给put()方法...

2020-02-20 17:35:33 145

转载 HashMap与TreeMap的排序以及四种遍历方式

一、Map概述1、Map是将键映射到值( key-value )的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。2、Map与Collection的区别(1)Map 是以键值对的方式存储元素,键唯一,值可以重复。(2)Collection存储的是单列元素,子接口Set元素唯一,子接口List可以重复。(3)Map的数据结构针对键有效,跟值无关...

2020-02-20 17:24:11 121

转载 Java集合之七—Map总结

Map是一种用于快速查找的数据结构,它以键值对的形式存储数据,每一个键都是唯一的,且对应着一个值,如果想要查找Map中的数据,只需要传入一个键,Map会对键进行匹配并返回键所对应的值,可以说Map其实就是一个存放键值对的集合。Map被各种编程语言广泛使用,只不过在名称上可能会有些混淆,像Python中叫做字典(Dictionary),也有些语言称其为关联数组(Associative Array),...

2020-02-20 17:13:37 125

转载 Java集合之六—AbstractMap

AbstractMap是一个抽象类,它是Map接口的一个骨架实现,最小化实现了此接口提供的抽象函数。在Java的Collection框架中基本都遵循了这一规定,骨架实现在接口与实现类之间构建了一层抽象,其目的是为了复用一些比较通用的函数以及方便扩展,例如List接口拥有骨架实现AbstractList、Set接口拥有骨架实现AbstractSet等。下面我们按照不同的操作类型来看看Abstra...

2020-02-20 17:12:14 68

转载 Java集合之五—WeakHashMap

WeakHashMap是一个基于Map接口实现的散列表,实现细节与HashMap类似(都有负载因子、散列函数等等,但没有HashMap那么多优化手段),它的特殊之处在于每个key都是一个弱引用。首先我们要明白什么是弱引用,Java将引用分为四类(从JDK1.2开始),强度依次逐渐减弱: 强引用: 就是平常使用的普通引用对象,例如Object obj = new Object(),这就是一...

2020-02-20 17:10:24 60

转载 Java集合之四—LinkedHashMap

LinkedHashMap继承HashMap并实现了Map接口,同时具有可预测的迭代顺序(按照插入顺序排序)。它与HashMap的不同之处在于,维护了一条贯穿其全部Entry的双向链表(因为额外维护了链表的关系,性能上要略差于HashMap,不过集合视图的遍历时间与元素数量成正比,而HashMap是与buckets数组的长度成正比的),可以认为它是散列表与链表的结合。/*** The h...

2020-02-20 17:08:31 59

转载 Java集合之三—ConcurrentHashMap

我们上述所讲的Map都是非线程安全的,这意味着不应该在多个线程中对这些Map进行修改操作,轻则会产生数据不一致的问题,甚至还会因为并发插入元素而导致链表成环(插入会触发扩容,而扩容操作需要将原数组中的元素rehash到新数组,这时并发操作就有可能产生链表的循环引用从而成环),这样在查找时就会发生死循环,影响到整个应用程序。Collections.synchronizedMap(Map<K...

2020-02-19 14:46:29 64

转载 JAVA集合之二—TreeMap

大家好,今天我们来学习一下Map家族中的另一个成员:TreeMap。一、基本概念在介绍TreeMap之前,我们来了解一种数据结构:二叉树。相信学过数据结构的同学知道,这种结构的数据存储形式在查找的时候效率非常高。二叉树结构(源自百度百科)二叉树结构又可再细分为二叉查找树叉平衡树二叉查找树二叉查找树是一种有序的树,所有的左孩子的value值都是小于叶子结...

2020-02-19 14:35:27 111

转载 Java集合之一—HashMap

深入浅出学Java——HashMap哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,本文会对java集合框架中HashMap的实现原理进行讲解,并对JDK7的HashMap源码进行分析。一、什么是哈希表在讨论哈希表之前,我们先大概了解下其他数据结构在新增,查找等基...

2020-02-19 11:29:15 117

转载 HashMap(JDK1.8)源码解析

文章目录简介特点数据结构JDK1.8之前JDK1.8之后JDK1.7 VS JDK1.8 比较继承关系图成员变量构造方法静态内部类NodeTreeNode核心方法hash()算法put()方法resize()方法treeifyBin()方法get()方法remove()方法遍历简介在JDK1.8之前,HashMap采用数组+链表实现,即使用链表处理冲突,...

2020-02-18 10:27:41 92

转载 Tomcat的并发处理能力

当一个进程有500个线程在跑的话,那性能已经是很低很低了。Tomcat默认配置的最大请求数是150,也就是说同时支持150个并发,当然了,也可以将其改大。 当某个应用拥有250个以上并发的时候,应考虑应用服务器的集群。具体能承载多少并发,需要看硬件的配置,CPU越多性能越高,分配给JVM的内存越多性能也就越高,但也会加重GC的负担。操作系统对于进...

2020-02-04 14:07:47 433

转载 每一个开发人员都应该懂的 UML 规范

在团队协作过程中最常见的就是开会、开会最常用的就是图,而图中最常见的就是流程图、时序图、类图,这三个图可以清楚的描述你想解释的内容。学好类图不仅仅能帮助自己更清楚的梳理业务,还能提高开会效率。但是话说回来,你是否真的看懂别人画的图了?或者你真的会画吗?今天就和大家一起学习一下怎么画类图。上图是我模拟出来的一个场景和大家具体说一下类图究竟应该怎么画才对。图中讲的是这样一个「故事」:一...

2019-11-29 11:27:31 165

转载 http消息头Content-Type常见的几种值

在Http协议消息头中,使用Content-Type来表示具体请求中的媒体类型信息。例如: Content-Type: text/html;charset:utf-8;常见的媒体格式类型如下:text/html : HTML格式text/plain :纯文本格式text/xml :XML格式image/gif :gif图片格式...

2019-10-02 10:13:36 90

转载 递归的用法

摘要:递归算法,结构清晰,形式简单,符合人的思维习惯,容易被理解和阅读,因而成为计算机程序设计中的一种重要方法,掌握它也有助于理解其他算法。该文阐述了递归算法的基本概念,成立的三个条件,直接和间接递归分类,通过实例深入分析递归在数据结构、函数应用和执行过程中的应用,以及将递归转化为非递归的一般方法。中国论文网http://www.xzbu.com/8/view-3705319.htm  关键...

2019-08-20 18:57:24 411

转载 Oracle数据库over函数的使用

over()函数写法over(partition by expr2 order by expr3),根据expr2对结果进行分区,在各分区内按照expr3进行排序;over函数不能单独使用,需要与row_number(),rank()和dense_rank,lag()和lead(),sum()等配合使用。分区partiton by 与 group by的区别group by会将结果集按...

2019-05-12 12:58:45 190

转载 oracle中over()分析函数的用法

百度文库也记载了oracle中over()分析函数的用法在泡坛子的时候中无意中发现了这个函数,才知道oracle分析函数是如此的强大,其中over() 函数的用法又尤为的特别,所以将自己的研究结果记录一下。  个人理解:over() 函数 是对 分析函数的一种条件解释,直接点就是 给分析函数加条件吧。  在网上看见比较常用的就是 与 sum()、rank() 函数使用。接下来就用分析下...

2019-05-12 12:44:52 959

原创 plsql和sql的区别

1、概念不同:PL/SQL:也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL)。sql:一般指结构化查询语言。2、内容不同:PL/SQL:是Oracle数据库对SQL语句的扩展。sql:是一种特殊目的的编程语言,是一种数据库查询和程序设计语言。3、功能不同:PL/SQL:在普通SQL语句的使用上增加了编程语言的特点,所以PL/SQL...

2019-05-12 12:43:40 4314

转载 十面阿里——菜鸟,蚂蚁金服,天猫面试后带回来的题目总汇

虽然天猫,蚂蚁金,菜鸟都归属阿里旗下,但每个面试官问的问题都不一样,相同点主要在流程方面。面试开始会让自我介绍,主要业务架构和技术架构两部分。业务架构一般不会深究,但要面试官听明白,并且一般面试官会顺着问是如何根据这些业务去设计技术架构的。面试试题其他什么是幂等?什么情况下需要考虑幂等?你怎么解决幂等的问题?Java的多个线程同时读写,读线程的数量远远大于写线程,你认为应该如何解...

2019-04-08 22:55:53 164

转载 阿里资深架构师总结分布式系统的经典基础理论

分布式系统从诞生发展到现在已经走过十几个年头了,其中伴随着一些很重要的基础理论,正式这些影响深渊的基础理论,奠定了分布式系统的见识基础,造就了分布式领域的一座座宏伟大厦。为了练就一身武功,让我们从这些经典的分布式理论开始吧!一、分布式系统的设计理念分布式系统架构的第一原则是不要分布!这句看似矛盾的话揭露了分布式系统的很多特征。首先,分布式系统的首要目标是提升系统的整体性能和吞吐...

2019-04-08 22:55:41 112

转载 “大话架构”阿里架构师分享的Java程序员需要突破的技术要点

一、源码分析源码分析是一种临界知识,掌握了这种临界知识,能不变应万变,源码分析对于很多人来说很枯燥,生涩难懂。源码阅读,我觉得最核心有三点:技术基础+强烈的求知欲+耐心。我认为是阅读源码的最核心驱动力。我见到绝大多数程序员,对学习的态度,基本上就是这几个层次(很偏激哦):1、只关注项目本身,不懂就baidu一下。2、除了做好项目,还会阅读和项目有关的技术书籍,看wikipedi...

2019-04-08 22:55:32 63

转载 如何运用所掌握的技术构建一个完整的业务架构

1、通用架构概述创业之初,我们往往会为了快速迭代出产品,而选择最简单的技术架构,比如LAMP架构,SSH三层架构。这些架构可以适应初期业务的快速发展,但是,随着业务变得越来越复杂,我们会发现这些架构越来越难支撑业务的发展,出现在一个类中写好几千行代码,一个方法中到处都是if else语句,如果中间遇到主程序猿离职,后面介入的程序猿几乎无法理解这些代码,到最后,产品越来越难迭代,只能推翻重做。如...

2019-04-08 22:55:18 143

转载 线程与并发:(一)高并发和多线程的关系

“高并发和多线程”总是被一起提起,给人感觉两者好像相等,实则高并发 ≠ 多线程  多线程是完成任务的一种方法,高并发是系统运行的一种状态,通过多线程有助于系统承受高并发状态的实现。  高并发是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问或者socket端口集中性收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会...

2019-04-08 22:54:49 538

转载 阿里P8架构师谈:高并发与多线程的关系、区别、高并发的技术方案

什么是高并发?高并发(High Concurrency)是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会导致系统在这段时间内执行大量操作,例如对资源的请求,数据库的操作等。高并发的处理指标?高并发相关常用的一些指标有:1.响应时间(Response Time)...

2019-04-08 22:54:31 118

转载 下列哪种异常是检查型异常,需要在编写程序时声明?

下列哪种异常是检查型异常,需要在编写程序时声明?ANullPointerExceptionBClassCastExceptionCFileNotFoundExceptionDIndexOutOfBoundsException正确答案:C1. 粉红色的是受检查的异常(checked exceptions),其必须被 try{}catch语句块所捕获,或者在方法签名里通过thro...

2019-04-08 22:53:25 6164 1

原创 线程安全和线程不安全的区别和线程安全类型总结(Hashtable StringBuffer Vector)

进程和线程:1)进程是静态的,其实就是指开启的一个程序;而线程是动态的,是真正执行的单元,执行的过程。其实我们平时看到的进程,是线程在执行着,因为线程是作为进程的一个单元存在的。2)同样作为基本的执行单元,线程是划分得比进程更小的执行单位。3)每个进程都有一段专用的内存区域。与此相反,线程却共享内存单元(包括代码和数据),通过共享的内存单元来实现数据交换、实时通信与必要的同步操作。...

2019-04-08 22:53:18 213

转载 约瑟夫环的java实现

约瑟夫环:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。直接给出代码,欢迎拍砖。package com.timeng;import java.util.ArrayList; import java.util.List; ...

2019-04-08 22:53:09 126

转载 url中的20%、22%、26%、28%、29%怎么解析还原成真实的字符

程序对url解码:import java.io.UnsupportedEncodingException;import java.net.URLDecoder;String deurl = URLDecoder.decode(url,"UTF-8");必须加编码UTF-8或者正文的编码GB2312否则就会提示不推荐使用The method decode(St...

2019-04-08 22:52:20 22735 1

原创 java中,StringBuilder和StringBuffer的区别,下面说法错误的是?

java中,StringBuilder和StringBuffer的区别,下面说法错误的是?AStringBuffer是线程安全的BStringBuilder是非线程安全的CStringBuffer对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象。D效率比较String<StringBuffer<S...

2019-03-19 15:48:52 4236

转载 java Thread中,run方法和start方法的区别,下面说法错误的是?

java Thread中,run方法和start方法的区别,下面说法错误的是?A通过调用Thread类的start()方法来启动一个线程,这时此线程是处于就绪状态,并没有运行。B他们都可以实现了多线程运行。Crun方法是thread的一个普通方法调用。D调用start方法后,一旦得到cpu时间片,就开始执行run()方法。正确答案:B解析:start方法...

2019-03-19 15:33:53 1333

空空如也

越来越好ing的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

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

TA关注的人 TA的粉丝

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