Ajax+jQuery+bootstrap+Java实现异步点赞功能,并限制点击次数
来源:互联网 发布:商务礼仪权威 知乎 编辑:程序博客网 时间:2024/06/05 03:11
在很多的网站上有很多不同的点赞,我不知道他们是怎么实现的,下面我来分享一下我写的点赞实现,共大家参考下,
这是我在一个项目抽取的代码,可能有些样式会发生变化,但是功能不会影响。
网页代码:
这个是根据数据库中是否可以点赞来限制能不能点的,strlist是从java后台返回的一个请求。在这里取出点赞数和文章点赞的编号做为参数到Ajax上
<span class="pull-right"> <c:choose> <c:when test="${strlist.dzFlag==1}"> <a href="javascript:void(0)" onclick="praise('${strlist.id}','${strlist.dzCount}')" class="btn btn-default btn-xs"> 赞 <span id="praiseNo${strlist.id}"> ${strlist.dzCount} </span> </a> </c:when> <c:otherwise> <a href="javascript:void(0)" class="btn btn-default btn-xs"> 赞 <span id="strategyPraiseNo"> ${strlist.dzCount} </span> </a> </c:otherwise> </c:choose></span>
Ajax请求的Js脚本:
<script type="text/javascript"> function praise(recordNo, praiseCount) { $.ajax({ url: '${ctx}/country/pointPraise', type: 'POST', data: { 'recordNo': recordNo }, dataType: "JSON", success: function(d) { if (d.success) { var strategyPraiseNo = parseInt(praiseCount) + 1; $('#praiseNo' + recordNo).html(strategyPraiseNo) } }, error: function(XMLHttpRequest, textStatus, errorThrown) { bootbox.alert("无法连接服务器:" + textStatus); } }); }</script>
Java代码:
Dao类接口层
<pre name="code" class="java">/** * @Title: updateDzCount * @Description:点击赞后更改赞的数量 * @param mapNo * @author CHENJH * @date 2015年6月27日 */public void updateDzCount(HashMap<String, Object> mapNo);
Dao类实现层
@Overridepublic void updateDzCount(HashMap<String, Object> mapNo) {this.update("updateDzCount", mapNo);}
service类接口层
/** * @Title: updateDzCount * @Description:点击赞后更改赞的数量 * @param recordNo * @author CHENJH * @date 2015年6月25日 */public boolean updateDzCount(HashMap<String, Object> mapNo);
service类实现层
@Overridepublic boolean updateDzCount(HashMap<String, Object> mapNo) {logger.info("***** BlogServiceImpl.updateDzCount() method begin*****");boolean flag = true;try {blogDao.updateDzCount(mapNo);} catch (Exception e) {logger.error("------updateDzCount error:", e);e.printStackTrace();return false;}logger.info("***** BlogServiceImpl.updateDzCount() method end*****");return flag;}
Action类处理层代码
/** * @Title: pointPraise * @Description: 修改文章点赞 * @author CHENJH * @date 2015年6月27日 */@SkipCheck@Action("pointPraise")public void pointPraise() {String recordNo = getParam("recordNo");// 获取文章信息编号HashMap<String, Object> mapNo = getSessionValue("recordNoMap");// 得到文章点赞集合Boolean bool = false;if (mapNo != null) {if (mapNo.get(recordNo) == null) {// 判断集合中是否存在改编号点赞mapNo.put(recordNo, recordNo);bool = true;}} else {// 未进行点赞mapNo = new HashMap<String, Object>();mapNo.put(recordNo, recordNo);setSessionAttr("recordNoMap", mapNo);bool = true;}if (bool) {// 可以点赞mapNo.put("recordNo", recordNo);// 点赞更新值bool = blogService.updateDzCount(mapNo);}outputJsons("success", bool);}
MyBatis3映射文件SQL语句
<!--文章点赞后修改数量--><update id="updateDzCount" parameterType="map"> update TAB_攻略表 set 点赞次数=((select 点赞次数 from TAB_攻略表 where 记录编号 = #{recordNo,jdbcType=VARCHAR})+1) where 记录编号 = #{recordNo,jdbcType=VARCHAR} </update>
注:项目采用Maven开发,
this.update("updateDzCount", mapNo);上采用了封装的。
0 0
- Ajax+jQuery+bootstrap+Java实现异步点赞功能,并限制点击次数
- Ajax+jQuery+bootstrap+Java实现异步点赞功能,并限制点击次数
- jquery-ajax-php(内容点赞并进行cookie限制实现)
- jquery ajax之点赞功能的实现
- jQuery实现Ajax异步
- 利用 Linq+Jquery+Ajax 实现异步分页功能
- 利用 Linq+Jquery+Ajax 实现异步分页功能
- struts2+jquery实现ajax异步提交并返回json串
- java实现点名,并记录被点次数
- spring security实现限制登录次数功能
- bootstrap+jquery 点击显示大图功能
- (Jquery 功能篇) Jquery ajax异步加载
- ajax实现phpcms 点赞功能
- JQuery实现Ajax功能
- JQuery 异步实现ajax 参数
- bootstrap点击表头实现排序功能
- jQuery-简单点赞功能实现
- Java实现程序运行次数限制
- 打包时lib目录下无jar依赖包
- symbol lookup error"问题
- java 语言的基础
- 实例-访问网络图片
- Android高效显示图片详解(三)
- Ajax+jQuery+bootstrap+Java实现异步点赞功能,并限制点击次数
- 解决SwfUpload在IE10上不出现上传按钮
- Intellij Idea常用快捷键
- ORACLE数据高可用之路
- android 程序内存分析
- argparse - 命令行选项与参数解析
- DevExpress GridControl复合表头(多行表头)设置BandedGridView
- asp.net 中的gridview 之gridview 分页
- 面试之 android activity 生命周期