[seam-issues] [JBoss JIRA] Updated: (SEAMPERSIST-63) Query Interface

Frank Cornelis (JIRA) jira-events at lists.jboss.org
Sat Aug 6 10:03:28 EDT 2011


     [ https://issues.jboss.org/browse/SEAMPERSIST-63?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Frank Cornelis updated SEAMPERSIST-63:
--------------------------------------

    Attachment: 0003-Pagination.patch


> 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
>
>
> 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.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the seam-issues mailing list