2016-06-21 54 views
0

LeaveType表冬眠選擇數據根據用戶輸入,其中用戶輸入是沿着幾個逗號分隔的數據

leave_name  emp_gender employment_type  max_allowed_leave 
Sick Leave  male,female permanent,contractual 10 
Maternity Leave female  permanent    240 
Annual Leave  male,female permanent    15 
Paternity Leave male   permanent    30 

我想根據employment_type創建一個下拉列表,並gender.If員工是女性,然後永久價值的下降將是病假,產假和年度,以及只有病假會顯示僱員誰是合同男性和女性員工。如何在hibernate.NB中這樣做:emp_gender和employment_type字段中的數據是分開使用逗號。 我想有點像以下:

Query query = session.createQuery("from LeaveTable where empGender = :empGender and employmentType =:employmentType "); 
query.setParameter("empGender ", currentUser.getGender()); 
query.setParameter("employmentType ", currentUser.getemploymentType()); 
List list = query.list(); 

對於女性和永久離開類型將是:1.Sick 2.Maternity 3.Annual.Need建議,以解決休眠的問題。

回答

0

您沒有遵循數據庫規範化。您需要將數據分隔到多個表中,以便進行高效可靠的查詢。對於上面的表格,你需要使用'LIKE'操作符,否則你最終什麼也得不到。

+0

我不允許使用規範化。我想在java中使用逗號分隔符作爲empgender字段。 –

+0

然後您需要使用LIKE運算符 –