Mam usługę usługi REST, aby uzyskać dostęp do informacji przechowywanych w bazie danych.REST PathParam z wieloma typami
Chciałbym móc uzyskać dostęp na podstawie elementu id
lub name
.
Więc powiedzmy, że mam rekord
name | id | description
mine | 65 | "my thing"
Chciałbym być w stanie uzyskać dostęp do tego elementu przez albo:
myurl.com/items/65
myurl.com/items/mine
Używam Jersey (biblioteki Java) . Czy istnieje sposób, w jaki można zdefiniować PathParam, aby zaakceptować int lub String BEO using object.typeOf()?
Chciałbym tego uniknąć:
@PATH("/items/{identifier}
@GET
public String getItem(@PathParam("identifier") Object identifier){
if(identifier.typeOf().equals(String.typeOf()))....
}
Dzięki
Masz na myśli '.class' zamiast' .typeOf() '? – Jeremy
Byłem po prostu wolny tworząc bit typeOf(). Odpowiedź Mike'a poniżej pokazuje poprawną składnię Javy. Ale dobry połów. Dzięki! –
Jochen wspomniał o tym poniżej, ale warto podkreślić: cały ten system jest skazany na niepowodzenie, jeśli można użyć nazwy "4711". Upewnij się więc, że to się nie wydarzy! :) – MatrixFrog