自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (5)
  • 收藏
  • 关注

转载 spock测试介绍

1.摘要最近一段时间接触到了spock这个可以用于java和groovy项目的单元测试框架,写了一段时间单测之后认为这个框架不错,值得写一篇文章推广一下。2.关于单元测试很多人一谈到单元测试就会想到xUnit框架。对于一些java新人来说,会用jUnit就是会写单元测试,高级点的会捣鼓一下testng,然后就认为自己掌握了单元测试。而实际上,很多人不怎么会写单元测试

2017-11-30 16:04:45 14911 2

转载 Mockito测试

Mockito一 mockito基本概念Mock测试是单元测试的重要方法之一,而Mockito作为一个流行的Mock框架,简单易学,且有非常简洁的API,测试代码的可读性很高。Mock测试就是在测试过程中,对于一些不容易构造(如HttpServletRequest必须在Servlet容器中才能构造出来)或者说获取比较复杂的对象(如JDBC中的ResultSet对象)或者说我们并不需要关

2017-11-30 13:59:38 938

转载 spock测试

前言为了找到一个适合自己的、更具操作性的、以DDD为核心的开发方法,我最近一直在摸索如何揉合BDD与DDD。围绕这个目标,我找到了Impact Mapping → Cucumber → Spock → Scala这样的一条路线,并相应选择了Scala → Spock → Cucumber这样的一条学习路线。Spock是Java生态圈中一个新生的测试框架,采用动态语言Groovy

2017-11-30 13:57:31 6405

转载 Closure

这篇文章介绍一下Closure的一些语法特性,以及它的使用方法,我们用规则以及代码的方法进行展现,和介绍MetaClass不同的是,这次我们将先列出规则,再贴上代码,让大家对所阐述的目标更加明确。 一、代码块(Blocking)在介绍闭包前,先来讲几个Groovy中代码块的一些特性。1.groovy的变量作用域和java相似,代码块内部声明的变量不能被外部访问调用。

2017-11-28 23:44:48 545

转载 Closures(闭包)

Closures(闭包)本节主要讲groovy中的一个核心语法:closurs,也叫闭包。闭包在groovy中是一个处于代码上下文中的开放的,匿名代码块。它可以访问到其外部的变量或方法。1. 句法1.1 定义一个闭包{ [closureParameters -> ] statements }其中[]内是可选的闭包参数,可省略。当闭包带有参数,就需要->来将参数和闭包体相

2017-11-28 23:41:37 537

转载 groovy之closure

什么是闭包(Closure)在Groovy中,闭包是一段匿名的代码段,它可以有参数,返回值,并且能够赋值给一个变量。闭包中使用的变量可以是在闭包外部定义的,也可以是在闭包内部定义的。闭包定义的语法如下{[closureParameters ->] statements}上面的方括号[]表示闭包的参数可有可无,所以正常的闭包可能包括如下这些类型:{item++} //item变量定义在闭包之外...

2017-11-28 19:15:24 2545

转载 groovy闭包

Groovy是增强Java平台的唯一的脚本语言。它提供类似于Java的语法,内置映射(Map)、列表(List)、方法、类、闭包(closure)以及生成器。Groovy是动态弱类型语言,即Groovy不要求声明变量的类型、方法的参数或者方法的返回值。这意味着在不同环境下,变量可以以多种方式使用。Groovy类和Java是二进制兼容的。这意味着Groovy编译器产生的字节码与Java编译器

2017-11-28 17:20:03 356

转载 JDK8新特性Optional类

Optional不是对null关键字的一种替代,而是对于null判定提供了一种更加优雅的实现。NullPointException可以说是所有java程序员都遇到过的一个异常,虽然java从设计之初就力图让程序员脱离指针的苦海,但是指针确实是实际存在的,而java设计者也只能是让指针在java语言中变得更加简单、易用,而不能完全的将其剔除,所以才有了我们日常所见到的关键字null。空指针异常是一个...

2017-11-28 14:29:19 1327

转载 java8新特性

default拓展方法java8为接口声明添加非抽象方法的实现,也成为拓展方法。public interface Formula { void doSomething(); default void before() { System.out.println("我是拓展方法"); }}public class FormulaServi

2017-11-27 15:51:27 367

转载 Java8简明指南

Java8简明指南Java8简明指南欢迎来到Java8简明指南。本教程将一步一步指导你通过所有新语言特性。由短而简单的代码示例,带你了解如何使用默认接口方法,lambda表达式,方法引用和可重复注解。本文的最后你会熟悉最新的API的变化如Stream,Fcuntional,Map API扩展和新的日期API。接口的默认方法在Java8中,利用default关键字使我们能够添加非抽象方法实现的接口。...

2017-11-27 15:50:18 271 1

转载 java泛型的通配符

泛型中使用通配符有两种形式:子类型限定和超类型限定。(1)子类型限定下面的代码定义了一个Pair类,以及Employee,Manager和President类。[java] view plain copypublic class Pair {      private T first;      private T s

2017-11-27 15:08:56 484

转载 Java 8之方法引用(Method References)

Java 8中方法也是一种对象,可以By名字来引用。不过方法引用的唯一用途是支持Lambda的简写,使用方法名称来表示Lambda。不能通过方法引用来获得诸如方法签名的相关信息。方法引用的分类方法引用分为4类,常用的是前两种。方法引用也受到访问控制权限的限制,可以通过在引用位置是否能够调用被引用方法来判断。具体分类信息如下:引用静态方法 ContainingCl

2017-11-27 10:28:32 614

转载 java函数式编程之Supplier

描述:Supplier< T>接口没有入参,返回一个T类型的对象,类似工厂方法。源码:public interface Supplier<T> { /** * Gets a result. * * @return a result */ T get();}测试代码:@Testpublic void test(){...

2017-11-27 10:27:17 1113

原创 git merge冲突产生

git 冲突是怎么产生的首先,一个用git 写代码,而且只有一个本地分支的情况下是不会又冲突的.冲突可以说是两个分支的冲突.具体是两个已经提交的分支的相同文件相同位置的的不同操作进行了合并. 不会冲突的习惯是,修改文件之前先merge 别的分支.我在master 分支上创建并提交一个文件,切换到新的b分支上是没有这个文件的.这说明分支之间是相互独立的.通过g

2017-11-16 19:59:35 1241

原创 json字符串解析

fastjson 是一个性能极好的用 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。主要特点:快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum)零依赖(没有依赖其它任何类库除

2017-11-15 17:08:18 951

转载 springboot之全局异常

我们在做Web应用的时候,请求处理过程中发生错误是非常常见的情况。Spring Boot提供了一个默认的映射:/error,当处理中抛出异常之后,会转到该请求中处理,并且该请求有一个全局的错误页面用来展示异常内容。选择一个之前实现过的Web应用(Chapter3-1-2)为基础,启动该应用,访问一个不存在的URL,或是修改处理内容,直接抛出异常,如:@RequestMapping("/hell

2017-11-15 13:30:03 1503

转载 FastJSON之解析json

FastJSON是一个Java语言编写的高性能,功能完善,完全支持http://json.org的标准的JSON库。多了不说了,百度一下一大把。在此,简单的总结一下自己用过,测试过的方法。如果使用Maven,在pom.xml文件加入以下依赖。1 dependency>2 groupId>com.alibabagroupId>3 artifactId>fa

2017-11-14 20:09:26 529

原创 JSONObject类之解析json

1. json数据类型类型描述Number数字型String字符串型Boolean布尔型Array数组Object对象null空值(1)json中不区分整数、小数等类型,而统一使用Number来存储数

2017-11-14 18:08:19 3556

转载 正则表达式

java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包。它包括两个类:Pattern和Matcher Pattern 一个Pattern是一个正则表达式经编译后的表现模式。 Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。 首先一个Pattern实例订制了一个所用语法与PERL的类似的正则表达式经编...

2017-11-09 17:49:02 525

转载 Groovy常用语法总结

过去半年都在写Groovy,基本都是在实战中学习,从java转过来,也还没什么问题,毕竟基础,架构都没变。Groovy的强大特性中,Closure,MetaClass都尝试过,Closure基本上就是当方法或者回调接口使用,再高级的用法就没用过了,没有特别体会什么好处,当回调接口就是省的定义接口,简洁了一些;MetaClass就有专门为一个模块做了些MetaClass,和GORM差不多的,

2017-11-09 17:13:27 525

转载 groovy之字符串

文本文字以字符链的形式表示被称作字符串。脚本语言在字符串处理方面比主流的应用程序开发语言做的更好。Groovy就提供了许多附加的特性。在Groovy中有两种风格的字符串:String(java.lang.String)和GString(groovy.lang.GString)。GString允许有占位符而且允许在运行时对占位符进行 解析和计算。字符串方法与java不同,在GString中提供了多种...

2017-11-08 14:05:03 3572

转载 Groovy集合(list)

声明listlist = [1,2,3]list = (1..3).toList() //range转换为listassert list == [1,2,3]assert list[1] == 2assert list instanceof java.util.Listlist[1] = 12assert list == [1,12,3]longList = (0..100)a...

2017-11-08 13:59:26 4387

转载 Groovy集合(map)

声明mapMap的规范和上一篇博客提到的list类似,helist一样,Map保证可以通过下标来获取或者设置值,不同的是map可以使用任何类型作为下标操作符的参数,而list仅仅支持整数,list知道list中元素的顺序,而map一般不知道,特殊的map如java.util.TreeMap也可以知道他们的key的顺序。理论上 ,任何类型都可以作为map的键(key)或者值(valu

2017-11-08 13:58:22 2382

原创 groovy之list和map方法

java作为一门强大的系统编程语言,已经在世界各地广泛地应用.groovy是增强java平台的唯一脚本语言,它的语法更 加简洁,能快速开发. List: 定义list:def list = [] list = [1,2,3,4,5] list操作: def list = [1,2,3,4,5] list[1]        //Result: 2 list[

2017-11-08 13:57:46 5128

转载 Groovy高效编程——‘匕首方法’的使用

Groovy提供了许多‘匕首方法’(匕首,短小精悍也~如each,eachWithIndex,any,every,grep,join,sort,find,findAll,collect,groupBy,inject,reverse,tokenize, unique,max,min,count,sum等)来提升开发者的开发效率,但常被Java开发人员忽视。在这篇随笔中我将为您演示各方法的使用。 

2017-11-08 13:49:14 509

转载 groovy之范围特性

ranges用..表示范围操作符,用来指定左边界和右边界 ep: (0..10) -> 01234567890..<操作符指定了半排除范围,不包含右边界 ep:(0..<10) -> 0123456789range也可以通过显示方法创建:def a = new IntRange(0,10)Range主要方法range主要有如下方法:1.contains:是否包含一个元素。a...

2017-11-08 11:37:00 776

转载 groovy安装

 Step1:配置JDKGroovy是依赖于Java的,所以首先要配置好JDK。Step2:下载Groovy下载地址,下载下来解压即可。Step3:配置Groovy环境变量vim ~/.bash_profile输入# groovyexport PATH=$PATH:/Users/xuhongchuan/install/groovy-2.4.4/bin...

2017-11-08 10:28:29 1146

转载 java泛型详细介绍

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下。本文参考java 泛型详解、Java中的泛型方法、 java泛型详解1. 概述泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常

2017-11-06 21:38:16 303

原创 java中Varargs用法

1.前言最近开发时要使用AsyncTask类,其中要重写这么一个方法:protected String doInBackground(String... params) {}12这里的params便是可变参数(有的地方称为变长参数)。2.详解String[]和String…的本质相同(都是字符串数组)。 以下为使用String…的例子:public v

2017-11-03 11:49:09 1618

转载 logback详细介绍

一、logback的介绍  Logback是由log4j创始人设计的另一个开源日志组件,官方网站: http://logback.qos.ch。它当前分为下面下个模块:  logback-core:其它两个模块的基础模块  logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logg

2017-11-02 15:19:48 456

原创 slf4j+logback配置及详解

文本主要介绍一下slf4j+logback在java工程中的配置,面向的读者是已经对slf4j+logback有一定了解的同学,不了解的同学,请看文章末尾的相关链接。以后会写一篇介绍slf4j框架的文章,其中会说明logback与之的关系。下面咱们进入正题。一、基于maven的slf4j+logback pom.xml配置<dependency> <groupId>...

2017-11-02 14:30:49 864

转载 IntelliJ IDEA中创建Web聚合项目(Maven多模块项目)

Eclipse用多了,IntelliJ中创建Maven聚合项目可能有小伙伴还不太熟悉,我们今天就来看看。 IntelliJ中创建普通的Java聚合项目相对来说比较容易,不会涉及到web操作,涉及到web的话会有一点点麻烦。我们来一步一步看下。环境:IntelliJ IDEA 2017.1创建parent项目1.打开IDEA,注意这里不要勾选模板,用模板创建过ma

2017-11-02 12:05:47 33025 13

JavaEE开发的颠覆者 Spring Boot实战 完整版.pdf

JavaEE开发的颠覆者 Spring Boot实战 完整版.pdf JavaEE开发的颠覆者 Spring Boot实战 完整版.pdf JavaEE开发的颠覆者 Spring Boot实战 完整版.pdf JavaEE开发的颠覆者 Spring Boot实战 完整版.pdf JavaEE开发的颠覆者 Spring Boot实战 完整版.pdf

2018-03-21

完整版W3CSchool线下教程.

完整版W3CSchool线下教程.很不错的在线文档 对查询有很大帮助

2014-12-17

韩顺平_Javascript笔记完整版

韩顺平_Javascript笔记完整版 跟上课一样 很不错的

2014-12-17

《韩顺平轻松搞定网页设计》DIV+CSS学习笔记

跟上课的笔记一样,对于web开发初学者很有用对于web开发初学者很有用

2014-12-17

空空如也

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

TA关注的人

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