4. 今日のお話
• Spring Boot概要
• RESTについて色々
• Richardson Maturity Model
• Spring HATEOAS / Spring Data REST
• JSON Patch
• Spring Sync
• Securing REST Serivces
• Spring Security OAuth / Spring Session
43. BookmarkRepository
public interface BookmarkRepository
extends JpaRepository<Bookmark, Long> {
!
Collection<Bookmark>
findByAccountUsername(String username);
!
}
Spring Data JPAを使用。
CRUDを簡単に使える。
命名規約に対応したクエリが
実行されるメソッド(実装不要)
SELECT b
FROM Bookmark b
WHERE
b.account.username= :username
166. リソースアクセス
$ curl -v http://localhost:8080/bookmarks
(略)
< HTTP/1.1 401 Unauthorized
(略)
< WWW-Authenticate: Bearer realm="bookmarks",
error="unauthorized", error_description="An
Authentication object was not found in the
SecurityContext"
(略)
{"error_description": "An Authentication object
was not found in the SecurityContext","error":
"unauthorized"}
170. いつも通り起動
$ mvn spring-boot:run
… (略)
2014-12-13 12:07:47.833 INFO --- [mple.App.main()]
s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started
on port(s): 8443/https
2014-12-13 12:07:47.836 INFO --- [mple.App.main()]
com.example.App : Started App in
5.322 seconds (JVM running for 10.02)
171. いつも通り起動
$ mvn spring-boot:run
… (略)
2014-12-13 12:07:47.833 INFO --- [mple.App.main()]
s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started
on port(s): 8443/https
2014-12-13 12:07:47.836 INFO --- [mple.App.main()]
com.example.App : Started App in
5.322 seconds (JVM running for 10.02)
184. public class SessionInitializer extends
AbstractHttpSessionApplicationInitializer {
!
public SessionInitializer() {
super(SessionConfig.class);
}
}