J2EE常用設計模式 工廠模式

2021-08-19 12:59:33 字數 3408 閱讀 6241

軟體設計的一般原則:

1.開閉原則

對擴充套件開放,對修改關閉

2.黎克特制代換原則

在任何基類出現的地方,子類一定可以出現

3.依賴倒轉原則

依賴於抽象,不依賴於實現

4.介面隔離原則

應當為客戶提供盡可能小的單獨的介面而不是大的總介面

5.組合,聚合復用原則

盡量使用組合聚合而不是使用繼承達到**復用

6.迪公尺特法則

乙個軟體實體應盡可能小的與其他實體發生作用

工廠模式:

簡單工廠模式:

package com.westos.todo.service;

public inte***ce todoservice

package com.westos.todo.service.impl;

import com.westos.todo.service.todoservice;

public class todoserviceimpl implements todoservice

}

package com.westos.todo.factory;

import com.westos.todo.service.todoservice;

import com.westos.todo.service.impl.todoserviceimpl;

public class todosfactory

}

package com.westos.todo.test;

import com.westos.todo.factory.todosfactory;

import com.westos.todo.service.todoservice;

public class test1

}

測試結果:這是todoserviceimpl

工廠方法模式:

package com.westos.todo.service;

public inte***ce todoservice

package com.westos.todo.service.impl;

import com.westos.todo.service.todoservice;

public class todoserviceimpl implements todoservice

}

package com.westos.todo.factory;

public inte***ce abstractfactorya

package com.westos.todo.factory;

import com.westos.todo.service.todoservice;

import com.westos.todo.service.impl.todoserviceimpl;

public class todosfactorya implements abstractfactorya

}

package com.westos.todo.test;

import com.westos.todo.factory.todosfactorya;

import com.westos.todo.service.todoservice;

public class test2

}

測試結果:這是todoserviceimpl

抽象工廠模式:

package com.westos.todo.service;

public inte***ce userservice

package com.westos.todo.service;

public inte***ce todoservice

package com.westos.todo.factory;

import com.westos.todo.service.todoservice;

import com.westos.todo.service.userservice;

public inte***ce abstractfactoryb

package com.westos.moshi.factory;

import com.westos.moshi.service.todoservice;

import com.westos.moshi.service.userservice;

import com.westos.moshi.service.impl.todoserviceoracleimpl;

import com.westos.moshi.service.impl.userserviceoracleimpl;

public class abstractbfactoryoracleimpl implements abstractorybfactory

@override

public todoservice createtodoservice()

}

package com.westos.todo.service.impl;

import com.westos.todo.service.todoservice;

public class todoservicemysqlimpl implements todoservice

}

package com.westos.todo.service.impl;

import com.westos.todo.service.userservice;

public class userservicemysqlimpl implements userservice

}

package com.westos.todo.test;

import com.westos.todo.factory.abstractfactorymysqlimpl;

import com.westos.todo.service.todoservice;

import com.westos.todo.service.userservice;

public class test3

}

測試結果:todoservice的mysql方法

userservice的mysql方法

j2ee常用設計模式之工廠模式

今天花了很多時間把工廠模式又整理了一下,發現以前都沒怎麼弄懂。工廠模式分為3種 簡單工廠模式,工廠方法模式和抽象工廠模式。1.簡單工廠模式 其實這個概念我還真沒怎麼看懂,難道是我的智商有問題?既然概念沒看懂就不說了,說說我知道的吧。簡單工廠模式由三部分組成 工廠,抽象產品,具體產品。剛才看見別人寫的...

J2EE設計模式分析與實踐 引言

簡單地說,模式是乙個出現在世界上的實物,同時也是一條規則,告訴你應該如何建立乙個實物 應該在何時建立。它既是過程,也是實物 既是對當前實物的描述,也是對建立實物的過程的描述。建築的永恆之道 在軟體科學中,隨著理論的發展,模式被細分為好多種,有軟體的管理模式,實踐證明與傳統管理是有區別的,從而是一種新...

J2EE設計模式讀書筆記(1) 表現層模式

表現層模式 裝飾器 動態新增功能到前端控制器,filter 前端控制器 建立乙個統一的集中的元件來執行公共的功能 截獲所有請求,struts mvc 將表達層分解為自包含的可重用的幾個部分,struts 復合檢視 根據幾個可重用的子檢視建立乙個試圖,tiles 服務工作者 將導航功能從前端控制器中解...