blog: Some changes.

Change-Id: Ic2053c65150f3cb9b7e121f4c859a45baf815a4b
diff --git a/blog/src/main/java/eu/mulk/demos/blog/PostResource.java b/blog/src/main/java/eu/mulk/demos/blog/PostResource.java
new file mode 100644
index 0000000..44410cf
--- /dev/null
+++ b/blog/src/main/java/eu/mulk/demos/blog/PostResource.java
@@ -0,0 +1,43 @@
+package eu.mulk.demos.blog;
+
+import java.util.List;
+import javax.transaction.Transactional;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+@Path("/posts")
+public class PostResource {
+
+  @GET
+  @Produces(MediaType.TEXT_PLAIN)
+  @Transactional
+  public List<Post> getAll() {
+    return Post.findAll().list();
+  }
+
+  @GET
+  @Produces(MediaType.TEXT_PLAIN)
+  @Transactional
+  @Path("/q1")
+  public List<Post> getAllWithComments() {
+    return Post.find("""
+        SELECT p FROM Post p
+          LEFT JOIN FETCH p.comments 
+        """).list();
+  }
+
+  @GET
+  @Produces(MediaType.TEXT_PLAIN)
+  @Transactional
+  @Path("/q2")
+  public List<Post> getAllWithCommentsAndCategories() {
+    return Post.find("""
+        SELECT p FROM Post p
+          LEFT JOIN FETCH p.comments
+          LEFT JOIN FETCH p.categories
+        """).list();
+  }
+
+}