自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (3)
  • 收藏
  • 关注

原创 linux下vim三种模式和详细操作指令

1 vim1.1 vim三种模式1.1.1 命令模式(默认进入的模式)在该模式下是不能对文件进行直接编辑,可以输入快捷键进行一些操作(删除行,复制行,移动过光标,粘贴等等)vim +10 /etc/passwd:打开指定文件, 并且将光标移动到指定行vim +/depu /etc/passwd: 打开指定文件, 并且将关键字高亮shift+6或^: 移动到光标当前行的行首shift...

2020-04-07 21:16:12 435

原创 LIUNX目录结构和常用命令

LIUNX目录结构和常用命令文章都是基于centOSlinux中,一切皆是文件,包括进程,磁盘等等…1.1 Linux的系统目录结构bin: 全称binary, 含义是二进制。所以顾名思义放的都是二进制文件,文件都是可以被运行的dev: 主要存放的是外接设备,例如u盘,光盘。在其中的外接设备是不能直接使用的,需要挂载(类似windows下的分配盘符, windows会新建了一个盘符)...

2020-04-06 11:08:35 222

原创 RabbitMQ进阶, exchange的四种类型

交换器类型RabbitMQ 常用的交换器类型有 fanout 、 direct、 topic 、 headers 这四种 。 AMQP 协议里还提到另外两种类型: System 和自定义,这里不予描述。对于这四种类型下面一一阐述。fanout:它会把所有发送到该交换器的消息路由到所有与该交换器绑定的队列中。direct:它会把消息路由到那些BindingKey和RoutingKey完全...

2019-09-24 22:34:37 301

原创 RabbitMQ概念

1.RabbitMQ 入门概念介绍:RabbitMQ 整体上是一个生产者与消费者模型,主要负责接收、存储和转发消息。Producer:生产者,就是投递消息的 一方。生产者创建消息,然后发布到 RabbitMQ 中。消息 一般可以包含 2 个部分:消息体和标签(Label) 。消息体 也可以称之为 payload ,在实际应用中,消 息体 一 般是一个带有业务逻辑结构的数据,比如一个 ...

2019-09-20 17:37:03 155

原创 PROXY(代理)—对象结构型模式

代理模式【proxy】什么是代理模式为其他对象提供一种代理以控制对这个对象的访问。能够协调调用者和被调用者,在一定程度上降低了系统的耦合度。什么场景会用到代理模式在某些情况下,一个对象不合适或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。...

2019-09-17 09:50:32 246 1

原创 FACTORY METHOD(工厂方法)—对象创建型模式

工厂方法【factory method】什么是工厂方法定义一个用于创建对象的接口,让子类决定实例化哪一个类。 Factory Method使一个类的实例化延迟到其子类。别名政策(Virtual Constructor)...

2019-08-22 10:27:02 174

原创 DECORATOR(装饰)—对象结构型模式

装饰模式什么是装饰模式动态地给一个对象添加额外的职责,就增加功能来说,装饰模式比生成子类更加灵活。别名,包装器Wrapper什么场景会用到装饰模式有时我们希望给某个对象而不是整个类添加一些功能。例如,一个图形用户界面工具箱允许你对任意一个用户界面组件添加一些特性,例如边框,或是一些行为,例如窗口滚动。使用继承机制是添加功能的一种有效途径,从其他类继承过来的边框特性可以被多个子...

2019-07-24 17:26:28 136

原创 OBSERVER(观察者) —对象行为型模式

观察者模式什么是观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己.别名依赖(Dependents), 发布-订阅( publish - subscribe)什么场景会用到命令模式一个对象的改变需要同时改变其它对象的时候,而且不知道具体有多少个对象有待改变时。想想以前的报纸订阅,如果...

2019-07-16 12:37:37 225

原创 STRATEGY(策略) —对象行为型模式

策略模式【strategy】什么是策略模式定义一系列的算法 ,把它们一个个封装起来 , 并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。别名政策(Policy)什么场景会用到命令模式这个模式比较好理解,它充分的利用了抽象和多态,策略模式是一种定义了一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种...

2019-07-15 18:38:11 143

原创 COMMAND(命令)—对象行为型模式

命令模式【command】什么是命令模式将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。稍后我会以代码加文字的形式给大家解释清楚。别名(动作( Action ),事务(Transation ))什么场景会用到命令模式我们模拟一下这个场景。用户去一个餐厅,可以点菜,并且可以取消之前点过的菜,原型图如下:流程如下,用户下达...

2019-07-14 09:10:34 390

原创 STATE(状态)—对象行为型模式

状态模式【state】什么是状态模式允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。一般很难去理解,稍后我会以代码加文字的形式给大家解释清楚。什么场景会用到状态模式因为这个模式里面我看了很多网上的方法都拿电梯来举例,我觉得也很合理,因为电梯每个不同的状态都可能有存在多种处理(状态模式不仅仅只会像工作流一样一级一级地往下走,还有可能跳级去处理),比如,电梯在运...

2019-07-13 12:30:59 356

原创 BRIDGE(桥接)—对象结构型模式

桥接模式【bridge】什么是桥接模式将抽象部分于它的实现部分分离,使它们都可以独立地变化,这个摘自<设计模式>的解释,一般很难去理解,稍后我会以代码加文字的形式给大家解释清楚。什么场景会用到桥接模式现在给大家一个场景,比如现在要做这样一个功能,需求上描述,分别开发多个软件应用,同时需要适应不同的手机型号,再详细一点,比如,现在开发了一款购物app和阅读app,需要兼容...

2019-07-12 21:54:25 181

原创 使用PMD分析来代码

PMD是源代码分析器。它能找到常见的编程缺陷,如未使用的变量,空的catch块,不必要的对象创建等等。它支持Java,JavaScript,Salesforce.com Apex和Visualforce,PLSQL,Apache Velocity,XML,XSL。此外,它还可以检查重复和冲突的代码。支持多种语言,可以在Java,C,C ++,C#,Groovy,PHP,Ruby,Fortran...

2018-10-23 09:48:33 962

原创 【Mastering JBoss Drools 6】笔记 基本操作

Drools最基本最常用的有以下四种布尔运算与数值运算规则rule "Add 5% discount for minors or seniors" when $o: Order(customer.age &lt; 18 || customer.age &gt; 60) then $o.increaseDiscount(0.05);end基于集合的规则(conta...

2018-10-12 15:04:45 303

原创 【Mastering JBoss Drools 6】笔记 基本属性

Drools Runtime主要介绍Drools的组件是如何工作的,它们各个组件的职责,和他们的配置,本章重点介绍如下:•    了解Drools是怎么运行的•    常用的配置•    使用KieScanner加载动态的规则变化为了生成规则引擎的新实例,我们需要理解一下概念•     KieServices•     KieContainer•     KieModule...

2018-10-10 15:20:56 234

原创 【Java多线程编程核心技术】第一章(多线程技能 线程的优先级)

1.8 线程的优先级 在操作系统中,线程可以划分优先级,优先级较高的线程得到的cpu的资源较多,也就是cpu优先执行优先级较高的线程对象中的任务. 在Java中,线程优先级分为1~10个等级,如果小于1大于10,则JDK抛出异常,源码如下: public final void setPriority(int newPriority) { ThreadGroup g...

2018-10-08 17:04:26 185 2

原创 【Java多线程编程核心技术】第一章(多线程技能suspend,resume,yield)

1.8 暂停线程     在多线程中,suspend是暂停线程,resume是恢复线程的执行. 1.8.1suspend方法和resume方法的使用public class MyThread extends Thread { private long i = 0L; public long getI() { return i; } pu...

2018-10-08 15:14:20 179

转载 SpringCloud入门,搭框架,最简单,循序渐进的例子

https://blog.csdn.net/forezp/article/details/70148833/

2018-09-29 15:19:20 271

原创 【Java多线程编程核心技术】第一章(多线程技能)

1.7 停止线程   停止线程是在多线程开发时很重要的技术点.掌握此技术可以对线程的停止进行有效的处理.   停止一个线程可以使用Thread.stop()方法,但是最好不要使用它.这个方法是不安全的.大多数停止一个线程的操作是使用Thread.interrupt().1.7.1 停止不了的线程   调用interrupt()方法仅仅是在当前线程中打了一个停止的标记,并不是真的停止...

2018-09-26 14:36:59 98

原创 【Java多线程编程核心技术】第一章(多线程技能 currentThread, isAlive,sleep,getId)

Thread类的核心方法较多,读者应该着重掌握如下关键技术点:□线程的启动□如果使线程暂停□如何使线程停止□线程的优先级□线程安全相关的问题1.1 进程与多线程的概念及线程的优点     本节主要介绍在Java语言中使用多线程技术。但是讲到多线程不得不提到进程这个概念:进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度...

2018-09-20 22:52:20 142

原创 【Java程序性能优化 第一版】第四章(并发控制方法)

                                       4.4 并发控制方法    并行程序开发将不可避免地要涉及多线程,多任务间的协作和数据共享等问题。在JDK中,提供了多种途径实现多线程间的并发控制。常用的方法有:内部锁,重入锁,读写锁,信号量等。    4.4.1 Java内存模型与volatie    在Java中,每一个线程有一块工作内存区,其中存放着被...

2018-09-20 21:42:42 172

原创 【Java程序性能优化 第一版】第四章(JDK并发数据结构)

                                        4.3 JDK并发数据结构  由于并行程序与串行程序的不同特点,适用于串行程序的一些数据结构可能无法直接在并发环境下工作,这是因为这些数据结构不是线程安全的。 4.3.1 并发List  Vector或者CopyOnWriteArrayList是两个线程安全的List实现,ArrayList不是线程安全的,...

2018-09-17 16:05:04 147

原创 【Java程序性能优化 第一版】第四章(JDK多任务执行框架)

                               4.2  JDK多任务执行框架   为了给并行程序开发提供更好的支持,Java不仅提供了Thread类,Runnable接口等简单的多线程支持工具,为了改善并发程序的性能,在JDK中还提供了用于多线程管理的线程池。本节将主要讨论线程池及其在Java中的实现与使用。  4.2.1无限制线程的缺陷   多线程的软件设计方法确实可...

2018-09-14 10:36:23 153

原创 【Java程序性能优化 第一版】第四章(不变模式, 生产者-消费者模式)

4.1.4 不变模式   不变模式天生就是多线程友好的,它的核心思想是,一个对象一旦被创建,则它的内部状态将永远不会发生改变。所以,没有一个线程可以修改其内部状态和数据,同时其内部状态也绝不会自行发生改变。基于这个特性,对不变对象的多线程操作将不需要进行同步控制。   △ 注意:不变模式和只读属性是有一定区别的。不变模式比只读属性具有更强的一致性和不变性。对只读属性的对象而言,对象本身不能...

2018-09-13 14:51:58 138

原创 【Java程序性能优化 第一版】第四章(Future, Master-Worker,Guarded Suspension模式)

                                 第4章  并行程序开发与优化   本章主要介绍基于Java的并行程序开发及其优化方法。对于多核CPU,传统的串行程序已经无法很好发挥CPU的性能。此时,就需要通过使用多线程并行的方式挖掘CPU的潜能。本章涉及的主要知识点有:   □常用的多线程设计模式,Future模式,Master-Worker模式,Guarded Sus...

2018-09-11 18:01:20 372

原创 【Java程序性能优化 第一版】第三章

                                    第三章 Java程序优化   本章主要介绍在代码层优化Java应用程序。与设计优化相比,程序级别的优化更具技巧性。高效而精炼的代码,正确的函数使用方法和优良的软件开发习惯也对应用程序的整体性能有着决定性的影响。可以说,代码层次的优化是每个程序员的必修课,它也自始至终贯穿整个软件的编码过程。   本章主要涉及到的知识点有...

2018-09-07 13:58:47 177

原创 【Java程序性能优化 第一版】第二章

                                           第2章     设计优化    本章主要介绍与软件设计相关的性能优化和思想。软件的结构对系统整体性能有这重要的影响。优秀的设计结构可以规避很多潜在的性能问题,对系统性能的影响可能远远大于代码的优化。因此,熟悉一些常用的软件设计模式和方法,对设计高性能软件有着重要的帮助。本章着眼于设计优化,主要讲解了一些常...

2018-09-06 17:43:07 161

原创 【Java程序性能优化 第一版】第一章

1.1 性能概述  1.1.1看懂程序的性能    对客户端程序而言, 拙劣的性能会严重影响用户体验。 界面停顿, 抖动, 响应延迟等问题会遭到用户的抱怨。 一个典型的例子就是Eclipse IDE工具的Full GC时会出现程序假死现象,相信一定被不少开发人员所诟病。对于服务器程序来说, 性能问题则更为重要, 相信不少后台服务器软件都有各自的性能目标。以Web服务器为例,服务器的响应时间...

2018-09-04 16:45:51 127

原创 【codejava】第八版:第五章 继承[001] [20180108]

5.1 类,超类和子类5.1.3 动态绑定    弄清调用对象方法的执行过程十分重要。下面是调用过程的详细描述:    1)编译器查看对象的声明类型和方法名。假设调用x.f(param),且隐式参数x声明为C类的对象。需要注意的是:有可能存在多个名字为f,但参数类型不一样的方法。例如,可能存在方法f(int)和方法f(String)。编译器将会一一列举所有C类中名为f的方法和其超类

2018-01-08 18:50:15 170

原创 【codejava】第八版:第十二章 泛型程序设计[001] [20180106]

12.1 为什么要使用泛型程序设计generic programming意味着编写的代码可以被很多不同类型的对象所重用,例如,我们并不希望为聚集String和File而编写不同的类,实际上也不需要这样做,因为一个ArrayList可以聚集任何类型的对象,这是一个泛型程序设计的实例    java SE 5.0之前 java泛型程序设计是用继承实现的 ArrayList只维护一个Ob

2018-01-06 14:25:05 216

原创 【codejava】第八版:第十四章 多线程[001] [20180105]

14.1 线程的概念    读者可能已经很熟悉操作系统中的多任务(multitasking):在同一刻运行多个程序的能力。例如,在编辑或下载邮件的同时可以打印文件。今天,人们很可能有单台拥有多个CPU的计算机,但是,并发执行的进程数并不是有CPU数目制约的。操作系统将CPU的时间片分配给每一个进程,给人并行处理的感觉。    多线程程序在较低的层次上扩展了多任务的概念:一个程序同时执行

2018-01-05 22:04:51 153

原创 【codejava】第八版:第十三章 集合[002] [20180104]

表13-1 Java库中的具体集合——————————————————————————————————————————————————        集合类型                                                                                                        描述———

2018-01-04 11:15:29 192

原创 【codejava】第八版:第十三章 集合[001] [20180104]

△集合接口                            △算法 △具体的集合*                          △遗留的集合 △集合框架 13.1 集合接口    java最初版本只为最常用的数据结构提供了很少的一组类,Vector,stack,hashtable,Bitset,Enumeration,其中的Enu

2018-01-04 10:11:26 159

原创 【codejava】第八版:第三章 Java基本的程序设计结构[20180103]

3.3 数据类型java 是强类型语言 所以就意味着必须为每一个变量声明一种类型3.3.1整型    java中 整型的范围与运行JAVA代码的机器无关 C和C++需要针对不同的位处理器选择最为有效的整型 否则就有可能造成一个在32位处理器上运行很好的C程序在16位处理器上出现整数溢出  长整型有后缀L 十六进制数值有一个前缀0X 8进制数值有个前缀0 所以八进制比较容

2018-01-03 20:43:11 172

原创 vm安装centOS7同时建立网络连接[20180102]

1vm添加虚拟机2网络模式选择桥接模式3启动后输入ifconfig结果大致如下:[root@MiWiFi-R1CM-srv network-scripts]# ifconfigens33: flags=4163 mtu 1500 inet 192.168.31.126 netmask 255.255.255.0 broadcast 192.168.31.255

2018-01-02 22:02:31 327

原创 openlayers2.13 地图绘点[点可以拖动,并且实时更新后台数据],测距同时更新数据到数据库

上图为最终效果,主要是实现以下几个功能1地图上的坐标拖拽同时更新后台对应的经纬度。2每个坐标的淡入弹出层支持对该坐标其它属性的修改。【手动修改校正】3支持划线测距,将多个坐标之间的距离实时保存到后台。【系统自动校正】,坐标与坐标之间可以不为一条直线,最终保存的是一条直线或者多条直线的距离。  先需要引入openlayers2.13 和下面几个js文件ol2.js

2016-09-07 11:37:52 5701

原创 eclipse 运行spring源码

1首先下载gradle 去官网 去git下载spring的最新源代码2配置gradle的环境变量GRADLE_HOME=d:/software/gradle3.0在path后面加上 ;%GRADLE_HOME%\bin3找到spring源码的根目录运行 gradle eclipse -x :eclipse ,build success后便可以导入eclipse了

2016-08-28 13:57:20 530

原创 Tomcat的启动,停止及重启(windows系统)

首先,BIN目录下存在用于启动和停止Tomcat的参数(在Linux下,所有需要直接调用的脚本均以shell脚本文件的形式提供),而在windows下则是以批处理文件(*.bat)的形式提 供.        执行Tomcat的脚本(都属于bin目录下的文件,都去掉了文件后缀):Catalina:Tomcat的主要脚本,它会执行Java命令以调用tomcat的启动和停止类cpappen

2016-08-28 09:35:18 31346

原创 java复用类

复用代码是java众多引人注目的功能之一,但想要成为极具革命性的语言,仅仅能够复制代码并对之加以改变是不够的,他还必须能够做更多的事情。   复用类在thinking in java中讲解了两种方法,一个是组合,另外一个便是继承.   组合:这种比较直观;只需在新的类中创建现有类的对象,调用该对象的方法。这种方式只是复用了现有程序代码的功能,并非它的形式。          example:cla

2013-03-06 17:44:14 629

原创 java发送手机短信

package com.lee.used;import java.io.IOException;import org.apache.commons.httpclient.Header;import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.HttpExcepti

2013-03-05 11:54:31 863

SpringBoot集成MongoDB

SpringBoot集成MongoDB,附带测试用例,用maven下载依赖后即可以直接使用. 小型的web程序,可以接收请求通过把数据存储进mongoDB, 前提:需要安装MongoDB

2018-09-30

easy ui 中文API CHM格式

easyui 中文API CHM格式 jquery UI

2013-07-12

junit-4.9(java单元测试必备)

最新的junit包,单元测试.java 开发者必备的工具包

2013-06-22

空空如也

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

TA关注的人

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