javaのパッケージ階層について

Seasarのパッケージ階層

    examples.aaa
    examples.aaa.web.xxx
    examples.aaa.web.yyy
    examples.aaa.entity
    examples.aaa.dao
    examples.aaa.dto
    examples.aaa.service
    examples.aaa.util
    examples.aaa.helper
    examples.aaa.interceptor
    examples.aaa.converter
    examples.aaa.validator 
examples.aaa.web.xxxや、examples.aaa.web.yyy
サブアプリケーションパッケージとしている。

xxxやyyyがサブアプリケーション名。ここでは画面単位で考えている。一覧画面、詳細画面など。
それに関連するクラスをこのパッケージに放り込むことになっている。

今の仕組みならば、ActionとFormになる。

entity
テーブルと1:1に対応するEntityクラス
dao
Entityと1:1に対応するDaoクラス
dto
dtoクラスを格納する。Data Transfer Object。クライアントとAP間のデータやり取りに使う。Strutsを使えば、そこはActionFormになると思うので、AP内でのデータのやり取りに使う。つまり、ActionFormから値を取り出し、ロジックに突っ込むところで使う。
service
複数サブアプリケーションから共通に使われるユースケースを実装するServiceクラスを格納。
util
staticなメソッドで構成されるutilクラスを格納する。

自分のよりどころがないので、参考にしよう。