设为首页 加入收藏

TOP

Java外观模式(Facade模式)
2015-02-25 22:43:59 来源: 作者: 【 】 浏览:39
Tags:Java 外观 模式 Facade

外观模式(Facade)的定义:为子系统中的一组接口提供一个一致的界面。


Facade一个典型应用就是数据库JDBC的应用,如下例对数据库的操作:


public class DBCompare {
 Connection conn = null;
 PreparedStatement prep = null;
 ResultSet rset = null;
 try {
  Class.forName( "" ).newInstance();
  conn = DriverManager.getConnection( "" );
    
  String sql = "SELECT * FROM

WHERE = ?";
  prep = conn.prepareStatement( sql );
 ? ? prep.setString( 1, "" );
  rset = prep.executeQuery();
  if( rset.next() ) {
    System.out.println( rset.getString( "  }
 } catch( SException e ) {
  e.printStackTrace();
 } finally {
  rset.close();
  prep.close();
  conn.close();
 }
}


上例是Jsp中最通常的对数据库操作办法


我们做成了一个Facade接口,使用该接口,上例中的程序就可以更改如下:


public class DBCompare {
 String sql = "SELECT * FROM

WHERE = ?";  
 try {
  Mysql msql=new mysql(sql);
  prep.setString( 1, "" );
  rset = prep.executeQuery();
  if( rset.next() ) {
   System.out.println( rset.getString( "  }
 } catch( SException e ) {
  e.printStackTrace();
 } finally {
  mysql.close();
  mysql=null;
 }
}


可见非常简单,所有程序对数据库访问都是使用改接口,降低系统的复杂性,增加了灵活性。


如果我们要使用连接池,也只要针对facade接口修改就可以。


Java 外观模式


由上图可以看出,facade实际上是个理顺系统间关系,降低系统间耦合度的一个常用的办法,也许你已经不知不觉在使用,尽管不知道它就是facade。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Java基础——入门篇 下一篇如何在Android Studio中使用Gradl..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: