Bir arama modeli ile web uygulaması üzerinde çalışıyoruz.Bir tasarım modeli için sor
Arama uygulamasında, istemciden istek parametrelerini yakalar ve daha sonra arama için bir hazırda-arama sorgusu oluşturur.
Şimdi sorun, uçlardan gelen parametrelerin değişebilir olmasıdır !. biz kabul
Tüm parametreler aşağıdaki gibi sıralanmıştır:
1) anahtar kelime.
Aramak için kullanılan anahtar sözcük (ler), yalnızca bu parametre iletilse bile bir arama isteği işlenebilir. Geçerli örnek:
/search?keyword="test"
2) lowleftX, lowleftY, upperrightX, upperrightY.
Bu dört parametrenin aynı anda veya asla oluşmaması gerekir. Bu dört paragaranın lucene'de TermRangeQuery için kullanılması gerekir. Bunlardan biri ortaya çıkarsa, kalan üçü de oluşmalıdır. Ve bu dört parametre, "anahtar kelime" ile eşzamanlı olarak gerçekleşebilir. geçerli örneği: Bu arama kapsamını sınırlamak için kullanılır
/search?lowleftX=10&lowleftY=10&upperrightX=40&upperrightY=30
/search?lowleftX=10&lowleftY=10&upperrightX=40&upperrightY=30&keyword="test"
3) kategorisi (sadece) özel bir kategori içinde arama.
4) başlangıç Bu iki parametre çağrı için kullanırken
sınırlar.
5) returnFields
Dizindeki Saklı ise (dizinden retivived edilecek returnFields) ve müşteri geri dönün.
Bu nedenle, tahmin sözdizimini kullanarak sorgu oluşturma konusunda hiçbir fikrim yok (eğer .... else .... if ...).
Herkes nasıl anlatabilir?