我这里是利用Hibernate在获取Answer的时候同时获取相关联的User和Paste(以及Paste关联的User)然后就直接设置相对应的数据,不知道这样好不好。
因为设置了Answer的solve为1,所以在获取最佳回复的时候就通过solve来进行排序就能把被采纳了的回复放在第一个。
(本来还想像很多网站的评论那样在上面单独加一个热评然后下面正常显示,但是因为不知道在jsp里面怎么判断一个对象是否为null就没弄了,先把后面的学完)。
//给回复者加coin
Answer answer = answerDao.findAnswerByIdReturnAnswer(answerid);
answer.setSolve(1);
answer.getUser().setCoin(answer.getUser().getCoin()+answer.getPaste().getOffer());
answer.getPaste().getUser().setCoin(answer.getPaste().getUser().getCoin()-answer.getPaste().getOffer());