Spring预备知识(适合中小型项目)

作用:集成和管理其他框架

工厂模式:

A  a  = new A( );

将类所要创建的对象写入工厂,统一进行管理

package com.spring;

public class TestSimpleFactoryPattern {

/**

* 工厂模式:利用工厂模式调用两个类

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

CarFactory factory = new CarFactory();//创建工厂模式的 CarFactory类的对象

Car c = factory.createCar("auti");//调用 CarFactory类中的方法创建对象

c.run();//调用所需类中的方法

}

}

class CarFactory{//建立工厂模式的 CarFactory类

public Car createCar(String type){//工厂模式的 CarFactory类中的createCar方法

if("auti".equalsIgnoreCase(type)){

return new Audi();

}else if("auto".equalsIgnoreCase(type)){

return new Auto();

}else{

return null;

}

}

}

interface Car{

public void run();

}

class Audi implements Car

{

@Override

public void run() {

System.out.println("奥迪车跑跑跑!");

}

}

class Auto implements Car//接口Car:用到了多态

{

@Override

public void run() {

System.out.println("奥拓车跑跑跑!");

}

}

单例模式:

某一个类只有一个实例

package com.spring;

public class ClassicSingleton {

public static ClassicSingleton instance = null;//此处null可以省略

private ClassicSingleton(){//构造器私有,外部不能调用

}

public synchronized ClassicSingleton getInstance(){//synchronized为多线程,公开一个方法

if(instance==null){

instance = new ClassicSingleton();//永远只能调用一次

}

return instance;

}

}

面向接口编程

动态代理:AOP内部核心机制

Spring中的工厂模式和单例模式的更多相关文章

  1. spring中的工厂模式

    spring的bean的创建原理就是框架利用反射创建出实例对象 工厂模式:工厂帮我们创建对象:有一个专门帮我们创建对象的类,我们把这个类叫做工厂类. 例如:Plane plane = PlaneFac ...

  2. 002-创建型-04-建造者模式(Builder)、JDK1.7源码中的建造者模式、Spring中的建造者模式

    一.概述 建造者模式的定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. 工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象 ...

  3. 应聘阿里,字节跳动,美团必须掌握的Spring IOC与工厂模式

    Spring IOC与工厂模式 PS:本文内容较为硬核,需要对java的面向对象.反射.类加载器.泛型.properties.XML等基础知识有较深理解. (一)简单介绍 在讲Spring IOC之前 ...

  4. php中的设计模式---工厂模式及单例模式

    这两个练习放在一起处理. 在python中,这些模式都有的. 要记得三大类模式:创建型,结构型,行为型. NotFoundException.php <?php namespace Bookst ...

  5. PHP 设计模式 笔记与总结(6)基础设计模式:工厂模式、单例模式和注册树模式

    三种基础设计模式(所有面向对象设计模式中最常见的三种): ① 工厂模式:使用工厂方法或者类生成对象,而不是在代码中直接new 在 Common 目录下新建 Factory.php: <?php ...

  6. 工厂模式 and 单例模式

    工厂模式:使用工厂类使创建类与使用类分离,从而提高代码的易维护性,可扩展性等 工厂模式分位简单工厂模式和工厂方法模式 使用简单工厂模式的步骤:     1.创建父类及其子类         父类中有[ ...

  7. php设计模式 工厂模式和单例模式

    一.单例模式//让该类在外界无法造对象//让外界可以造一个对象,做一个静态方法返回对象//在类里面通过让静态变量控制返回对象只能是一个. 单例模式的要点有三个: 一是某个类只能有一个实例: 二是它必须 ...

  8. 在商城系统中使用设计模式----策略模式之在spring中使用策略模式

    1.前言: 这是策略模式在spring中的使用,对策略模式不了解对同学可以移步在商城中简单对使用策略模式. 2.问题: 在策略模式中,我们创建表示各种策略的对象和一个行为,随着策略对象改变而改变的 c ...

  9. Spring学习13-中IOC(工厂模式)和AOP(代理模式)的详细解释

    我们是在使用Spring框架的过程中,其实就是为了使用IOC,依赖注入,和AOP,面向切面编程,这两个是Spring的灵魂. 主要用到的设计模式有工厂模式和代理模式. IOC是工厂模式参考:设计模式- ...

随机推荐

  1. javascript中的function

    function / 对象 所有的变量和方法名的:以字母,$ _开头其他随便,尽量使用英文字母命名,见名知意注意点:不允许使用关键字定义变量和方法的名称====函数即方法,方法即函数====百度:ja ...

  2. fastjson 常用api

    一.json字符串的数据解析      1.json字符串 ---> JSONObject或者JSONArray[好处就是当你没有bean的model类时,可以直接获取相关数据]         ...

  3. 《GK101任意波形发生器》任意波文件格式说明

    详见PDF 文档: http://files.cnblogs.com/xiaomagee/GK101%E4%BB%BB%E6%84%8F%E6%B3%A2%E6%95%B0%E6%8D%AE%E6%A ...

  4. CSS兼容性

    1,浮动 ie6中,设置浮动的元素,width自动包裹内容了.通常我们要设定一下这个元素的宽度 子元素浮动父容器高度不能自适应的CSS解决方法 网页前端工作者经常会遇到子元素设置float浮动后导致父 ...

  5. svn搭建,很简单

    yum install subversion 2015年1月7日15:23:07 我测试的时间 系统是centos6.5 直接yum,centos是可以直接解决apr apr-util 依赖问题,如果 ...

  6. [ZZ] The Naked Truth About Anisotropic Filtering

    http://www.extremetech.com/computing/51994-the-naked-truth-about-anisotropic-filtering In the seemin ...

  7. etcdctl --help

    NAME:   etcdctl - A simple command line client for etcd. USAGE:   etcdctl [global options] command [ ...

  8. 用 BigDump 工具导入超大 MySQL 数据库备份文件

    用 BigDump 工具导入超大 MySQL 数据库备份文件  创建于 2010-07-01, 周四 00:00  作者 白建鹏 在<Joomla! 1.5 网站防黑9条戒律>这篇文章中, ...

  9. MySql练习+加源代码

    一.设有一个数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher). 四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1 ...

  10. Machine Learning in Action -- 回归

    机器学习问题分为分类和回归问题 回归问题,就是预测连续型数值,而不像分类问题,是预测离散的类别 至于这类问题为何称为回归regression,应该就是约定俗成,你也解释不通 比如为何logistic ...