Java架构中的常见设计模式

来源:互联网 发布:淘宝卖家需求 编辑:程序博客网 时间:2024/05/29 14:30

设计模式主要分为以下三类

创建型 共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备 忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

创建型模式

(1)工厂方法模式:
ConnectionFactory 就是非常经典的工厂模式,我们通过提供不同的数据库连接配置,可以得到Oracle或者Mysql等不同的数据库连接,从而连接对象的创建不必我们自己来做,我们只需要告诉工厂我们要的是什么连接,然后工厂就会返回正确的连接给我们使用。

下面是一个简单的工厂模式例子:

public interface Connection {        public void connect(String username,String password);}
public class MysqlConnection implements Connection{    @Override    public void connect(String username,String password) {        System.out.println("connecting Mysql server with username:"+username +" and password:"+password);    }}
public class OracleConnection implements Connection{    @Override    public void connect(String username,String password) {        System.out.println("connecting Oracle server with username:"+username +" and password:"+password);    }}
public class ConnectionFactory {    public static Connection getMysqlConnection(){        Connection connection = new MysqlConnection();        return connection;    }    public static Connection getOracleConnection(){        Connection connection = new OracleConnection();        return connection;    }}
public class Test {    public static void main(String[] args) {        //oracle        Connection connection1 = ConnectionFactory.getOracleConnection();        connection1.connect("admin1","pass1");        //Mysql        Connection connection2 = ConnectionFactory.getMysqlConnection();        connection2.connect("admin2","pass2");    }}
输出:connecting Oracle server with username:admin1 and password:pass1connecting Mysql server with username:admin2 and password:pass2
1 0
原创粉丝点击