プロジェクトでも必ずと言っていいほど「ファイルダウンロード」の要件は挙がります。 今回はExcel/CSV/PDFの3種のダウンロードについて実装方法を考えてみます。 ファイルダウンロードの設計 JAX-RSによるファイルのダウンロード JAX-RSではリクエストMediaTypeに応じてある程度の型であれば型に応じてレスポンスに変換する機能があります。 Excel/CSV/PDFに関してデフォルトでは無いためjavax.ws.rs.ext.MessageBodyWriterを実装したクラスを作成することでカスタマイズします。 一覧取得の処理を集約する ダウンロードファイルの種類に合わせて1つずつ一覧取得の実装するとメンテナンスのコストが上がります。 一覧取得の処理1つで ダウンロードファイルの種類すべてをまかなえることが望ましいです。 実現するために以下のように実装します。 Resour