qwb0614

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  187 随笔 :: 0 文章 :: 0 评论 :: 2048 阅读

完成了对于公司界面求职人推荐匹配度问题

 

复制代码
public void selectAllSeekers(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException, ParseException {
        System.out.println("selectAllSeekers...");
        BufferedReader br = request.getReader();
        String params = br.readLine();
        ComSeekers comSeekers = JSON.parseObject(params, ComSeekers.class);

        Company company = service.selectCompanyByName(comSeekers.getCompanyName());

        List<Seeker> seekers = seekerService.selectAllByCondition(comSeekers.getSeeker());

        Map<Seeker,Double> postIntegerMap =new HashMap<>();
        for (int i = 0; i < seekers.size(); i++) {
            Double cosineSimilarity = MyTextComparator.getCosineSimilarity(company.getIntroduction(), seekers.get(i).getSkill());
            postIntegerMap.put(seekers.get(i),cosineSimilarity);
        }

        List<SeekerValue> hsahpaixu = Hashmap.hsahpaixu2(postIntegerMap);

        String _currentPage = request.getParameter("currentPage");
        String _pageSize = request.getParameter("pageSize");
        int currentPage = Integer.parseInt(_currentPage);
        int pageSize = Integer.parseInt(_pageSize);

        List<SeekerValue> postBypage=new ArrayList<>();
        int length=(currentPage-1)*pageSize+pageSize;
        if(length>hsahpaixu.size())
            length=hsahpaixu.size();
        for (int i = (currentPage-1)*pageSize; i <length ; i++) {
            postBypage.add(hsahpaixu.get(i));
        }
        PostBeenSum<SeekerValue> postBeenSum =new PostBeenSum<>();
        postBeenSum.setRows(postBypage);
        postBeenSum.setTotalCount(hsahpaixu.size());

        response.setContentType("text/json;charset=utf-8");
        String jsonString = JSON.toJSONString(postBeenSum);

        response.getWriter().write(jsonString);
    }
复制代码
复制代码
public static  List<SeekerValue> hsahpaixu2(Map<Seeker, Double> map)
    {
        //将map.entrySet()转换成list
        List<Entry<Seeker, Double>> list = new ArrayList<Entry<Seeker, Double>>(map.entrySet());
        Collections.sort(list, new Comparator<Entry<Seeker, Double>>() {
            //降序排序
            @Override
            public int compare(Entry<Seeker, Double> o1, Entry<Seeker, Double> o2) {
                //return o1.getValue().compareTo(o2.getValue());
                return o2.getValue().compareTo(o1.getValue());
            }
        });
//        List<Seeker> posts =new ArrayList<>();
        List<SeekerValue> seekerValues=new ArrayList<>();
        for (Entry<Seeker, Double> mapping : list) {
            SeekerValue seekerValue=new SeekerValue();
            seekerValue.setSeeker(mapping.getKey());
            seekerValue.setValue(mapping.getValue());
            seekerValues.add(seekerValue);
//            posts.add(mapping.getKey());
            System.out.println(mapping.getKey() + ":" + mapping.getValue());
        }
        return seekerValues;
    }
复制代码

 

posted on   嘎嘎鸭1  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示