1. 程式人生 > >黑馬十次方專案day02-07之推薦職位和最新職位查詢

黑馬十次方專案day02-07之推薦職位和最新職位查詢

文章目錄

需求分析



通過檢視最新職位和推薦職位的API, 兩個介面均為get請求. 無需傳遞引數.

dao

com.tensquare.recruit.dao.RecruitDao

/**
 * 資料訪問介面
 * @author Administrator
 *
 */
public interface RecruitDao extends JpaRepository<Recruit,
String>
,JpaSpecificationExecutor<Recruit>{ /** * 方法名: findTopByStateOrderByCreatetimeDesc * 方法描述: 查詢最新的職位 top6 代表只查詢前6個 * 修改日期: 2019/1/11 18:44 * @param state * @return java.util.List<com.tensquare.recruit.pojo.Recruit> * @author taohongchao * @throws */
public List<Recruit> findTop6ByStateOrderByCreatetimeDesc(String state); /** * 方法名: findTop6ByStateNotOrderByCreatetimeDesc * 方法描述: 查詢前6個最新的職位,按照時間倒序排序 * 修改日期: 2019/1/11 18:46 * @param state * @return java.util.List<com.tensquare.recruit.pojo.Recruit> * @author taohongchao * @throws */
public List<Recruit> findTop6ByStateNotOrderByCreatetimeDesc(String state); }

service

com.tensquare.recruit.service.RecruitService

@Service
public class RecruitService {

    // 推薦職位的值為2
    private static final String RECOMMED = "2";
    // 關閉職位的值為0
    private static final String CLOSEJOB = "0";
    @Autowired
	private RecruitDao recruitDao;
	
	@Autowired
	private IdWorker idWorker;

	public List<Recruit> recommend(){
	    return recruitDao.findTop6ByStateOrderByCreatetimeDesc(RECOMMED);
    }

    public List<Recruit> newlist(){
	    return recruitDao.findTop6ByStateNotOrderByCreatetimeDesc(CLOSEJOB);
    }
}

Controller

@RestController
@CrossOrigin
@RequestMapping("/recruit")
public class RecruitController {

	@Autowired
	private RecruitService recruitService;

	/**
	 * 方法名: recommend
	 * 方法描述: 查詢推薦的職位
	 * 修改日期: 2019/1/11 19:01
	  * @param
	 * @return entity.Result
	 * @author taohongchao
	 * @throws
	 */
    @RequestMapping(value = "/search/recommend", method = RequestMethod.GET)
    public Result recommend() {
        return new Result(true, StatusCode.OK, "查詢成功", recruitService.recommend());
    }
    /**
     * 方法名: newlist
     * 方法描述: 查詢最新的職位
     * 修改日期: 2019/1/11 19:01
      * @param
     * @return entity.Result
     * @author taohongchao
     * @throws
     */
    @RequestMapping(value = "/search/newlist",method = RequestMethod.GET)
    public Result newlist(){
        return new Result(true, StatusCode.OK, "查詢成功", recruitService.newlist());
    }
 }

測試

啟動專案,進行測試
在api中傳送請求,響應的資料如下

可以看到createtiem時間欄位, 格式需要處理.
由於預設使用的是jackson處理的json資料.因此需要在jackson的實體類上的屬性,加上日期格式化的註解

 @JsonFormat(pattern = "yyyy-MM-dd")
 private java.util.Date createtime;//建立日期

修改後,時間欄位為處理後的格式了.