1. 程式人生 > 實用技巧 >7.Mybatis的分頁

7.Mybatis的分頁

1. 模式的結構工廠方法模式的主要角色如下。

  1. 抽象工廠(Abstract Factory):提供了建立產品的介面,呼叫者通過它訪問具體工廠的工廠方法 newProduct() 來建立產品。
  2. 具體工廠(ConcreteFactory):主要是實現抽象工廠中的抽象方法,完成具體產品的建立。
  3. 抽象產品(Product):定義了產品的規範,描述了產品的主要特性和功能。
  4. 具體產品(ConcreteProduct):實現了抽象產品角色所定義的介面,由具體工廠來建立,它同具體工廠之間一一對應。

工廠方法模式的主要優點有:

  • 使用者只需要知道具體工廠的名稱就可得到所要的產品,無須知道產品的具體建立過程;
  • 在系統增加新的產品時只需要新增具體產品類和對應的具體工廠類,無須對原工廠進行任何修改,滿足開閉原則;

其缺點是:每增加一個產品就要增加一個具體產品類和一個對應的具體工廠類,這增加了系統的複雜度。

package FactoryMethod;
public class AbstractFactoryTest
{
    public static void main(String[] args)
    {
        try
        {
            Product a;
            AbstractFactory af;
            af=(AbstractFactory) ReadXML1.getObject();
            a=af.newProduct();
            a.show();
        }
        catch(Exception e)
        {
            System.out.println(e.getMessage());
        }
    }
}
//抽象產品:提供了產品的介面
interface Product
{
    public void show();
}
//具體產品1:實現抽象產品中的抽象方法
class ConcreteProduct1 implements Product
{
    public void show()
    {
        System.out.println("具體產品1顯示...");
    }
}
//具體產品2:實現抽象產品中的抽象方法
class ConcreteProduct2 implements Product
{
    public void show()
    {
        System.out.println("具體產品2顯示...");
    }
}
//抽象工廠:提供了廠品的生成方法
interface AbstractFactory
{
    public Product newProduct();
}
//具體工廠1:實現了廠品的生成方法
class ConcreteFactory1 implements AbstractFactory
{
    public Product newProduct()
    {
        System.out.println("具體工廠1生成-->具體產品1...");
        return new ConcreteProduct1();
    }
}
//具體工廠2:實現了廠品的生成方法
class ConcreteFactory2 implements AbstractFactory
{
    public Product newProduct()
    {
        System.out.println("具體工廠2生成-->具體產品2...");
        return new ConcreteProduct2();
    }
}



class ReadXML1
{
//該方法用於從XML配置檔案中提取具體類類名,並返回一個例項物件
public static Object getObject(){}