JavaWeb 实现点赞功能

JavaWeb 实现点赞功能

今天写了一个点赞功能
主要内容是实现一个用户对同一文章只能点赞一次,第二次就是取消赞

思路:
1.首先通过aid和uid遍历点赞表great。
2.若不能够查找到符合的great,则文章的great值+1;若能够查找到符合的great,则文章的great值-1。
3.然后更新数据库中这条数据

Dao层主要代码如下

//点赞
    public Great findGreat(Integer aid, Integer uid) {
        String hql="from Great where aid=? and uid=?";
        List list=this.getHibernateTemplate().find(hql,aid,uid);
        if(list!=null&&list.size()>0){
            this.getHibernateTemplate().delete(list.get(0));
            Answer answer=this.getHibernateTemplate().get(Answer.class, aid);
            answer.setAgreat(answer.getAgreat()-1);

            this.getHibernateTemplate().update(answer);
            return null;
        }
        else{
            Great great=new Great();
            Answer answers=this.getHibernateTemplate().get(Answer.class, aid);
            System.out.print(answers);
            great.setAnswer(answers);
            User user=this.getHibernateTemplate().get(User.class, uid);
            great.setUser(user);
            this.getHibernateTemplate().save(great);
            answers.setAgreat(answers.getAgreat()+1);

            this.getHibernateTemplate().update(answers);
            return null;
        }
    }

你可能感兴趣的:(JavaWeb 实现点赞功能)