[seam-issues] [JBoss JIRA] (SEAMPERSIST-63) Query Interface
George Gastaldi (Commented) (JIRA)
jira-events at lists.jboss.org
Thu Nov 24 10:19:40 EST 2011
[ https://issues.jboss.org/browse/SEAMPERSIST-63?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12645442#comment-12645442 ]
George Gastaldi commented on SEAMPERSIST-63:
--------------------------------------------
What about merging http://ctpconsulting.github.com/query/1.0.0.Alpha2/index.html in ?
More info: http://ctpjava.blogspot.com/2011/11/cdi-query-module-first-alpha-released.html
> Query Interface
> ---------------
>
> Key: SEAMPERSIST-63
> URL: https://issues.jboss.org/browse/SEAMPERSIST-63
> Project: Seam Persistence
> Issue Type: Feature Request
> Reporter: Frank Cornelis
> Priority: Minor
> Attachments: 0001-Query-Interface.patch, 0002-Update-queries.patch, 0003-Pagination.patch, 0004-Query-Interface-injection.patch, 0005-javadoc.patch
>
>
> The query interface allows for easy usage of JPA queries. Basically you annotate an interface as follows:
> {code}
> public interface QueryInterface {
> @QueryMethod("person.query.all")
> List<Person> getAll();
> @QueryMethod("person.select.by.name")
> Person getPersonByName(@QueryParam("name") String name);
> @QueryMethod(value = "person.select.by.name", nullable = true)
> Person findPersonByName(@QueryParam("name") String name);
> @QueryMethod("person.query.all")
> Query getAllQuery();
>
> @QueryMethod(query = "SELECT COUNT(*) FROM Person")
> Long countAll();
> }
> {code}
> Using some inject QueryInterfaceFactory you can get a proxy on this interface that will interpret the annotations towards JPA queries. See attached patch for a basic implementation.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the seam-issues
mailing list