public static void man

_hope is a good thing

Java Annotation学习笔记

| Comments

  1. Annotation是什么 Annotation是类,方法或字段的一种注解或元数据,当程序被JVM编译的时候,annotation会和类编译在一起,作为一种元数据去描述被修饰的数据
  2. Annotation的定义

Java中Comparable和Comparator实现对象比较

| Comments

当需要排序的集合或数组不是单纯的数字型时,通常可以使用Comparator或Comparable,以简单的方式实现对象排序或自定义排序。下面通过两个例子分别用Comparable和Comparator实现对User对象中年龄排序。

使用Wiser测试邮件发送

| Comments

最近在做一个小项目,里面有发送邮件这一功能,本文主要是讲如何通过Spring发送邮件,已经一个邮件测试框架 —– wiser的介绍。

如何使用Spring发送邮件 首先主要用到的一个类是JavaMailSenderImpl,它位于Spring的org.springframework.mail. javamail包中,主要是用来发送邮件的。为了发送邮件,需要提供给它一系列的参数。这些参数我都配置在了resources包下的一个xml文件中

深入浅出设计模式之代理模式(Proxy Pattern)

| Comments

所谓代理,即控制盒管理对目标对象访问的一个中间层。它代表一个真实的对象,并呈现给外界一个假象—它就是真正的对象,但其实他的一切动作都是调用真实对象来完成的。

一、远程代理

代理模式有很多种,首先我们来讲远程代理。如果我有两个类ClassA和ClassB,它们分别位于不同的机器上(意味着它们在不同的JVM的堆中)。如果ClassA想要调用ClassB中的方法,这时就需要一个远程代理。远程代理就好像是“远程对象的本地代表”,它是一个可以由本地方法调用的对象,其行为会转发到远程对象中。

深入浅出设计模式之状态模式(State Pattern)

| Comments

在现实生活中,常常遇到许多与状态相关的问题,一些状态因为一些行为的触发转移到下一个状态。就拿一个糖果机为例子吧,糖果机有四种状态:没有25分钱、有25分钱、售出糖果和糖果售罄。由不同的触发条件到达另一种状态.例如如果没有25分钱,投入25分钱,会达到有25分钱的状态,其他状态如下图所示:

深入浅出设计模式之迭代器模式(Iterator Pattern)和组合模式(Composite Pattern)

| Comments

一、迭代器模式

迭代器模式应用了封装的原理,封装了可迭代组件的具体实现,游走于聚合内每一个元素,而又不暴露内部的表示。举个例子吧,有两家餐馆,它们现在合并了,这样提供的菜品就是原来的2倍。但是餐馆A使用数组来存储菜品,而餐馆B用列表来存储。如果想看所有的菜品,还得通过两种方式便利得到全部内容,这样很不方便,于是就想到了通过迭代器模式封装它们。

深入浅出设计模式之模板方法模式(Template Method)

| Comments

模板方法模式,顾名思义,必定有一个类提供了一个模板,完成一件工作。其他类使用这个模板完成自己的工作,但是由于各个类之间所要完成的工作之间并不完全一致,所有在模板方法类中会可以留下一些抽象方法供其他类自己来实现,这样通过模板方法达到的效果就产生了区别。例如,如果我要泡一杯咖啡,需要的步骤是

深入浅出设计模式之适配器模式(Adaptor Pattern)与外观模式(Facade Pattern)

| Comments

一、适配器模式 我们每个人在生活中都经历过这样的事,手中的电子产品和插座要求的接口类型不相符,比如插座要求的是三孔,而自己的插头是两孔,这个时候就需要一个电源适配器插在原先的插座上,然后再适配器的另一端暴露一个两孔的插孔供我们使用。对于客户来说,不管原来插座式几孔的,他只在乎自己能用的是两孔的就行了,其它的都交给了适配器去做。

深入浅出设计模式之命令模式(Command Pattern)

| Comments

命令模式,顾名思义,一定是有大哥发命令,一定有小弟在执行这个命令,理解了这个,命令模式就不难了。命令模式里面分为三种角色,发送者、命令对象和接受执行者。比如说有一个遥控板,它可以控制室内的灯光,那么遥控板在这里就是一个发送者,它发送命令给命令对象,命令对象接到命令后就只管执行。下面来看这个命令模式的实现吧:

深入浅出设计模式之单件模式(Singleton Pattern)

| Comments

单件模式是最简单的一种设计模式,因为从头到尾都只涉及到一个类。单件模式想要达到的目的是在程序运行的过程中只创建一个类的对象,在很多场合这都很有用,比如注册表程序,你不会想要很多对象来,因为那样会造成混乱且很占内存,一个对象足矣。那么应该怎么应用单件模式呢?例子很简单,代码如下: