2016-05-17 27 views
0

我正在尋找一種設計模式,它將允許我的服務處理BufferedImage並將其存儲到不同的數據庫並返回其他對象。是否有可能這樣做?Java設計模式服務將方法應用於對象

Object processed = imageService.process(bufferedImage) 
       .resize(width, height) 
       .crop() 
       .removeTransparency() 
       .saveToDB_A() 
       .saveToDB_B() 

回答

1

你舉的例子是,Fluent interface或者,如果你看一些角,Builder模式。

+1

但是,允許ImageService將該圖像保存到數據庫將會破壞Single Responsibility Principle。因爲我們正在討論模式(涉及最佳實踐),所以最好讓ImageService有一個「.invoke(Consumer 函數)」方法來簡單地調用BufferedImage的任何函數。 '。通過這種方式,您可以在不影響ImageService中的SRP的情況下存儲圖像。 – gmaslowski