JEST uses HTTP as communication protocol and HTTP URI as its command syntax.
A JEST URI introduces specific syntax rule on a standard URI to interpret the commands.
http://www.jpa.com/jest/query?q=select
p from Person p
http://www.jpa.com/jest/query?q=select
p from Person p where p.name=:name&name=John
http://www.jpa.com/jest/query?q=select
p from Person p where p.name=:name and age > :age&name=John&age=20
http://www.jpa.com/jest/query/single?q=select
p from Person p where p.name=:name&name=John
http://www.jpa.com/jest/query/single/named?q=QueryPersonByName&name=John
or
http://www.jpa.com/jest/query?q=select
p from Person p where p.first=:first and p.last=:last&first=John&last=Doe
uri := http://host[:port]/action/[qualifier]*['?'[parameter]'&'*] qualifier := qualifier-key['='qualifier-value] parameter := parameter-key'='parameter-value action : denotes the JPA operation to be performed. For example, find, query, insert, merge, remove, properties, domain etc. qualifier : qualifies the action. specific to the action, e.g. a query action can qualify with query/single to get a single result as in above ex09. zero or more qualifier can be specified. qualifier may have value separated by '=' each qualifier is separated by '/' qualifier ordering is not significant (see above ex11.1 and ex11.2) parameter : parameter for the action For example, JPQL string is a parameter for a query action zero or more parameter can be specified parameter may have value separated by '=' each parameter is separated by '&' first parameter can have special semantics based on action, e.g. first parameter for 'query' is JPQL string, or first parameter for 'find' is the entity name, etc.