Ajax模拟视频点赞功能

前台

<%--Created by IntelliJ IDEA.User: xxDate: 2023/9/4Time: 10:00To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title><script src="js/jquery-3.7.0.js"></script><script>// 1.原始方式/*function like(){window.location.href = "likeServlet"}*/// 2.原生JS实现异步function like(){//获取XmlHttpRequest对象var xhr = new XMLHttpRequest();//设置请求xhr.open("get","likeServlet");//发送请求xhr.send();xhr.onreadystatechange = function (){//获取状态码if ( xhr.readyState== 4){var msg = xhr.responseText;document.getElementById("num").innerText = msg;}}}// 3.第一次封装/*$(function () {//点击事件$("#btn").click(function () {$.ajax({url:"likeServlet",data:null,type:"get",async:true,dataType:"text",success:function (msg) {$("#num").text(msg);}});});});*/// 4.第二次封装/*$(function (){$("#btn").click(function (){$.get("likeServlet",null,function (date) {$("#num").text(date)},"text");});})*/</script>
</head>
<body>
<video src="" controls></video>
<input type="button" id="btn" onclick="like()" value="点赞"></input>当前点赞量为:
<span style="color: red" id = "num">${count}
</span>
</body>
</html>

servlet

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;@WebServlet("/likeServlet")
public class LikeServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//将获取的点赞了存储到ServletContextServletContext servletContext = getServletContext();//获取当前点赞量Integer count =(Integer) servletContext.getAttribute("count");//如果是第一个点赞if (count == null){count = 1;} else {count++;}servletContext.setAttribute("count",count);/*原生js*//*resp.sendRedirect("video.jsp");*//*ajax*/PrintWriter writer = resp.getWriter();writer.print(count);writer.close();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/68708.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记录一次WMware网络问题

目录 ​编辑 一、问题描述 二、问题排查 2.1 指令ifconfig 查看ip信息 2.2 nmcli n 查看网卡状态 三、问题解决 3.1 启动 NetworkManager 网络管理器 3.2 ifup ens160 启动网卡 一、问题描述 我在我本地电脑上使用WMware虚拟机部署了k8s&#xff0c;有次正常关机后&am…

docker安装mysql、clickhouse、oracle等各种数据库汇总

1&#xff1a;docker 安装mongo数据库并使用 官网&#xff1a;https://www.mongodb.com/docs/manual/ 安装 &#xff1a;https://www.zhihu.com/question/54602953/answer/3047452434?utm_id0 安装2&#xff1a;https://www.duidaima.com/Group/Topic/ArchitecturedDesign/91…

让GPT成为您的科研加速器丨GPT引领前沿与应用突破之GPT4科研实践技术与AI绘图

GPT对于每个科研人员已经成为不可或缺的辅助工具&#xff0c;不同的研究领域和项目具有不同的需求。如在科研编程、绘图领域&#xff1a;1、编程建议和示例代码:无论你使用的编程语言是Python、R、MATLAB还是其他语言&#xff0c;都可以为你提供相关的代码示例。​2、数据可视化…

Java 多线程系列Ⅳ(单例模式+阻塞式队列+定时器+线程池)

多线程案例 一、设计模式&#xff08;单例模式工厂模式&#xff09;1、单例模式2、工厂模式 二、阻塞式队列1、生产者消费者模型2、阻塞对列在生产者消费者之间的作用3、用标准库阻塞队列实现生产者消费者模型4、模拟实现阻塞队列 三、定时器1、标准库中的定时器2、模拟实现定时…

Less的强大变量用法

less中的变量应用十分强大&#xff0c;可以灵活的应用到各种不同需求的场景。 一&#xff0c;属性值变量 声明&#xff1a;sass声明变量是用$符号&#xff0c;而less声明变量是用符号 作用域&#xff1a;也区分为全局变量和局部变量&#xff0c;如果引用的变量有定义局部变量&…

vuex_cart案例

json-server使用 在目录下新建db文件夹>里面新建index.json index.json {"cart": [{"id": 100001,"name": "低帮城市休闲户外鞋天然牛皮COOLMAX纤维","price": 128,"count": 6,"thumb": "http…

Nodejs压缩图片实现方案

安装sharp 目前选择使用sharp 0.31.2版本 npm i sharp0.31.2 并且在.npmrc里面配置镜像源 sharp_dist_base_urlhttps://npmmirror.com/mirrors/sharp-libvips/v8.13.3/ sharp_binary_hosthttps://npmmirror.com/mirrors/sharp sharp_libvips_binary_hosthttps://npmmirror.…

Java8新特性stream和parallelStream有什么区别

1 stream和parallelStream的区别 1.Stream 是在 Java8 新增的特性&#xff0c;普遍称其为流&#xff1b;它不是数据结构也不存放任何数据&#xff0c;其主要用于集合的逻辑处理。 2.Stream流是一个集合元素的函数模型&#xff0c;它并不是集合&#xff0c;也不是数据结构&…

Redis数据类型

目录 前言一、数据类型二、Redis单线程模型三、String类型四、什么是业务五、Hash类型六、List类型七、SET类型八、ZEST类型 前言 一、数据类型 Redis主要有Strings、Lists、Sets、Hashes、Sorted sets等数据类型&#xff0c;这些都是非常通用的&#xff0c;还有一些少见的可…

腾讯张乐:“反内卷”潮流已至,研发效能是软件企业必由之路

目录 Why&#xff5c;“狂飙”踩下刹车&#xff0c;“湖水岩石效应”加速显现 What&#xff5c;效能 ≠ 效率&#xff0c;效能 效率 有效性 How&#xff5c;研发效能“黄金三角” e.g.&#xff5c;软件研发效能实践中的“坑”与“解” 1. 忽视重视工程师的声音 2. “迷…

C# 按钮的AcceptButton和CancelButton属性

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System

使用iCloud和Shortcuts实现跨设备同步与自动化数据采集

在如今的数字时代&#xff0c;跨设备同步和自动化数据采集对于提高工作效率和便利性至关重要。苹果的iCloud和Shortcuts App为我们提供了强大的工具&#xff0c;可以实现跨设备同步和自动化数据采集的功能。本文将详细介绍如何利用iCloud和Shortcuts App实现这些功能&#xff0…

Vue3 使用 echarts

echarts 是百度基于 JavaScript 实现的一个开源可视化图表库&#xff0c;主要特点就是可视化类型丰富、动画炫酷、使用简单。 这个教程就简单演示如何在 Vue 3 项目中使用 echarts。 1、导入 echarts import * as echarts from "echarts";2、初始化 echarts 并设置…

day55 动规.p15 子序列

- 392.判断子序列 cpp class Solution { public: bool isSubsequence(string s, string t) { vector<vector<int>> dp(s.size() 1, vector<int>(t.size() 1, 0)); for (int i 1; i < s.size(); i) { for (int j 1; …

电力智能监控系统

电力智能监控系统依托电易云-智慧电力物联网&#xff0c;利用计算机、计量保护装置和总线技术&#xff0c;对中、低压配电系统的实时数据、开关状态及远程控制进行了集中管理。该电力监控系统可以为企业提供"监控一体化"的整体解决方案&#xff0c;主要包括实时历史数…

前端缓存方法有哪些?cookie有哪些属性?

这里写目录标题 前端缓存方法有哪些&#xff1a;cookie有哪些属性&#xff1f; 前端缓存方法有哪些&#xff1a; Browser Cache&#xff08;浏览器缓存&#xff09;: 当浏览器请求一个资源&#xff08;例如图片、CSS、JS 文件&#xff09;时&#xff0c;它会首先检查自己的缓存…

python中字典常用函数

字典常用函数 cmp(dict1,dict2) &#xff08;已删除&#xff0c;直接用>,<,即可&#xff09; 如果两个字典的元素相同返回0&#xff0c;如果字典dict1大于字典dict2返回1&#xff0c;如果字典dict1小于字典dict2返回-1。 先比较字典的长度&#xff0c;然后比较键&#x…

固定资产卡片乱怎么管理

固定资产卡片是记录公司固定资产信息的重要工具&#xff0c;如果管理不善&#xff0c;容易造成卡片混乱、数据错误等问题。 为了避免这种情况的发生&#xff0c;可以采取以下措施&#xff1a;  建立完善的资产管理制度&#xff0c;明确固定资产的分类、标准和使用情况&#x…

Hadoop -HDFS常用操作指令

1.启动HDFS hadoop/sbin/start-dfs.sh2.关闭 HDFS hadoop/sbin/stop-dfs.sh3. 在HDFS中创建文件夹 #老版本 hadoop fs -mkdir -p path #新版本 hadoop dfs -mkdir -p path4.查看指定目录下内容 hadoop fs -ls [-h] [-R] path hadoop dfs -ls [-h] [-R] ptahpath 指定…

2023开学礼《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书山东师范大学图书馆

2023开学礼《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书山东师范大学图书馆