完成了对于公司界面求职人推荐匹配度问题
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; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!