ZHENGRUI'BLOG

读书、健身、旅行


  • Home

  • Archives

  • About

  • Search

http协议与https

Posted on 2017-04-01 | In 网络协议 | | Visitors
一 HTTP协议HTTP(HyperText Transfer Protocol,超文本传输协议)是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。 HTTP协议的特点 支持客户端/服务器(B/S)模式 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而 ...
Read more »

SQL优化

Posted on 2017-03-30 | In 数据库 | | Visitors
一 概述对于一些大型应用而言,SQL优化一直是重中之重。我们必须想方设法提高SQL执行的性能,否则由于庞大的数据量,它将成为整个系统性能的瓶颈。 二 SQL优化的一般步骤当面对一个有SQL性能问题的数据库时,我们应该明白如何对它进行系统的分析。 通过show status命令了解各种SQL语句的执行频率 定位执行效率较低的SQL语句(通过慢查询日志或show processlist) 通过explain分析低效SQL的执行计划 确定问题并采取相应的优化措施 三 数据库优化数据库的优化 建立索引(B树和hash) 定期分析表和检查表 定期优化表 SQl语句的优化 使用load大批量插入数据 ...
Read more »

SQL基础

Posted on 2017-03-29 | In 数据库 | | Visitors
一 概述SQL是Structure Query Language的缩写,它是关系型数据库的应用语言。有IBM在20世纪70年代开发出来,作为IBM关系数据库原型System R的原型关系语言,实现了关系型数据库的信息检索。1986年,美国国家标准局(ANSI)制定出了SQL标准,目前绝大多数关系型数据库均支持SQL标准。本文的SQL语句是基于mysql的,有些语句在其他数据库上未必适用。 二 SQL语句SQL语句不区分大小写,可以划分为3个类别: DDL语句:数据定义语言。用于定义数据段,数据库,表,列,索引等数据库对象,如create,drop,alter等 DML语句:数据操纵语言。用于 ...
Read more »

设计模式之工厂模式

Posted on 2017-03-28 | In 设计模式 | | Visitors
一 概述工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一,这种类型的设计模式属于创建型模式。工厂模式分为简单工厂模式,工厂方法模式,抽象工厂模式。 二 简单工厂模式简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类 结构简单工厂模式包含如下角色: Factory:工厂角色工厂角色负责实现创建所有实例的内部逻辑 Product: ...
Read more »

设计模式之观察者模式

Posted on 2017-03-28 | In 设计模式 | | Visitors
一 概述观察者模式是对象的行为模式,又叫发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己。 二 结构观察者模式包含如下角色: Subject: 目标 ConcreteSubject: 具体目标 Observer: 观察者 ConcreteObserver: 具体观察者 它的类图如下: 三 代码示例被观察者抽 ...
Read more »

设计模式之单例模式

Posted on 2017-03-28 | In 设计模式 | | Visitors
一 概述单例模式(Singleton Pattern)是最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。如果一个全局的类需要频繁的创建和销毁,为了节省资源,通常将它设计成单例。实现该模式要满足一下几点: 单例类只能有一个实例。 单例类必须自己创建自己的唯一实例。 单例类必须给所有其他对象提供这一实例。 二 单例模式的几种写法正如茴香豆的几种写法,单例模式也有它的多种写法,我们应当根据具体情况选用。 1.懒汉式(线程不安全)这种方式是懒加载,只用调用它时才会被实例化;线程不安全,只能在单线程模式下使用。 1234567891011public clas ...
Read more »

Java虚拟机(一)-- 内存管理

Posted on 2017-03-19 | In Java虚拟机 | | Visitors
一 概述对于从事C和C++程序开发的开发人员来说,在内存管理领域,他们既是拥有最高权力的皇帝,又是从事最基础工作的劳动人民—既拥有每一个对象的“所有权”,又担负着每一个对象生命开始到终结的维护责任。 对于Java程序员来说,在虚拟机的自动内存管理机制的帮助下,不再需要为每一个new操作去写配对应的delete/free代码,而且不容易出现内存泄漏和内存溢出问题,看起来由虚拟机管理内存一切都很美好。不过,也正是因为Java程序员把内存控制的权力交给了Java虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那排查错误将会成为一项异常艰难的工作。 Java的内存管理分为分 ...
Read more »

Java基础之反射与类加载器

Posted on 2017-03-19 | In Java基础知识 | | Visitors
一 概述类加载即是编译好的class文件被加载进Java虚拟机的过程,而这就需要用到Java类加载器java.lang.ClassLoader。class文件被加载进虚拟机后会生成java.lang.Class对象,而这些是发生在Java虚拟机中的,除了类加载过程,其余的我们并不能看到。要想获得这个Class对象,我们就需要通过反射。 二 类加载指将类的class文件读入内存,并为之创建一个java.lang.Class的对象。 类文件来源 从本地文件系统加载的class文件 从JAR包加载class文件 从网络加载class文件 把一个Java源文件动态编译,并执行加载 类加载器通常无须 ...
Read more »

Java基础之流

Posted on 2017-03-17 | In Java基础知识 | | Visitors
一 概述Java在java.io包下提供了相应的类和接口来对IO进行支持。Java中主要包含输入输出两种流,没中输入输出流又分为字节流和字符流两种流。其中字节流以字节为单位处理输入输出操作,字符流以字符来处理输入输出操作。从Java7开始Java在java.nio包下提供了一种全新的API,被称作NIO,它可以更高效的进行输入、输出操作。 二 Java IO流相关的类 File类:系统中文件或者目录的实例,里面有很多方法用于获取文件和目录信息,可以通过查看File的源码获知。 字节流:InputStream/OutputStream输入输出字节流的基类 字符流:Reader/Writer 输入 ...
Read more »

Java基础之异常

Posted on 2017-03-17 | In Java基础知识 | | Visitors
一 概述异常处理已经成为衡量一门语言是否成熟的标准之一,目前主流的C++,C#,Ruby,Python等大都提供了异常处理机制。异常处理可以使正常业务代码与异常代码分离开,使程序具有更好的容错性和健壮性。一个好的程序员不只能做好”对“的事情,“错”的事情也要做好。 二 Java异常继承体系Java中的异常皆继承于Exception,Exception与Error共同继承于Throwable。下面是Java的异常继承体系图: 三 Java中的异常处理Java中的异常分为Checked(编译时异常)和RuntimeException(运行时异常)两种,同时规定Checked异常必须被处理否则无法 ...
Read more »
1…456…8
zhengrui

zhengrui

读书、健身、旅行

71 posts
15 categories
119 tags
RSS
GitHub Weibo Facebook
Links
  • 我康军的博客
  • 我的简历
© 2020 zhengrui
Powered by Hexo
Theme - NexT.Mist