yetang307

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  129 随笔 :: 0 文章 :: 1 评论 :: 2374 阅读
复制代码
package com.itheima.mapper;

import com.itheima.pojo.News;
import com.itheima.pojo.Post;
import org.apache.ibatis.annotations.*;

import java.util.List;

public interface PostMapper {

    @Select("SELECT * from post")
    List<Post> selectPost();

    //int selectTotalCountByCondition(Post post);

    List<Post> selectPostByCondition(Post post);
    List<Post> selectPostByConditionAndComId(@Param("post") Post post,@Param("CompanyId")Integer CompanyId);

    @Select("select * from post where id=#{id}")
    Post selectPosrById(Integer id);

    @Select("select  * from news where seekerId=#{seekerId} and postId=#{postId}")
    News selectNewsByIds(@Param("postId") Integer postId,@Param("seekerId")Integer seekerId);

    @Update("update news set collect=#{isCollect} where postId=#{postId} and seekerId=#{seekerId}")
    int updateNewsCollectByIds(@Param("postId") Integer postId,@Param("seekerId")Integer seekerId,@Param("isCollect") Integer isCollect);

    @Insert("insert into news  values(null,#{postId},#{seekerId},#{isState},#{isCollect})")
    int creatNewsByIds(@Param("postId") Integer postId,@Param("seekerId")Integer seekerId,@Param("isState") Integer isState,@Param("isCollect") Integer isCollect);

    @Delete("DELETE from news where postId=#{postId} and seekerId=#{seekerId}")
    int deleteNewsByIds(@Param("postId") Integer postId,@Param("seekerId")Integer seekerId);

    @Select("select postId from news where seekerId=#{SeekerId} and collect=1")
    List<Integer> selectNewsCollectPostIdsBySeekerId(int SeekerId);

    @Select("select * from news where seekerId=#{SeekerId} and state=1 or state=2")
    List<News> selectNewsCommitPostIdsBySeekerId(int SeekerId);
    List<Post> selectCollectPostByConditionAndPostIds(@Param("PostIds") List<Integer> PostIds,@Param("post") Post post);

    List<Post> selectCommitPostByConditionAndPostIds(@Param("PostIds") List<Integer> PostIds,@Param("post") Post post);

    @Update("update news set state=#{isCommit} where postId=#{postId} and seekerId=#{seekerId}")
    int updateNewsCommitByIds(@Param("postId") Integer postId,@Param("seekerId")Integer seekerId,@Param("isCommit") Integer isCommit);

    @Update("update post set name=#{name},description=#{description},skillRequire=#{skillRequire},money=#{money},degreeRequire=#{degreeRequire} where id=#{id}")
    void updatePostById(Post post);

    @Insert("insert into post values(null,#{companyId},#{name},#{description},#{skillRequire},#{money},#{degreeRequire})")
    void addCompanyPost(Post post);
}
复制代码

SQl

复制代码
package com.itheima.web;

import com.alibaba.fastjson.JSON;
import com.itheima.mapper.PostMapper;
import com.itheima.pojo.Company;
import com.itheima.pojo.Post;
import com.itheima.pojo.Seeker;
import com.itheima.pojoComplex.*;
import com.itheima.service.CompanyService;
import com.itheima.service.PostService;
import com.itheima.service.SeekerService;
import com.itheima.service.impl.CompanyServiceImpl;
import com.itheima.service.impl.PostServiceImpl;
import com.itheima.service.impl.SeekerServiceImpl;
import com.itheima.util.Hashmap;
import com.itheima.util.MyTextComparator;
import com.itheima.util.PDFReader;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;

@WebServlet("/post/*")
public class PostServlet extends BaseServlet {
    private PostService postService = new PostServiceImpl();
    private SeekerService seekerService = new SeekerServiceImpl();
    private CompanyService companyService= new CompanyServiceImpl();

    public void selectPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
        System.out.println("selectPost...");

        BufferedReader br = request.getReader();
        String params = br.readLine();
        PostBean postBean = JSON.parseObject(params, PostBean.class);

        Seeker seeker = seekerService.selectByName(postBean.getUsername());

//        List<Post> posts = postService.selectPost();

        List<Post> posts = postService.selectPostByCondition(postBean.getPost());

        Map<Post,Double> postIntegerMap =new HashMap<>();
        for (int i = 0; i < posts.size(); i++) {
            Double cosineSimilarity = MyTextComparator.getCosineSimilarity(seeker.getSkill(), posts.get(i).getSkillRequire());
            postIntegerMap.put(posts.get(i),cosineSimilarity);
        }
        List<Post> hsahpaixu = Hashmap.hsahpaixu(postIntegerMap);

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

        List<Post> 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<Post> postBeenSum =new PostBeenSum<>();
        postBeenSum.setRows(postBypage);
        postBeenSum.setTotalCount(hsahpaixu.size());

        response.setContentType("text/json;charset=utf-8");
        String jsonString = JSON.toJSONString(postBeenSum);
        //System.out.println(jsonString);
        response.getWriter().write(jsonString);
    }

    public void selectPostAndCompanyById(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
        System.out.println("selectPostAndCompanyById...");

        BufferedReader br = request.getReader();
        String params = br.readLine();
        Integer postId = JSON.parseObject(params, Integer.class);
        Post post = postService.selectPosrById(postId);
        Company company = companyService.selectCompanyByPostId(post.getCompanyId());

        PostCompany postCompany=new PostCompany(post,company);

        response.setContentType("text/json;charset=utf-8");
        String jsonString = JSON.toJSONString(postCompany);
        //System.out.println(jsonString);
        response.getWriter().write(jsonString);
    }

    public void postcollect(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
        System.out.println("postcollect...");

        String seekerName = request.getParameter("seekerName");
        String postId = request.getParameter("postid");
        String isCollect = request.getParameter("collect");

        Seeker seeker = seekerService.selectByName(seekerName);

        int is = postService.updateOrdeleteNewsByIdsCollect(Integer.parseInt(postId), seeker.getId(), Integer.parseInt(isCollect));

         if(is==-1)
        {
            response.getWriter().write("error1");
        }else {
            response.getWriter().write("right");
        }

        response.setContentType("text/json;charset=utf-8");
        //String jsonString = JSON.toJSONString(postCompany);
        //System.out.println(jsonString);
        //response.getWriter().write(jsonString);
    }
    public void selectCollectPostBySeekerId(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
        System.out.println("selectCollectPostBySeekerId...");

        BufferedReader br = request.getReader();
        String params = br.readLine();
        PostBean postBean = JSON.parseObject(params, PostBean.class);

        Seeker seeker = seekerService.selectByName(postBean.getUsername());

        List<Post> posts = postService.selectCollectPostByConditionAndPostIds(seeker.getId(), postBean.getPost());

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

        List<Post> postBypage=new ArrayList<>();
        int length=(currentPage-1)*pageSize+pageSize;
        if(length>posts.size())
            length=posts.size();
        for (int i = (currentPage-1)*pageSize; i <length ; i++) {
            postBypage.add(posts.get(i));
        }

        PostBeenSum<Post> postBeenSum =new PostBeenSum<>();
        postBeenSum.setRows(postBypage);
        postBeenSum.setTotalCount(posts.size());

        response.setContentType("text/json;charset=utf-8");
        String jsonString = JSON.toJSONString(postBeenSum);
        //System.out.println(jsonString);
        response.getWriter().write(jsonString);
    }

    public void postcommit(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
        System.out.println("postcommit...");

        String seekerName = request.getParameter("seekerName");
        String postId = request.getParameter("postid");
        String isCommit = request.getParameter("commit");

        Seeker seeker = seekerService.selectByName(seekerName);

        int is = postService.updateOrdeleteNewsByIdsCommit(Integer.parseInt(postId), seeker.getId(), Integer.parseInt(isCommit));

        if(is==-1)
        {
            response.getWriter().write("error1");
        }else {
            response.getWriter().write("right");
        }

        response.setContentType("text/json;charset=utf-8");
        //String jsonString = JSON.toJSONString(postCompany);
        //System.out.println(jsonString);
        //response.getWriter().write(jsonString);
    }


    public void selectCommitPostBySeekerId(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
        System.out.println("selectCommitPostBySeekerId...");

        BufferedReader br = request.getReader();
        String params = br.readLine();
        PostBean postBean = JSON.parseObject(params, PostBean.class);

        Seeker seeker = seekerService.selectByName(postBean.getUsername());

        List<PostState> postStates = postService.selectCommitPostByConditionAndPostIds(seeker.getId(), postBean.getPost());

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

        List<PostState> postBypage=new ArrayList<>();
        int length=(currentPage-1)*pageSize+pageSize;
        if(length>postStates.size())
            length=postStates.size();
        for (int i = (currentPage-1)*pageSize; i <length ; i++) {
            postBypage.add(postStates.get(i));
        }

        PostBeenSum<PostState> postBeenSum =new PostBeenSum<>();
        postBeenSum.setRows(postBypage);
        postBeenSum.setTotalCount(postStates.size());

        response.setContentType("text/json;charset=utf-8");
        String jsonString = JSON.toJSONString(postBeenSum);
        //System.out.println(jsonString);
        System.out.println(jsonString);
        response.getWriter().write(jsonString);
    }


}
复制代码

SQL的实现

今日完成:

1.对于个人端的SQl的编辑

2.对于SQl与页面展示的实现

3.完善数据库的信息,三个表添加联系,并增加一部分数据列

明日目标:

1.对于信息的内容的SQl的完善

2.对页面进行美化,使用统一风格

3.对于匹配度的算法进行特别情况的修改,优化

 

posted on   椰糖  阅读(22)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
点击右上角即可分享
微信分享提示