Data Transfer Object(DTO)はデザインパターンの一種で、アプリケーションソフトウェアのサブシステム間でデータを転送するのに使う。過去、J2EE第一版においてはValue Objects(VO)と呼ばれていた。なお、マーティン・ファウラーが著書「Patterns of Enterprise Application Architecture」において示した「Value Object」はこれとは意味が異なるマーティン・ファウラーのblikiのValue Objectの解説(英語)。Data Access Object と組み合わせて、関係データベースからデータを検索するのに使うことも多い。

Data Transfer Object とビジネスオブジェクトや Data Access Object との違いは、DTO が自身のデータの格納と取り出し機能(アクセサメソッドとミューテータメソッド)しか持たない点である。

脚注

外部リンク Core J2EE Patterns - Transfer Object Core J2EE Patterns - Data Access Object Abuses of DTO pattern in Java World Data Transfer Object - Microsoft MSDN Library DTO(Data Transfer Object)の必要性 アーキテクト360