ITS-CDA-Core / workshop_FY15

0 stars 0 forks source link

[Dev]定番構成のサンプルアプリの開発 #10

Open imaizm opened 9 years ago

imaizm commented 9 years ago

Java-RDBによる標準的な構成のWebアプリを開発する。

■前提事項

■基盤構成等

■当サンプルアプリの資源ルート workshop_FY15/src/1st-app/

■画面

画面名 URL 対応課題
話題一覧 /
話題情報入力(修正) /ChatRoomInput #27
話題情報確認 /ChatRoomConfirm #28
(話題別)メッセージ一覧 /ChatMessageList #29
(話題別)メッセージ入力(修正) /ChatMessageInput #30
(話題別)メッセージ確認 /ChatMessageConfirm #31
ログイン /Login
ユーザ情報入力 /UserInfoInput #32
ユーザ情報確認 /UserInfoConfirm #33

screentrans

imaizm commented 9 years ago

下記のEntity・DAOを作成した。

それぞれの構成は、例えばChatRoomの場合

をセットで作成する。

対応するデータベーステーブルは、アプリ起動時に自動的に作成される。 (Entity定義がDBにフォワードされる)

また画面からは利用しないが、簡易入出力のためにそれぞれWeb APIを作成している。

画面が出来るまではこのAPIを利用しデータ投入すると良い。 入出力時のサンプルはAPIのソースコードのコメントに記述している。

imaizm commented 9 years ago

「話題一覧画面」を一時作成した。

対応資源は

対応URLは /

となる。

起動直後にアクセスすると、データが入っていないため、 「Chat Room List」の下には何も表示されない。

まだ入力画面が未作成のため、 org.sample.api.ChatRoomRestController を利用しデータ投入をすると、 「Chat Room List」の下にChat Room Entityデータが表示される。 2015-05-04 4 47 25

imaizm commented 9 years ago

Spring Securityを追加した。

認証が必要な画面にアクセスすると、 もしくは、「/login」にアクセスすると、 ログイン画面が表示される。 2015-05-04 4 55 54

こちらはまだ、作成したものではなく、Spring Securityに含まれているデフォルトのログイン画面である。

認証情報は、org.sample.domain.Userに相当するEntity情報を元に照合されるようになっている。

現状、アプリ起動直後はUser情報が空のため、ひとまず org.sample.api.UserRestController を利用しデータ投入すればログインを試すことが出来る。

ログインをすると、「話題一覧画面」上部の「未ログイン」が「ログイン済:」+ユーザ名に変更される。 2015-05-04 4 56 45

認証が必要な画面とは、 org.sample.SecurityConfigクラスの void configure(HttpSecurity http)メソッドの http.authorizeRequests().antMatchers(...)メソッド内に列挙されているURL「以外」の画面となる。

よって、認証不要としたい画面については、上記メソッド内に対応するURLを追加する必要がある。

imaizm commented 9 years ago

画面一覧を修正、画面遷移図を追加。 (最上部の課題記述)

家にMS Officeがなく、OpenOfficeで画面遷移図描いたら辛かった・・・。