我的任務是創(chuàng)建一個管道來轉換不同類型的輸入,例如:RESTful[JSON, XML, ...]套接字 [JSON, XML, ...]關系數(shù)據(jù)庫管理系統(tǒng)...然后使用他們給我的輸出進行轉換和操作,最后將它們發(fā)送回相同或另一個源/格式/結構。有沒有一種模式可以幫助解決這種情況并使其盡可能抽象,因此無論來源和結構如何,我都可以切換對象?響應對象始終是一種集合形式:具有多個對象的 JSONArray、ResultSet、...我的想法是創(chuàng)建一個“適配器類”,它能夠接受一個 JSON 字符串、一個 XML 字符串甚至一個 RDBMS 數(shù)據(jù)集,這樣我就可以使用這個適配器對象,然后將它轉換回另一個結構:JSON 字符串、數(shù)據(jù)集、 ...class AdapterClass{ //how could it look like?}class AdapterClassFactory{ //input public AdapterClass generateByJSONString(String input) public AdapterClass generateByXMLString(String input) public AdapterClass generateByResultSet(ResultSet input) public AdapterClass generateByCSV(String input) //output public String generateJSONString(AdapterClass input) public String generateXMLString(AdapterClass input) public ResultSet generateResultSet(AdapterClass input) public String generateCSV(AdapterClass input)}我想我只是腦子有點遲鈍,但我腦子里想不出答案。感謝您的幫助。
1 回答

蠱毒傳說
TA貢獻1895條經驗 獲得超3個贊
您描述的內容可以通過像Apache Camel這樣的集成框架來完成。它可以使用來自不同來源REST、JDBC和許多其他來源的數(shù)據(jù)。此外,它可以將數(shù)據(jù)轉換為任何格式或從任何格式轉換數(shù)據(jù),因此它是高度可定制的。
例如,您可以構建一個管道,如
從 REST 端點讀取數(shù)據(jù) -> 將 JSON 解組為 POJO 類 -> 進行一些轉換 -> 將 POJO 編組為 XML -> 將數(shù)據(jù)發(fā)送到另一個服務
添加回答
舉報
0/150
提交
取消