自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 RabbitMQ死信队列

死信队列为什么是队列死信队列是当消息在一个队列因为下列原因:1.消息被拒绝(basic.reject或basic.nack)并且requeue=false.2.消息TTL过期3.队列达到最大长度(队列满了,无法再添加数据到mq中)消息变成死信后,会被重新投递(publish)到另一个交换机上(Exchange),这个交换机往往被称为DLX(dead-letter-exchange)“死信...

2019-09-28 14:48:41 310

原创 如何实现分布式事务

什么是分布式事务?简单的说,就是一次大操作由不同小操作组成,这些小操作分布在不同服务器上,分布式事务需要保证这些小操作要么全部成功,要么全部失败。你上淘宝买东西,需要先扣钱,然后商品库存-1吧。但扣款和库存分别属于两个服务,这两个服务中间要经过网络、网关、主机等一系列中间层,万一任何一个地方出了问题,比如网络抖动、突发异常等待,都会导致不一致,比如扣款成功了,但是库存没-1,就会出现超卖的现象...

2019-09-27 19:31:55 10880

原创 IDEA实现简单微信QQ聊天(客户端发送消息,服务端接收,BIO)

接下来代码实现以下服务端 用来接收消息public class WechatServer { static byte[] bytes = new byte[1024]; public static void main(String[] args) { try { // 用于监听 ServerSocket ser...

2019-09-25 22:02:46 3204

原创 线程池应用

Java线程池的引入目的线程的创建和销毁,都涉及到系统调用,比较消耗系统资源,那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?所以就引入了线程池技术,避免频繁的线程创建和销毁。ThreadPoolExecutor类在Java用有一个Executors工具类,可以为我们创建一个线程池,其本质就是new了一个ThreadPoolExecutor对象...

2019-09-25 21:41:44 111

原创 Nginx负载均衡算法

1、反向代理关于代理说到代理,首先我们要明确一个概念,所谓代理就是一个代表、一个渠道;此时就设计到两个角色,一个是被代理角色,一个是目标角色,被代理角色通过这个代理访问目标角色完成一些任务的过程称为代理操作过程;正向代理说反向代理之前,我们先看看正向代理,正向代理也是大家最常接触的到的代理模式,我们会从两个方面来说关于正向代理的处理模式,分别从软件方面和生活方面来解释一下什么叫正向代...

2019-09-23 21:44:58 263

原创 GC算法

GC算法1、标记-清除算法标记-清除算法,顾名思义,就是先将需要回收的对象标记出来,标记完成后将所有带有标记的对象回收,然后将未标记的清除。标记-清除算法执行gc垃圾回收后,会产生大量不连续的内存碎片,在之后如果需要分配较大对象时,而找不到足够的连续内存去分配,就是导致下一次垃圾回收,这种标记-清除算法机制效率太...

2019-09-23 21:10:44 91

原创 Redis相关知识

1.Redis事务Redis事务以MULTI开始,中间添加多种命令,这些命令不会立即执行,而是被放入到一个队列中,当执行EXEC时,队列中的所有命令被依次执行。  当命令放在MULTI中,但还未执行EXEC时,每个命令返回值为QUEUED,Redis事务将多个命令使用MULTI包括起来,调用EXEC一起执行,减少与客户端之间通信往返次数,提升执行多个命令时的性能        从2....

2019-09-20 10:16:52 97

原创 Spring MVC原理解析

原理图解:一丶Spring MVC 9大组件1:HandleMapping在HandlerMapping的体系中可以看出,HandlerMapping下属子类可分为两个分支;AbstractHandlerMethodMappingAbstractUrlHandlerMappingAbstractHandlerMapping是实现HandlerMapping接口的一个抽象基类。支持排序,...

2019-09-20 09:58:21 121

转载 锁优化

锁优化的思路和方法总结一下,有以下几种。减少锁持有时间减小锁粒度锁分离锁粗化锁消除1.1减少锁持有时间public synchronized void syncMethod(){ othercode1(); mutextMethod(); othercode2(); }像上述代码这样,在进入方法前就要得到锁,其他线程就要在外面等待。这里优化的...

2019-09-20 09:32:54 94

原创 数据库事务的操作

数据库事务的操作1.1 查看事务隔离级别SHOW VARIABLES LIKE 'tx_isolation';查看全局的事务隔离级别SHOW GLOBAL VARIABLES LIKE 'tx_isolation';使用系统变量查询SELECT @@global.tx_isolation; SELECT @@session.tx_isolation; SELECT @@tx_iso...

2019-09-20 09:22:15 1718

原创 分布式事务

Java 事务编程接口(JTA: Java Transaction API)和 Java 事务服务 (JTS; Java TransactionService) 为 J2EE 平台提供了分布式事务服务。分布式事务(Distributed Transaction)包括事务管理器(Transaction Manager)和一个或多个支持 XA 协议的资源管理器 ( ResourceManager ...

2019-09-20 09:20:54 85

原创 微服务十二要素

微服务十二要素一、简介软件通常会作为一种服务来交付,它们被称为网络应用程序,或“软件即服务”(SaaS)。“十二要素应用程序”(12-Factor App)为构建如下的SaaS应用提供了方法论:使用标准化流程自动配置,从而使新的开发者花费最少的学习成本加入这个项目; 和操作系统之间尽可能的划清界限,在各个系统中提供最大的可移植性; 适合部署在现代的云计算平台,从而在服务器和系统管理方面节...

2019-09-20 09:13:57 936

原创 什么是枚举

理解枚举类型枚举类型是Java 5中新增特性的一部分,它是一种特殊的数据类型,之所以特殊是因为它既是一种类(class)类型却又比类类型多了些特殊的约束,但是这些约束的存在也造就了枚举类型的简洁性、安全性以及便捷性。下面先来看看什么是枚举?如何定义枚举?枚举的定义:回忆一下下面的程序,这是在没有枚举类型时定义常量常见的方式public class DayDemo { public...

2019-09-19 19:42:21 738

原创 云计算三种模型

通常有三种云服务模型:SaaS(软件即服务),PaaS(平台即服务)和IaaS(基础架构即服务)。 每个都有自己的好处和差异。为了您的组织能作出最佳选择,您有必要了解SaaS,PaaS和IaaS之间的差异。SaaS: 软件即服务软件即服务(也称为云应用程序服务)代表了云市场中企业最常用的选项。 SaaS利用互联网向其用户提供应用程序,这些应用程序由第三方供应商管理。 大多数SaaS应用程序直接...

2019-09-09 21:42:19 8379 2

原创 控制台输出如图所示倒序99乘法表

package chengfabiao;/**@ClassName: ChengFa@Description: TODO(这里用一句话描述这个类的作用)@author ccq@date 2019年5月24日*/public class ChengFa {public static void main(String [] args){System.out.print ("-...

2019-05-24 14:59:19 1457

原创 三步安装Windows10 Microsoft Store及其他自带应用

第一步,打开Windows Powershell。首先,快捷键【Win+S】打开搜索,输入Windows Powershell,找到Windows Powershell,然后用【右键】单击并选择【以管理员身份运行】。第二步,查看Windows应用商店安装包位置。在打开的Windows Powershell命令行中输入代码:Get-AppxPackage -allusers | Select...

2019-04-01 08:58:07 15594 1

转载 文艺小清新句子?

日日重复同样的事 遵循着与昨日相同的惯例 若能避开猛烈的狂喜 自然也不会有悲伤来袭我再也没有像那天一样 怀有满格的耐心与焦灼 去矛盾地等过一个人 后来所见的人 每一面都顺水推舟 稀松平常 所以再也体会不到 溺水之人被捞上岸 呼吸到第一口空气时的 那种存活感 幸与不幸 都是你如果我喜欢你 我会主动往你的方向走几步再走几步 如果你看见我走过来了却没有要迎接我的意思 那我就会停下来了 世界上有很多...

2019-03-21 20:39:38 7693

原创 用数组解决买买买,输入金额,输入若干商品价格,买尽可能多的种类商品

小明的女朋友最喜欢在网上买东西,可是钱包里的钞票有限,不能想买啥就买啥。面对琳琅满目的物品,她想买尽可能多的种类,每种只买一件,同时价格不能超过上限。于是 她请小明写程序帮她找出应该买哪些物品,并算出这些物品的总价格package maimai;import java.util.Arrays;import java.util.Scanner;public class By {public...

2019-03-21 17:00:18 1041

原创 抽象类和接口

1.1 为什么使用抽象类有些类创建对象没有意义。需要把这个定义为抽象类1 Animal animal=new Animal();2 Pet pet=new Pet()抽象类(abstract)不能实例化,只能被继承。1.2 abstract 关键字关键字:abstract:抽象可以修饰方法:叫做抽象方法,没有方法体,需要使用分号表示声明结束可以修饰类:叫做抽象类,抽象方法所在的类必...

2019-03-21 16:51:26 175

原创 Object类、多态

Object类类Object是类层次结构的根类。每个类都使用Object作为超类。1.1 equals()方法指示其他某个对象是否与此对象“相等”。 String s1 = new String("abc"); String s2 = new String("abc"); System.out.println(s1==s2);//new表示在堆中开辟新的空间存储数据,双等号比较的是ne...

2019-03-20 16:20:48 267

原创 封装与继承

第一节:方法的参数传递Java语言在给被调用方法的参数赋值时,采用传值的方式:基本类型数据传递的是该数据的值本身。-- 值传递引用类型数据传递的也是这个变量的值本身,即对象的引用,而非对象本身。 --引用传递1.1基本数据类型传递public class PassValue{public void change(int x){x = 100;System.out.println(“...

2019-03-19 17:13:07 1148 2

原创 百元百鸡问题

/**百元百鸡问题:公鸡5元一只,母鸡3元一只,3只小鸡1元,如果用100元钱,买100只鸡,不佘不欠,可以买公鸡,母鸡,小鸡,各多少只。5x + 3y + z/3 = 100x + y + z = 100 z= 100 -x -y5x+3y+(100-x-y)/3=10015x + 9y + 100 -x -y =30014x + 8y = 2007x + 4y = 1...

2019-03-19 14:40:54 717

原创 求数组中第二大值的下标

import java.util.Arrays;public class Exam01 {public static void main(String[] args) {int[] arr = { 35, 26, 32, 1, 99, 5, 1, 66, 36, 58 };int[] arr2 = Arrays.copyOf(arr, arr.length);Arrays.sort(ar...

2019-03-18 20:54:24 1261

原创 面向对象

面向对象的设计思想1.1 什么是面向对象一种看待问题的思维方式,着眼于找到一个具有特殊功能的具体个体,然后委托这个个体去做某件事情,我们把这个个体就叫做对象是一种更符合人类思考习惯的思想【懒人思想】,可以将复杂的事情简单化,将程序员从执行者转换成了指挥者使用面向对象进行开发,先要去找具有所需功能的对象来用,如果该对象不存在,那么创建一个具有所需功能的对象1.2 面向过程一种看待问题的...

2019-03-14 16:56:49 136

原创 Arrays工具类、二维数组

Arrays工具类、二维数组1.Arrays工具类2.可变参数3.二维数组1.1 二维数组的概念1.2 二维数组的定义1.3 数组的初始化1.4 二维数组的访问第一节 Arrays工具类作用:主要用于对数组进行排序,查找,填充,比较等的操作Arrays工具类存在于java.util包下,所以使用的第一步就是导包:import java.util.Arrays;注意1:如果在...

2019-03-13 18:53:43 495

原创 戴尔15pr-2648b true color下载方法

true color 该软件的使用跟显卡驱动有版本的要求,根据目前您描述的情况,建议您先下载戴尔官网提供的集显驱动驱动下载链接:https://downloads.dell.com/FOLDER04897472M/1/Intel-HD-Graphics-510-515-520-530-540-Driver_J5PT2_WIN_23.20.16.4973_A14.EXE然后再重新安装下true...

2019-03-12 19:32:12 4109

原创 java简易计算器实例

import java.util.Scanner;/**计算器的编程@author Administrator 1、输入一个数字 2、输入另一个数字 3、请输入您要进行的操作:1代表+ 2代表 - 3代表* 4代表/ 4、根据用户的输入进行判断,然后执行加或者减... ctrl + shift + f 格式化代码 将代码变整齐*/pub...

2019-03-11 20:27:29 780

原创 java中的方法

第一节:方法1.1 什么是方法Java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段1.2 为什么要声明方法DRY(Don’t Repeat Yourself)原则,把能被复用的逻辑抽取出来实现相对独立的逻辑实现比较复杂的逻辑可以对具体实现进行隐藏/封装1.3 方法的作用简化代码,提高代码的可读性,提高代码的可维护性。1.4 方法的声明格式语法:访问权限修饰符...

2019-03-11 13:30:03 239

原创 选择语句

分支语句1.三种程序基本结构2.if语句3.switch语句第一节:程序基本结构顺序结构选择结构循环结构1.1 顺序结构程序从上到下一行一行的执行代码,没有判断和中转。1.2 选择结构有选择性的执行或者跳过指定代码1.3 循环结构重复执行一段代码,直到条件不成立Java的选择结构使用选择语句来实现:1 if语句2 switch语句第二节:if语句...

2019-03-09 09:11:56 4699

原创 循环语句

1.1 什么是循环循环就是在循环条件满足的情况下,反复执行特定代码。1.2 为什么要使用循环当我们要打印100次helloworld或者我们想实现1-10的和1+2+3+4+5....int sum = 0;sum = sum + 1;sum = sum + 2;sum = sum + 3;sum = sum + 4;sum = sum + 5; 可以发现有一些是相同的内...

2019-03-09 09:08:02 353 1

原创 eclipse操作小技巧

**1、提示 :Alt+/2、格式化:ctrl+shift+f3、自动导包:ctrl+shift+O4、输入一对的符号,如”",(),会自动补全,输入后跳出:tab5、查找某个方法被谁调用:选中方法名,ctrl+shift+g6、查看某个类的继承关系:选中该类,ctrl+t7、通过文件名称查找类或文件:ctrl+shift+r8、alt+上/下,移动当前行到上或下9、ctrl+a...

2019-03-08 10:25:34 210

原创 Java起名规则与建议

2019-03-08 08:41:31 1393

原创 java关键字

我不是做广告的,而是被千峰的教学管理模式而吸引。希望我以后能学有所成,找到满意的工作。你中意的又是哪家呢?在下面附了Java关键字,希望对你们有所帮助!...

2019-03-07 20:00:34 543

原创 Java与HTML5

这两个学哪个比较好?论长远发展!但见成效哪个快?

2019-03-07 19:48:55 1538

原创 java八种基本数据类型

1)四种整数类型(byte、short、int、long): byte:8 位,用于表示最小数据单位,如文件中数据,-128~127 short:16 位,很少用,-32768 ~ 32767 int:32 位、最常用,-231-1~231 (21 亿) long:64 位、次常用 注意事项: int i=5; // 5 叫直接量(或字面量),即 直接写出的常...

2019-03-06 19:20:15 269

原创 javaweb常识类英语

browser ['braʊzə]n. [计] 浏览器;吃嫩叶的动物;浏览书本的人web [web]n. 网;卷筒纸;蹼;织物;圈套;vt. 用网缠住;使中圈套;vi. 形成网hypertext ['haɪpətekst]n. [计] 超文本(含有指向其它文本文件链接的文本)markup ['mɑːkʌp]n. 标记language ['læŋgwɪdʒ]...

2019-03-06 19:14:43 540

原创 JavaSE常识类英语

binder ['baɪndɚ]n. [胶粘] 粘合剂;活页夹;装订工;捆缚者;绑定external [ɪk’stɜːn(ə)l; ek-]adj. 外部的;表面的;[药] 外用的;外国的;外面的;n. 外部;外观;外面perform [pɚ’fɔrm]vt. 执行;完成;演奏;vi. 执行,机器运转;表演activate ['æktə’vet]vt. 刺激;使活动;使活泼...

2019-03-06 19:13:10 446

原创 初学java入门

// class 表示类的意思,是一个关键字// ABC表示的是类名// public class 类名必须于文件名保持一致// 一个java文件,可以有多个类,但是public修饰的类只能有一个,并且名字必须和文件名保持一致// main方法是一个类执行的入口,代码从main方法的第一行开始执行/*我就是多行注释,oh yeah!ABC,主要用于上传文件Author: ccq...

2019-03-06 19:07:44 130

原创 it与heollo world!

学it必经之路 :hello world! 这就是致敬经典!

2019-03-06 18:58:16 133

空空如也

空空如也

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

TA关注的人

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