`
文章列表
代理模式 1.定义          为其他对象提供一种代理,以控制对这个对象的访问。 2.示例代码     /*抽象目标接口*/ public interface Subject{ //抽象请求接口 public void request(); } /*具体目标对象*/ public class RealSubject implements Subject{ public void request(){ System.out.println("正在处理被代理对象请求..."); } }    ...
中介者模式 1.定义        用一个中介对象来封装一系列对象交互。中介者使得各个对象不需要显示的相互引用,从而使其松散耦合,而且可以独立的改变他们直接的交互。 2.示例代码        /*所有需要交互的对象都被视为同事类,同事类持有中介者对象*/ pubic abstract class Colleague{ //持有中介者对象的接口 private Mediator mediator; public Colleague(Mediator mediator){ this.mediator = mediator; } ...
原型模式 1.定义        用原型模式指定创建对象的种类,并通过拷贝这些原型创建新的对象。 2.示例代码        /*声明一个克隆自身的接口*/ public interface Prototype{ /*克隆自身的方法*/ public Prototype clone(); } /*克隆的具体实现对象*/ public class ConcretePrototype implements Prototype{ public Prototype clone(){ /*最简单的克隆,新建一个自身对象,由于没有 ...
生成器模式 1.定义        将复杂对象的构件和它的表示分离,使得同样的构建过程可以创建不同的表示。 2.示例代码        要实现同样的构建过程可以创建不同的表现,那么一个自然的思路就是先把构建过程独立出来,在生成器模式中把它称为指导者,由它来指导装配过程,但是不负责每步具体实现,具体实现每步的对象,在生成器模式中称为生成器。     /*被构件的产品对象接口*/ public interface Product{ //产品对象的一些操作 public String getProductName(); } /*产品对象鞋子*/ publ ...
抽象工厂模式 1.定义        提供一个创建一系列相关或者相互依赖对象的接口,而无需指定它们具体的类。 2.示例代码        比如组装机器的时候,cpu和主板可以看作两个对象,这两个对象相互依赖,cpu针脚必须和主板针槽相匹配。      /*cpu接口定义*/ public interface CPUApi{ //示意方法,cpu具有运算功能 public void calculate(); } /*intel CPU实现*/ public class IntelCPU implements CPUApi{ //CPU针脚 ...
工厂方法模式       1.定义        定义个一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法模式使一个类的实例化延迟到其子类。       2.示例代码        /*导出的文件对象接口,即工厂方法所创建的对象接口*/ public interface ExportFileApi{ public boolean export(String data); } /*导出txt格式的实现类*/ public class ExportTxtFile implements ExportFileApi{ public boolean expo ...
单例模式     1.定义      保证一个类仅有一个实例,并提供一个访问它的全局访问点。          2.示例代码      /*饿汉式单例模式,类加载时创建对象,线程安全*/ public class Singleton{ //类加载时候创建实例,而且static保证创建一次 public static Singleton instance = new Singleton(); //私有化构造方法 private Singleton(){ } //定义一个静态方法提供实例 public static Single ...
适配器模式      1.定义        将一个类的接口转换成客户希望的另一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。              2.示例代码        /*客户端使用的接口,与特定领域相关*/ public interface Taget{ public void request(); } /*需要被适配的接口,已经存在与系统中*/ public interface Adaptee{ public void specificRequest(); } /*需要被适配的接口对象,已经存在与 ...
外观模式     1.定义              为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。     2.示例代码      /*A模块的接口*/ public interface AModuleApi{ public void testA(); } /*A模块的实现*/ public class AModuleImpl implements AModuleApi{ public void testA(){ System.out.println("现在A模 ...
简单工厂模式       1.定义        提供一个创建对象实例的功能,而无须关心其具体实现。被创建实例的类型可以是接口,抽象类,也可以是具体的类。       2.示例代码          /*接口定义,该接口可以通过简单工厂来创建*/ public interface Api{ public void operation(String s); } /*接口具体实现类A*/ public class ImplA implements Api{ public void operation(String s){ System ...
1.安装规划   见大数据(一)-----HADOOP安装 2.安装flume 将flume安装在目录/home/hadoop/apache-flume-1.7.0-bin下,并配置环境变量 export FLUME_HOME=/home/hadoop/apache-flume-1.7.0-bin  配置conf目录下flume-hdfs.conf文件,包括agent,sink,channel 最近在部署FLUME监控日志tomcat日志文件到hadoop的hdfs,发现了一个奇怪的问题:flume使用exec方式监控tomcat单个日志文件,如果tomcat的日志文件 ...
1.概述 RocketMQ是alibaba公司开源的一个纯java的开源消息中间件。 2.开发测试环境搭建 1.   安装&启动 进入到RocketMQ下载包解压的路径下 D:\machine\RocketMQ-3.0.8\RocketMQ-3.0.8> 接下来安装 执行下边的命令或者执行install.bat(在这个bat文件中的命令如下)对maven熟悉的一眼就知道是执行clean package install assembly等操作。 mvn -Dmaven.test.skip=true clean packageinstall assembly ...

生成校验码

checkcode.jsp <%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*"%> <%!Color getRandColor(int fc, int bc) { Random random = new Random(); if (fc > 255) fc = 255; if (bc > 255) bc = 255; int r = ...
一、新建maven项目,配置ssh框架pom的最低支持 1、新建一个maven项目  2、添加一个web.xml   <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/x ...

spring事物注解

    博客分类:
  • J2EE
使用步骤: 步骤一、在spring配置文件中引入<tx:>命名空间<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schem ...
Global site tag (gtag.js) - Google Analytics