[英]Storing filter criteria in database
我有一個基於Javascript的UI和基於Jersey的REST服務的Web應用程序。 UI具有某些功能,需要復雜的搜索條件才能檢索數據。 UI用各種參數定義了搜索條件,但是對本次討論最重要的是這一點。 用戶可以創建這樣的過濾器-
1. ( Receiver_Email_ID CONTAINS xyz@abc.com AND
2. Sender_Email_ID CONTAINS blocked@abc.com ) OR
3. ( Origin_Domain IS BADDOMAIN.com AND
4. Email_has_attachment == true )
數字1到4僅表示這些是UI中的不同行,並且這里的順序很重要。 UI以JSON格式表示,可以在服務器上以POJO的形式接收。 我需要能夠存儲此條件,以便可以使用過濾器重新填充UI並可以執行該UI。 與其他幾個表一起,我計划使用以下數據庫表來存儲該表-
rule_id
rule_seq
op_paren
left_opr
operator
right_opr
cl_paren
and_or
它看起來正確還是我可以改善它? 我的另一個選擇是將整個JSON存儲在嵌入式文檔數據庫(例如OrientDB)中。
從形式上看,每個搜索條件都是抽象語法樹。它不適合您的結構。 從這個角度來看,您關於在OrientDB中保存搜索的想法非常適合任務,但實現起來並不簡單。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.