マルチ条件のファジイクエリの実装

1978 ワード

この2,3日ランダム出題の機能を作り,多条件曖昧クエリーを用いて記録した.

インタフェース
 List selectLike(Map map);

サービス層
public List selectLike(Map map) {
        String a = map.get("questionName");
        String b = map.get("choiceDegree");
        String c = map.get("typeName");
        Integer d = Integer.parseInt(map.get("number"));
        System.out.println(a + b + c + d);
        Map map1 = new HashMap();
        map1.put("questionName", a);
        map1.put("choiceDegree", b);
        map1.put("typeName", c);
        List list = choiceQuestionEntityMapper.selectLike(map1);
        List list3 = new ArrayList(); //       
        List list2 = new ArrayList<>();//       
        while (list2.size() < d) {
            int i = (int) (Math.random() * list.size());//     
            if (!list2.contains(i)) {
                list2.add(i);
            }
        }
        for (int j = 0; j < list2.size(); j++) {
            list2.get(j);
            list3.add(list.get(list2.get(j)));
        }
        return list3;
    }
}