読者です 読者をやめる 読者になる 読者になる

Getting Started with Spring Roo その2

Java Spring

先日は、Spring Rooで作成したプロジェクトのテストまでを実行してみましたGetting Started with Spring Roo その1 - etc9。これだけでは何が行われているのかわからないので詳細を見ていきましょう。

tomcatで確認

Mavenからtomcatを起動して動作確認してみます。

$ mvn tomcat:run

ブラウザから にアクセスすると以下のような画面が表示されます。

レコードを新規作成する画面も提供されます。

しかし、日本語での日付入力が上手くおこなえません・・。まあ、これは置いとくとして、confirmedを無くすことにします。

ソースの編集

ここからがRooのすごいところです。ソースの編集を行う前にRooを起動しておきます。その後、以下のようにconfirmedをコメントアウトして保存します。

@Entity
@RooEntity
@RooJavaBean
@RooToString
public class Rsvp {

    @NotNull
    @Size(min = 1, max = 30)
    private String code;

    @Size(max = 30)
    private String email;

    private Integer attending;

    @Size(max = 100)
    private String specialRequests;

    //@Temporal(TemporalType.TIMESTAMP)
    //private Date confirmed;
}

すると、なんとソースの変更を自動検知し、変更内容を各ファイルに自動反映してくれます。

[timerFactory] Managed SRC_MAIN_JAVA\com\wedding\domain\Rsvp_Roo_JavaBean.aj
[timerFactory] Managed SRC_MAIN_JAVA\com\wedding\web\RsvpController_Roo_Controller.aj
[timerFactory] Managed SRC_MAIN_WEBAPP\WEB-INF\jsp\rsvp\list.jsp
[timerFactory] Managed SRC_MAIN_WEBAPP\WEB-INF\jsp\rsvp\show.jsp
[timerFactory] Managed SRC_MAIN_WEBAPP\WEB-INF\jsp\rsvp\create.jsp
[timerFactory] Managed SRC_MAIN_WEBAPP\WEB-INF\jsp\rsvp\update.jsp
[timerFactory] Managed SRC_MAIN_JAVA\com\wedding\domain\Rsvp_Roo_ToString.aj

確認

では、変更後の反映を見てみます。

$ mvn tomcat:run

登録画面には以下のようにソースのコメントアウトが反映されています。

登録後、一覧画面に反映されています。


このように、Spring Roo は、単なるソース生成ツールではなく、ラウンドトリップツールなのです。
Getting Started with Spring Roo その3 - etc9に続く。