网站开发和嵌入式开发今日疫情最新数据
点赞是一个互动性很强的功能,网站加入点赞可以增强用户之间的亲密度,可以利用点赞排出受欢迎文章或者其他的列表,所以今天教大家如何做一个类似于微博、QQ空间的点赞功能
需求分析:
首先要明确这个功能是需要登录的,一篇文章只允许一个用户点一次赞,并且在前端显示点赞人的个人信息,包括头像和昵称什么的
开发过程:
一、数据库设计
只需要在你需要点赞的文章表或者其他表添加一列zanList,将类型设置为mediumtext,就OK了
二、后端开发
1、点赞动作
(1)获取需要用到的值:文章id、用户id(凡是唯一性即可)
(2)获取数据库中已点赞列表select zanList from article where 文章id=传过来的值
(3)拼接一个新的字符串、//从数据库获取的赞列表
String zanList=获取的值
//用户名或id
String userid=传过来的用户id
//拼接sql字符串,各个用户id用逗号隔开,如果数据库为空则为用户名加逗号,否则就原有的列表加用户名加逗号
if(userlist==null){
article.setZanList(userid+",");
}else{
article.setZanList(userlist+userid+",");
}
(4)更新赞列表update article set zanList=传过来更新好的值 where 文章id=传过来的值
2、获取点赞列表
(1)文章打开前获取赞的列表select zanList from article where 文章id=传过来的值
(2)将获取的string字符串通过逗号转化为字符串数组//将点赞列表排序成数列
String[] zanList;
//如果为空
if(article.getZanList()==null){
//设置赞的总数
article.setZanCount(0);
}else{
//如果不为空将获取的string字符串通过逗号转化为字符串数组
zanList=article.getZanList().split(",");
//查询当前用户名是否点过赞
for(int i=0;i
if(ip.equals(zanList[i])==true){
//点过赞设置前端显示属性
//..
//..
break;
}else{
//上述遍历完没点过赞前端显示属性
//...
//...
}
//获取点赞列表的个人信息
for(int i=0;i
//通过遍历zanlist的id挨个取出头像和用户名
//select touxiang,nicheng from user where id=zanList[i];
//然后放到arrayList里就可以了
}
//设置赞的总数
article.setZanCount(zanList.length);
三、前端开发
这里可以网上找些模板就可以了,比如我用的这个:http://www.funyan.cn/fman/g/173.html,点赞列表就用foreach遍历就可以了。
这样就实现Java做一个类似于微博QQ空间点赞的功能了,至于怎么取消赞什么的我就不说了,因为我还没有这个需求,逻辑什么的都差不多,不懂得可以联系我或者在下方评论,希望可以帮到你
你还没有登录,请先使用 QQ登录 或 注册!
文章评论
发表评论