自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小白成长记录

春风十里不如你

  • 博客(172)
  • 收藏
  • 关注

原创 浅析回调

浅析回调我们经常听说回调函数,其实对于学习面向对象编程的人可能会对回调函数不是太清楚.但是其实java图形编程已经有这个概念了,其实就是事件监听.举例某天我打电话向你请教问题,你一时想不出解决方法,我又不能拿着电话在那里傻等.于是我们约定:等你想出办法后打手机通知我,这样我就挂掉电话办其它事情去了.过了XX分钟,我的手机响了,你兴高采烈的说问题已经搞定,应该如此这般处理.这个例子说明了“异步

2016-12-19 23:45:23 652 2

原创 fluent 接口(链式调用的接口)

fluent 接口(链式调用的接口)

2016-12-04 14:13:35 2338

原创 Mac 常用终端命令

Mac 常用终端命令目录操作命令

2016-12-04 13:44:01 31891

原创 Stream API

Stream API首先要理解Stream的概念,说实话这点确实非常的不好理解,尤其是Java IO也有Stream的概念,所以很容易导致混淆.Stream是Java 8中处理集合的关键概念,它可以指定你希望对集合进行的操作,但是执行操作的时间交给具体实现来决定.要点1、迭代器意味着特定的遍历策略,禁止了高效的并发执行2、你可以从集合、数组、生成器或者迭代器中创建Stream3、使用过滤器fi

2016-12-03 15:33:02 791

原创 版本号闲谈

版本号闲谈不管是对于后端还是前段版本兼容始终是个无法避免的难题,而其中的版本号命令也应该符合一定的规则,否则比较版本时就比较麻烦.版本号的格式:V<主版本号>.<副版本号>.<发布号>版本号的初始值:V1.0.0版本号管理规则:1、产品的主体构件进行重大修改,主版本号加12、产品升级增加特性副版本号加13、主版本号加1时,副版本号和发布号置为04、副版本号加1时,发布号置为0Java代

2016-12-03 15:32:07 429

原创 Google Guava介绍

Google Guava介绍Google Guava是Google的java项目广泛依赖的核心库,其功能强大并且高效稳定,我们日常企业开发或学习也可以参考和借鉴Guava.其对集合Collection、缓存Cache、原生数据类型支持、并发库、通用注解、字符串处理和IO工具,都提供了高效的支持.1、基本工具类 1、使用和避免null 2、前置条件(Preconditions)

2016-11-30 23:37:42 2254

原创 Java 8 新特性

Java 8 新特性lambda表达式Lambda表达式(也称为闭包),Lambda允许把函数作为一个方法的参数.Lambda 表达式由三个部分组成:第一部分:一个括号内用逗号分隔的形式参数,参数是函数式接口里面方法的参数第二部分:一个箭头符号:->第三部分:方法体,可以是表达式和代码块Lambda Expressions syntax is (argument) -> (body)函数式接

2016-11-26 15:29:07 552

原创 关系数据库设计三大范式

关系数据库设计三大范式在开发中,除了系统架构非常重要之外,数据库的设计也非常的重要,因为数据库de设计一旦完成之后,后期想改动就非常困难了.为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结,要想设计一个结构合理的关系型数据库,必须满足一定的范式。三大范式第一范式(字段原子性)第一范式指数据库表的每一列都是不可分

2016-10-20 20:26:57 1634

原创 读书笔记之《No-SQL精粹》

No-SQL精粹读书笔记介绍随着web互联网的发展,往往需要存储海量数据以及高效的访问数据.No-SQL数据库应运而生,其中以Memcached、Redis、MongoDB作为典型代表.推荐指数:★★★★No-SQL精粹很像一本介绍文摘,让我们对当下流行的No-SQL数据库有所了解,明白如何选择.No-SQL精粹读书笔记正文第一章:为什么使用No-SQL1.1关系数据库的价值1)持久化存储数据

2016-10-20 19:10:03 651

原创 理解编程范型

理解编程范型所谓编程模型就是每种程序设计语言其开发都存在自己的编程模型.四大编程范型面向对象编程模型如今面向对象无疑是最强势的编程范型,而java正是面向对象语言的典型代表.这种范型有三大主要思想:封装、继承、和多态.代表语言:java、python、c++原型编程模型和其它使用类来编写的语言不通,在原型语言中,所有原型都是对象实例.原型语言家族的成员包括javascript、Io,它们有简

2016-10-19 21:02:11 1059

原创 Http状态码速查

Http状态码速查Http状态码在日常开发中往往会遇到,如果对常见的状态码比较熟悉的话,那么可能方便我们排查问题.状态码分类总体范围 已定义范围 类别100~199 100~101 信息200~299 200~206 成功300~399 300~305 重定向400~

2016-10-19 19:33:18 631

原创 浅谈服务器集群、负载均衡、与分布式

浅谈服务器集群、负载均衡、与分布式负载均衡概念:其意思就是分摊到多个操作单元上进行执,操作单元可以是web服务器、ftp服务器、企业关键应用服务器等.不能理解成平均分配到每个操作单元上,因为每台服务器的承载能力不尽相同,硬件配置、网络带宽等差异,所以并不能平均的分配,需要参考的因素很多.负载均衡实现方式1、http重定向当http代理(比如浏览器)向web服务器请求某个URL后,web服务器可以通

2016-10-19 16:34:16 18054 3

原创 Http首部字段

Http首部字段熟悉Http首部字段对web开发非常重要,尤其在分析和解决问题时往往可以达到事半功倍效果.HTTP首部字段根据实际用途被分为以下4中类型1、通用首部字段 请求报文和响应报文两方都会使用的首部.2、请求首部字段 从客户端向服务器端发送请求报文时使用的首部.补充了请求的附加内容、客户端信息、响应内容相关优先级等信息.3、响应首部字段 从服务器端向客户端返回报文时使

2016-10-19 16:25:39 1643

原创 web 主机托管

web 主机托管对内容资源的存储,协调以及管理的职责统称为web主机托管.本章主要讲解web主机托管服务中的某些重要特征和他们如何与http应用程序交互.1、不同网站如何被"虚拟地托管"在同一个服务器上,这样会对http产生怎样的影响2、在很大流量压力下,如何确保网站的可靠3、如何是网站更快的加载正文专用托管专用托管的含义是让单独的物理服务器为我的网站服务,通常当网站的流量比较大的时候可以考

2016-10-19 10:33:06 686

原创 浅谈Java SE知识点

浅谈Java SE知识点Java 发展和介绍Java从诞生(1995年)那一刻起就是为互联网而生的,因此在当今互联网时代,Java语言的应用非常的广泛.移动端的Android开发、服务端的java web和java ee都是使用Java语言。Java是一门纯面向对象的高级语言,对底层封装的比较完善,其编程思想更加贴近人类的思想而非计算机的思维方式,因此学习难度相对不是很高.Java特别适合大型应

2016-10-18 09:00:51 674

原创 浅谈Java关键字

浅谈Java关键字介绍熟练掌握java开发,我觉得深入理解每一个java关键字是很有必要的。Java关键字指的是Java程序语言预先定义好的保留字,不允许开发人员使用这些关键字来定义变量、方法、类或其它标识符。Java关键字列表abstractabstract表示抽象的概念,可以用来修饰类和方法。被修饰的类无法被实例化。assertassert表示断言(真伪语句).boolean布尔值(tr

2016-09-23 10:54:09 448

原创 读书笔记之《图解密码技术》

图解密码技术读书笔记介绍由于自己主要负责开发过公司的支付系统,因此也接触过第三方支付网关(支付宝、微信支付等),其中数据信息的传递都是经过加密的。并且支持多种加密方式有MD5、RSA等。严格意义上讲MD5不能算作加密,只能算作校验数据完整性。最近看到一本介绍密码技术的书籍,由日本人写的一本《图解密码技术》,看完之后收益匪浅,将复杂的技术用简单诙谐的语言来描述这是很不容易的。推荐指数:★★★★☆

2016-09-22 22:57:46 1197

原创 浅谈Spring AOP

浅谈Spring AOP介绍AOP(Aspect Oriented Programming)即面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.这种在运行时,动态地将代码切入到类的指定方法、指定位置上的编程思想就是面向切面的编程.面向切面编程(AOP)是从动态角度考虑程序运行过程.举例:遍布在整个系统的权限校验、日志输出这两种服务其实和我们开发的功能是相互独立的,不存

2016-09-22 17:02:38 954

原创 静态代理和动态代理

静态代理和动态代理介绍在一些情况下,客户端不想或者不能够直接引用一个对象,而代理对象就可以在客户端和目标对象之间起到中介的作用.代理设计模式:可以先简单理解为代理商或中介的概念,比如上网我们可能就会使用代理服务器去上网.典型的代理设计模式:proxy对象不是真正的服务提供者,它只是负责中间一些验证监控或日志之类的操作.备注:代理模式分为两种静态代理和动态代理抽象主题角色:声明了真实主题和代理主题

2016-09-13 21:49:30 336

原创 单例设计模式深入浅出分析

单例设计模式深入浅出分析介绍单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。单例模式的核心 1、私有化构造方法 2、对外只提供一个实例懒汉和饿汉模式所谓懒汉模式指的是只有当

2016-09-13 21:33:56 302

原创 Spring 注解开发

Spring 注解开发介绍Spring2.5之前Spring只提供xml配置开发,Spring2.5之后提供注解开发Spring.基于XML配置开发和基于注解开发各自都有优点,就目前趋势和开发效率而言,强烈推荐使用注解开发。Spring注解应用标识JavaBean为Spring IOC容器管理对象1.@Component:基本注解2.@Respository:标识持久层组件3.@Servic

2016-09-13 13:57:11 1239

原创 Spring的属性注入(SPEL)

Spring的属性注入(SPEL)介绍在开发中有时候有些参数我们并不想直接写成硬编码形式,我们更想写成配置文件形式,使其更加灵活。Spring提供了PropertyPlaceholderConfigurer类和SPEL表达式能够很好的满足我们的需求。SPEL读取配置文件应用使用bean配置PropertyPlaceholderConfigurer<!-- 配置PropertyPlaceholder

2016-09-12 22:57:58 2363

原创 Spring Resource实现对操作读取资源的增强

Spring Resource实现对操作读取资源的增强介绍由于Spring的初始化加载通常都是要读取很多初始化参数的,通常都是从配置文件中读取。由于Spring的配置文件所处环境相对复杂,Java自带读取配置文件的功能并不能很好的满足Spring读取配置文件要求,因此Spring提供了Resource对其进行增强和支持。Resource接口及实现应用UrlResourceUrlResource封装

2016-09-12 22:17:17 720

原创 Spring 核心之IOC

Spring 核心之IOC介绍Spring已经不仅仅是一个框架了,更是一种设计思想和开发理念。 Spring框架体系中有很多内容,但是所有的这些模块和技术都是基于Spring核心建立的,因此掌握Spring核心是非常必要的。Spring核心内容1、Spring IOC容器,依赖注入2、Spring AOP面向切面技术假如没有Spring IOC容器,我们之前的开发模式可能就是这样的,为了不

2016-09-12 21:49:07 313

原创 Servlet3.x新特性

Servlet3.x新特性介绍Servlet标准一直在推进,Servlet3.0相比之前的版本有很多特性和改进。学习Java Web开发,Servlet绝对是最重要也是最应该好好掌握和深入理解的部分。一、注解式开发支持Servlet3.x之前开发Servlet需要在web.xml中配置对应的映射地址,但是从3.x之后这样的配置将不再是必须的了。常用注解:@WebServlet、@WebListen

2016-09-08 19:49:12 755

原创 Java反射机制

Java反射机制目标1.理解Class类2.理解Java的类加载机制3.学会使用ClassLoader进行加载4.理解反射机制5.掌握Constructor、Method、Field6.理解并掌握动态代理介绍说实话反射用在编程语言中确实让人很难理解也很抽象。可以这么理解:为了能够动态(运行期)获得类的信息,因此java提供了反射机制。 Java正因为拥有反射机制所以说Java具备动态语言

2016-09-07 21:37:32 325

原创 Google Guava组件

Google Guava组件介绍据说Google内部一开始是使用Apache Commons 下的工具包来开发的,但是后来随着开发觉得其无法很好的满足公司内部开发,因此就自己造轮子了。相比Apache Commons Collections等工具包,Guava确实更现代和更符合java约定。备注:如果是新项目个人推荐Guava,当然不适用这些组件完全可以。因为它们都是基于JDK的扩展。核心模块c

2016-09-06 19:59:53 888

原创 读书笔记之《大型网站技术架构》

读书笔记之《大型网站技术架构》介绍最近几天在看大型网站技术架构,真的有种如享受饕餮大餐的感觉,读完觉得意犹未尽,整本书都非常的精彩。推荐指数:★★★★★备注:由于整本书我觉得都很精粹所以买本书来好好读吧,不记笔记,因为整本书都是笔记。

2016-09-05 23:32:48 313

原创 正向代理与反向代理的理解

正向代理与反向代理的理解介绍刚开始听到反向代理,不清楚是怎么回事,后来查阅资料之后和实践开发中慢慢明白了知识整理正向代理:即我们平时说的代理,最典型的就是上网的网络代理.反向代理:是指以代理服务器来接受Client的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Client,此时代理服务器对外就表现为一个服务器。 A reverse proxy taking

2016-09-05 23:20:39 671

原创 Apache Commons Collections组件介绍使用

Commons Collections组件介绍使用介绍其实Java JDK已经提供了丰富的集合操作,但是在某些场合下,可能无法满足,apache commons组件提供了更加丰富的集数据结构。其实collections下实现的数据结构都是基于JDK已有数据结构的扩展和补充,掌握好JDK的基础集合框架才是重点。如果在新项目中药使用集合扩展组件,我推荐使用google guava或不适用扩展组件,我觉

2016-09-05 23:02:55 7308

原创 Apache Commons lang组件介绍使用

commons lang组件介绍和学习介绍Java语言开发时有一个隐患,那就是java支持null值,这就导致很多时候操作可能会出异常。因此很多第三方组件都会提供安全null safe 操作(即使用前先检查是否为null).其中apache commons项目下就提供了很多安全操作和工具类lang包组织架构比较常用的工具类有ArrayUtils:数组工具类,提供数组拷贝、查找、反转等功能Stri

2016-09-05 22:37:54 2354

原创 读书笔记之《Java程序员面试宝典》

读书笔记之《Java程序员面试宝典》介绍最近想了解关于Java面试方面的书籍,我首先选的是《编程之美》这本书,看了前面一部分之后,真的觉得智商受虐了。然后翻阅了这本书,本书主要介绍的是Java面试的考点,看完之后整体觉得内容比较基础,本书作者写错的地方也有好几处。 虽然本书存在一些错误和知识点内容介绍的也比较简单,但是对于梳理Java面试考点倒是有一定帮助。 推荐指数:☆☆ 正文Java程序基础

2016-09-02 08:59:32 631

原创 基于Google的zxing生成和解析QR Code

基于Google的zxing生成和解析QR Code介绍二维码的技术在当今应用相当的的广泛,其中以QR Code应用最为广泛和流行。 在二维码发展之前还有一维码即条形码,相比条形码二维码存储容量更大,并且容错性也更好。优点1、高密度编码,信息容量大(大概能存储几百上千个汉字)2、编码范围广3、容错能力强,具有纠错功能4、译码可靠性高5、可引入加密措施6、成本低,易制作,持久耐用缺点1、

2016-08-30 09:55:10 917

原创 Java关键字之private、default、protected、public

Java关键字之private、default、protected、public介绍对于public修饰符,它具有最大的访问权限。它往往用于对外的情况,也就是对象或类对外的一种接口的形式比如:静态方法、静态成员变量,常和静态修饰一起使用对于protected修饰符,它主要的作用就是用来保护子类的。它的含义在于子类可以用它修饰的成员,常出现在继承关系体系中对于default来说,它是针对本包访问

2016-08-24 21:26:41 741

原创 并发编程之:Java内存模型

并发编程之:Java内存模型介绍Java内存模型在分析并发问题时是非常重要的。硬件处理模型绝大多数的运算任务都不可能只靠处理器就能完成,处理器至少要与内存交互,比如读取数据、存储运算结果等。 这个I/O操作是很难消除的(无法仅靠寄存器来完成所有的运算任务)。由于计算机存储设备与处理器的运算速度存在几个数量级的差距,所以现代计算机系统都不得不一层高速缓存作为内存和处理器之间的缓冲。 将运算需要使用

2016-08-24 21:04:22 419

原创 Java关键字之static、final、transient

Java关键字之static、final、transientstatic关键字static关键字,通常用来修饰变量和方法以及静态代码块。被修饰的变量表示为类所有对象所共有的,被修饰的方法表示类的方法。掌握好static关键字很重要一点就是,static的作用域是类而非某个具体对象。举例静态属性和静态方法/** * @author xuyi * @Time 2016年8月23日 下午9:28:3

2016-08-23 21:50:29 3330

原创 并发编程之ThreadLocal

并发编程之ThreadLocal首先说明一下啊,ThreadLocal其实不应该放在并发编程系列,只是在不知道放到哪合适介绍ThreadLocal翻译为"本地线程",但是这个类的取名似乎词不达意了。也许使用ThradLocalVariable(线程本地变量)可能更合适。JDK源码描述:ThreadLocal类用来提供线程内部的局部变量。这种变量在多线程环境下访问(通过get或set方法访问)时能

2016-08-18 21:50:41 292

原创 MySQL安装

MySQL 安装介绍windows下MySQL提供两种安装方式,一种是msi安装包,一种是zip压缩包安装。msi安装就是普通的exe可执行文件安装方式zip安装包需要自己配置一些配置参数zip压缩包安装1、解压压缩到到指定目录,假如为d:\mysql5.62、配置mysql的path路径,path=%path%;d:\mysql5.6\bin3、添加配置my.ini配置文件 bas

2016-08-17 11:02:49 286

原创 MySQL主从同步/复制

MySQL主从同步/复制介绍当网站对数据库的访问量很大时候,如果单靠一台数据库服务器是无法承载那么大的压力的。因此往往会使用主从分离(Master/Slave),主数据库负责更新数据,从数据库负责查询数据。备注:有时候对查询要求及时性很高的也在主数据库中查询主从同步原理主从复制的基本流程1、当主库有数据变更时,会将相应的信息写入到binary log(又称binlog),这些操作是在clie

2016-08-17 10:41:27 398

原创 MySQL查询处理过程分析

MySQL查询处理过程分析介绍查询操作是关系型数据库中使用最为频繁的操作,也是构成其它SQL语句(如:Delete、Update)的基础。要删除或更新某些记录时,首先要查询出这些记录,然后对其进行相应的操作。查询处理SQL语言不同于其它编程语言(C、Java等),最明显的不同体现在其处理代码顺序上。在SQL语句中,第一个被处理的字句总是from字句。举例(8)SELECT (9)DISTINCT

2016-08-16 23:14:55 1383

空空如也

空空如也

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

TA关注的人

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