自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 资源 (6)
  • 收藏
  • 关注

原创 设计模式 - 适配器模式

1. 定义将一个类的接口,转换成为客户期望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以合作无间,我们称之为适配器模式。2. 应用场景解决那些不兼容,不匹配的情况3. 适配器分类3.1 对象适配器3.2 类适配器

2016-10-02 13:43:52 416

原创 设计模式 - 单例模式

1. 定义:单例模式:核心结构中只包含一个被称为单例的特殊类2.使用场景:我们在程序开发的时候,有些情况我们只需要程序一个对象,且必须是一个对象去完成一项任务时就应该使用单例模式3. 具体应用:常见的单例模式分为懒汉模式、饿汉模式。3.1 饿汉模式package com.dcz.singleton;/** * 单例模式 - 饿汉模式 *

2016-10-01 22:22:31 400

原创 JVM内存分析工具MAT使用

1. 首先去官网下载MAT软件,路径如下:点击打开链接2. 将heap dump文件打开即可分析。

2016-09-16 22:32:27 646

原创 JVM内存监控工具 JavaMelody

这是一个需要web部署的工具,需要在容器中部署,然后将要监控的程序添加到该程序中即可。JavaMelody是java应用的监控工具,安装部署步骤如下:1. 首先先下载javamelody.jar 和 jrobin-x.jar 拷贝到webapp中对应待监控应用的WEB-INF/lib目录下。2. 将javamelody-1.49.0.war放到webapps下。3. 修改要

2016-09-07 23:39:42 825

原创 JVM内存监控工具 Jvisualvm

这个工具是官方提供的,直接在JDK工具包下的bin目录找找就可以找到,或者打开cmd直接输入"jvisualvm"即可打开该工具(配置好java环境变量)。打开之后运行时如下图所示:

2016-09-07 22:51:57 556

原创 JVM内存模型和关键参数设置

一. JVM内存模型:二. Jvm关键参数:

2016-09-06 22:34:13 573

原创 Http协议基础

1      简介超文本传输协议2      特点传输明文内容,安全性比较差无状态协议应用层协议,标准化协议版本1.13      分析工具HttpWatchFiddler4      HTTP请求GET请求该请求是由Request-URI

2015-10-03 18:24:37 1495

原创 Java多线程文件下载

一. 多线程下载文件考虑处理步骤:1. 如何获取文件的长度2. 合理的创建线程数量,并计算每一个线程下载的长度3. 如何将多个线程下载的字节写入到文件中二. 代码实现如下:package com.bochao.download;import java.io.IOException;import java.io.InputStream;import java.io.Ran

2015-09-30 16:10:06 1252

转载 Java多线程基础知识(六)

一. Java中的线程池线程池的作用:1. 降低资源消耗2. 提高响应速度3. 提高线程的可管理性线程池处理流程:1. 线程池判断核心线程池线程是否都在执行任务,如果不是,则创建一个新的工作线程来执行任务,如果核心线程池线程都在执行任务,则进入下一个流程。2. 线程池判断工作队列是否已经满。如果工作队列未满,则将提交的任务存储在这个工作队列里,如果工作队列满了,则进

2015-09-28 01:17:30 516

转载 Java多线程基础知识(五)

一. Java中的13个原子操作类在Jdk1.5中,这个包中的原子操作类提供了一种用法简单,性能高效,线程安全的更新一个变量的方式。1. 原子更新基本类型类AtomicBoolean : 原子更新布尔类型AtomicInteger : 原子更新整型AtomicLong : 原子更新长整型2. 原子更新数组AtomicIntegerArray: 原子更新整型数组里的元素

2015-09-27 15:53:43 430

转载 Java多线程基础知识(四)

一. Condition 接口1. Condition接口也提供了类似Object的监视器方法,与Lock配合可以实现等待/通知模式。 但是这两者在使用方式以及功能特性上还是有差别的。 2. 支持多个等待队列个数 3. 支持当前线程施放锁并进入等待状态 4. 支持当前线程施放锁并进入等待状态,在等待状态中不响应中断 5. 支持当前线程施放锁并进入超时等待状态 6. 支持

2015-09-24 22:30:23 457

转载 Java多线程基础知识(三)

一. 管道输入/输出流它和其它文件输入/输出流或网络输入/输出流的不同之处,它主要是线程之间的数据传输,而传输的媒介是内存。管道输入/输出流主要包含四中实现:1. PipedOutputStream, PipedInputStream 面向字节2. PipedWriter, PipedReader 面向字符对于Piped类型的流,必须向要进行绑定,需要调用connect()方法

2015-09-20 23:14:14 391

转载 Java多线程基础知识(二)

一. Java线程具有6种状态 NEW初始状态,线程被创建,但是还没有调用start方法。RUNNABLE运行状态,java线程将操作系统中的就绪和运行两种状态笼统的称作进行中。BLOCKED阻塞状态,表示线程阻塞于锁。WAITING等待状态,表示线程进入等待状态,进入该状态表示当前线程需要等待其他线程做出一些其它动作

2015-09-19 22:13:24 448

转载 JAVA多线程基础知识(一)

一. 基础知识要了解多线程首先要知道一些必要的概念,如进程,线程等等。开发多线程的程序有利于充分的利用系统资源(CPU资源),使你的程序执行的更快,响应更及时。1. 进程,一般是指程序或者任务的执行过程(是动态执行的)。2. 线程,一个线程包含多个线程(例如你打开一个word文档这就是一个进程。word里面的写入,拼写检查等等就是一个一个的线程)。3. 进程包含线程,线程共享进程的

2015-09-08 23:27:02 521

原创 Java Io 对象序列化和反序列化

Java 支持将任何对象进行序列化操作,序列化后的对象文件便可通过流进行网络传输。1.      对象序列化就是将对象转换成字节序列,反之叫对象的反序列化2.      序列化流ObjectOutputStream3.      反序列化流 OjbectInputStream4.      序列化的对象必须实现一个接口 Serializable写一个将Users对象序列化和

2015-09-07 23:13:42 460

原创 Java Io 字符流

Java Io 字符流包含:1. InputStreamReader  它是由byte流解析为char流,并且按照给定的编码解析。2. OutputStreamWrite  它是char流到byte流的转换,并且按照给定的编码处理。事例代码如下:package com.dcz.io;import java.io.File;import java.io.FileInputStr

2015-09-07 21:57:28 408

原创 数据库索引知识

1      索引概念1.1  定义索引是对数据库管理系统中一列或多列的值排序数据结构。更容易理解的比喻是它好比一本书前面的目录。2      技术原理要完全理解索引原理需要了解大量知识,这包括B树,堆,数据库页,分区,填充因子,碎片,文件组等等,这些知识结构体庞大,本方案不深入讨论。其简单来说就是在数据库创建一列或多列索引,实际上是数据库管理系统在该列数据值上创建了优化的排序数据

2015-09-07 17:18:18 505

原创 Spring 事务知识

1.1  Spring注解的各种行为  事物传播注解:@Transactional(propagation=Propagation.REQUIRED)(常用)如果有事务, 那么加入事务, 没有的话新建一个(默认情况下) @Transactional(propagation=Propagation.NOT_SUPPORTED) (常用)容器不为这个方法开启事务 @

2015-09-07 17:14:07 360

原创 Java设计模式 之 命令模式

1      从属模式分类行为性模式2      命令模式意图命令模式可将动作的请求者和动作的执行者对象中解耦。该模式将一个行为操作发起者的请求封装到对象中,该请求由另外一个对象执行。将动作封装成命令对象,这样一来就可以随心所欲的储存、传递、调用。做多件事,有多种做法。3      命令模式结构4      命令模式代码实现这里假设有一个需要编程实现功能

2015-09-07 17:00:37 414

原创 MongoDB 基础知识

一. 基础知识1. MongoDB是一个文档型的数据库,文档就是一个键值对的有序集合。例如这样:{"greeting":"hello world"}2. MongoDB不但区分类型,而且还区分大小写。{"foo":3} {"foo":"3"}       {"foo":3}{"Foo":3}  这两对是绝对不一样的。3.MongoDB的集合组成一组文档,如果将文档比喻成一个关系

2015-09-07 16:05:45 503

原创 Java Io 之拷贝文件性能比较

前面我们共讨论了拷贝文件有三种方式:1. 第一种,一个字节一个字节的进行拷贝文件操作。2. 第二种,使用字节数据批量的进行拷贝文件操作。3. 第三种,使用带缓冲输入输出流来拷贝文件。那么哪一种性能比较优越呢,也就是耗时时间比较短。测试如下:package com.dcz.io;import java.io.BufferedInputStream;import java.i

2015-09-06 22:52:44 723

原创 JAVA Io 缓冲输入输出流

java中提供带缓冲的输入输出流。在打开文件进行写入或读取操作时,都会加上缓冲,提高了IO读写性能。1. BufferedInputStream 缓冲输入流2. BufferedOutputStream 缓冲输出流使用带缓冲的输入输出流写一个拷贝文件的操作。package com.dcz.io;import java.io.BufferedInputStream;import

2015-09-06 21:52:32 626

原创 Java Io(数据输入输出流)

Java Io 字节流中的DataInputStream 和 DataOutputStream,使用流更加方便,是流的一个扩展,更方便读取int, long,字符等类型数据。事例代码如下:package com.dcz.io;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.F

2015-09-06 21:26:51 477

原创 Java Io 流(输入输出流)

IO流,也就是输入和输出流,可分为字节流和字符流。1. 字节流(1). InputStream 输入流,用于读取文件输入流常用API:inputStream.read()  读取一个字节inputStream.read(byte[] buffer) 读取数据填充字节数组inputStream.read(byte[] buffer, int start, int si

2015-09-05 22:22:53 702

原创 Java File 常用操作回顾

最近项目中要用到File这个类,温故而知新,回过头来回顾下这个File类,File类主要是对磁盘目录,文件进行操作的Api,具体其实查JDK api 的File全能获取到。下面写一些文件目录的基本操作练习一下:1. 列出一个给定目录下的所有目录及文件 /** * 列出指定目录下(子目录)所有文件 * @param dir * @throws Exception */

2015-09-05 18:47:50 497

原创 Java Io 之 编码

Java字符串编码一些知识总结:package com.dcz.io;import java.io.UnsupportedEncodingException;public class EncodeDemo { public static void main(String[] args) throws UnsupportedEncodingException { Stri

2015-09-05 18:16:06 439

原创 Java设计模式 之 代理模式

所谓的代理模式就是为其它类或对象提供一个代理以控制对这个对象的访问。那么常见的代理有远程代理,虚拟代理,保护代理,智能代理。实现代理的有两种方式1. 静态代理:就是代理和被代理的对象在代理之前是确定的,他们可以通过继承抽象类或者实现相同的接口来实现。下面使用代理模式来模拟实现我一天的生活。. 首先先通过继承方式来实现代理模式, 创建被代理的接口和实现类package

2015-09-05 01:03:02 627

原创 Java设计模式 之 工厂方法模式

1. 使用设计模式的好处:可提高代码的重复性,让代码更容易被他人理解,保证代码的可靠性。2. 工厂模式定义:就是创建一个工厂类来创建你需要的类,工厂模式包括工厂模式和抽象工厂模式,抽象工厂模式是工厂模式的扩展。3. 工厂模式意图:定义一个接口来创建对象,但是让子类来决定哪些类需要被实例化,工厂方法把实例化工作推迟到子类中去实现。4. 工厂方法适合场景: .

2015-08-29 22:31:48 532

原创 MongoDB的安全(五)

MongoDB用户管理操作:MongoDB开启权限认证的方式有两种一种是auth形式,一种是keyfile形式MongoDB创建用户:1. 创建用户语法:在MongoDB2.6版本之后使用createUser()形式。语法格式:{ user:"",pwd:"",customData:{},roles:[{role:"", db:""}]}2. 角

2015-08-29 21:39:37 529

原创 MongoDB的索引(四)

创建索引的好处是可以加快查询速度,但是但来的负面影响就是磁盘的开销和降低写入性嫩。查看评判当前索引构建情况方法:1. 使用mongostat工具: 查看mongodb运行状态的程序使用格式:mongostat -h 127.0.0.1:123452. profile集合使用db.getProfilingStatus()  查看当前的profile的设置> d

2015-08-27 23:32:23 498

原创 MongoDB的索引(三)

MongoDB的索引:1. _id索引该索引是大多数集合默认创建的索引,也就是说用户每插入一个数据,MongoDB会自动生成一条唯一的_id字段。2. 单键索引单键索引是最普通的索引,它不会自动创建,需要手动创建。例如:dm.bochao_collection.ensureIndex({name:"zhangsan"})创建了一个name=zhangsan的索引

2015-08-24 01:26:41 573

原创 PowerDesigner的使用(一)

一. PowerDesigner 功能1. 需求管理:记录需求,分析设计模型2. 生成文档:生成HTML格式文档,方便沟通。3. 影响度分析:模型之间连接起来,同步修改功能。4. 数据映射:提供拖放方式的可视化映射工具,可生成持久化代码ETL(数据仓库技术:源数据抽取、转换、加载)文件5. 多数据库支持:可支持大多数常用数据库。6. 可自定义:对于使用上来说,可自定

2015-08-23 23:08:36 524

原创 MongoDB的基本使用(二)

上一个文档说明了如何搭建一个Windows端MongoDB服务器,下面将简单介绍MongoDB的基本操作命令。1. show dbs : 显示所有数据库2. use bochao : 使用bochao作为名称的数据库,其实这个数据库还没有创建,Mongodb会在何时的时候创建它。3. show collections : 显示对应数据库下所有集合4. db.bochao.colle

2015-08-23 18:32:22 485

原创 Windows上安装使用MongoDB(一)

首先下载MongoDB的Windows版本,从如下地址: https://www.mongodb.org/downloads、我下载的msi版本,下载后安装即可,如我安装的盘符是:C:\Program Files\MongoDB\Server\3.0然后在该盘符下创建一个data文件夹,在data里面分别创建两个文件夹:db和log,在log中创建一个MongoDB.log文件。为

2015-08-23 17:30:02 455

原创 Maven编译项目报错:某些类找不到符号

遇到Maven在编译项目源码时候出现找不到符号错误,主要归结为以下几个问题: 1. 可能项目编码格式不统一。 2. 可能项目编码使用的JDK版本不统一。 项目可能是当前项目也可能是继承的父项目,还有可能是聚合的项目,总之就是使用Maven之后要做到统一。

2015-08-23 16:15:31 6581

原创 Maven生命周期和插件机制

Maven中的一个非常重要的概念是生命周期和插件,这篇文章重点介绍下Maven的生命周期。Maven的生命周期是抽象的,具体的功能是有具体的插件来完成的,Maven有相当多的功能插件,以至于Maven在项目管理上无所不能。Maven从大量的项目构件工具中学习和反思,总结出一套高度完善、易于扩展的生命周期,这个生命周期包含项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生

2015-08-06 23:06:55 522

原创 Maven的依赖范围

Maven的依赖构件包含一个依赖范围属性,这个属性描述的是三套classpath的控制,即编译、测试、运行。举个例子Junit依赖只是在测试范围(classpath)使用,而在运行的时候不使用,还有Servlet api在编译的时候使用,在运行部署的时候不使用,因为大部分容器都已经提供该依赖支持。 junit junit 3.8.1

2015-08-05 23:38:08 558

原创 MS Project 使用之创建项目信息

1. 我们打开MS Project 2013,创建一个空白文档。  2. 切换“项目”选项卡,点击“项目信息”,设置项目开始时间等信息,项目一般是需要设置开始时间和使用日历的,下面我们分别进行设置如,我们将项目的开始日期调整为2015年1月1日,点击“确定”即可设置项目开始日期。  3. 接下来可以设置项目使用的日历,这个日历的作用就是,打个比方有的公司是周六工

2015-08-05 22:30:15 1648

原创 JAVA设计模式 之 观察者模式(JDK内置实现)

简介:使用JAVA内置的观察者模式

2014-05-17 19:27:21 3434

原创 JAVA设计模式 之 观察者模式

观察者模式定义了一个一对多依赖,这样一来,当一个对象发生

2014-05-14 22:14:33 866

js图标控件,效果很酷

js图标控件,效果很酷,去看看吧!开源免费

2010-04-14

一组整理好的网页小图标。做系统按钮用不错!献上

一组整理好的网页小图标。做系统按钮用不错!献上

2010-04-14

php后台程序

一个很不错的php后台,本人自己写的,出学者一个很不错的参考!

2007-12-29

c#知识类库

很不错呀,很大家下在下来学习学习

2007-12-29

thank in java

一个很好的thank in java

2007-12-29

c#制作记事本

用c#写的一个记事本vs2005制作·

2007-12-28

空空如也

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

TA关注的人

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