有暇,做了个五子棋大战的小游戏送给各位小伙伴! 用到的知识点有: 1.JavaWeb基础知识(懂jsp,servlet足够) 2.JavaScript和jQuery基本用法 3.了解WebSocket的基本用法 OK,关于第三点,如果小伙伴们之前没有接触过WebSocket,或者对WebSocket并不太熟悉,可以先阅读这三篇文章学习下: 1.WebSocket刨根问底(一) 2.WebSocket刨根问底(二) 3.WebSocket刨根问底(三)之群聊 游戏效果图 1.登录效果 2.游戏进行…
前两篇文章[WebSocket刨根问底(一)][WebSocket刨根问底(二)]我们介绍了WebSocket的一些基本理论,以及一个简单的案例,那么今天继续,我们来看一个简单的群聊的案例,来进一步了解WebSocket这个东东. OK,开始之前,我们先来看看我们今天要实现的效果: 好了,废话不多说,我们进来看看这个东西要怎么样实现吧! 创建Web项目 这里和上文(WebSocket刨根问底(二))一样,web项目创建成功之后,还是要我们先手动添加websocket的jar包进来,添加方式如果小…
上篇文章[WebSocket刨根问底(一)]中我们对WebSocket的一些基本理论进行了介绍,但是并没有过多的涉及到一些实战的内容,今天我希望能够用几个简单的案例来向小伙伴们展示下WebSocket的一些具体用法. WebSocket API有哪些 首先有一点小伙伴们需要明确,那就是WebSocket并不总是用在浏览器和服务器的通信中,只要任意两个使用框架编写,支持WebSocket的应用程序都可以创建WebSocket连接进行通信,基于此,许多WebSocket实现在客户端或者服务器终端工具…
五子棋大战源码工程基于Unity2017.2进行开发,分为人机.双人.UNET网络三种对战方式,配有案例讲解视频, 其中人机五子棋AI有三种开发难度,欢迎有兴趣的同学加入学习! . 目录 000-展示.mp4001-课程介绍.mp4002-素材导入.mp4003-制作棋子.mp4004-下棋逻辑梳理.mp4005-获取玩家输入坐标.mp4006-点击下棋.mp4007-五子棋连珠原理.mp4008-判断胜负.mp4009-加入悔棋操作.mp4010-入门级AI打分表.mp4011-AI打分函数.…
集成 websocket 的四种方案 1. 原生注解 pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> WebSocketConfig /* * * * * blog.coder4j.cn * * Copyright (…
Netty简介 一.什么是netty? 高性能 事件驱动 异步非堵塞 基于NIO的客户端,服务器端编程框架 稳定性和伸缩性 二.Netty的使用场景 高性能领域   多线程并发领域   异步通信领域 四种IO介绍 1.BIO通信  (1)一个线程负责连接 (2)一个请求一个应答 (3)缺乏弹性伸缩能力 当客户端访问增大,线程造成进程宕机.不能对外服务. 2.伪异步IO通信  (1)线程池负责连接 当有新的客户端进来,将客户端的socket封装成Task投入线程池. (2)m请求n应答 将所有的请…
int select(int maxfdp,fd_set *readfds,fd_set *writefds,fd_set *errorfds,struct timeval *timeout); /*参数列表int maxfdp是一个整数值,是指集合中所有文件描述符的范围,即所有文件描述符的最大值加1,不能错!在Windows中这个参数的值无所谓,可以设置不正确. fd_set *readfds是指向fd_set结构的指针,这个集合中应该包括文件描述符,我们是要监视这些文件描述符的读变化的,即我…
年初的时候,写过两篇博客介绍在Spring Boot中如何使用WebSocket发送消息[在Spring Boot框架下使用WebSocket实现消息推送][在Spring Boot框架下使用WebSocket实现聊天功能],最近看到很多小伙伴对WebSocket的讨论还比较火热,so,打算写几篇文章来系统的介绍下websocket.OK,废话不多说,下面开始我们的正文. 为什么要有WebSocket这个技术 大家都知道,HTML页面在刚刚开始出现的时候是静态的,不能够进行交互,后来有了Java…
上一节给大家分享了扫雷游戏的源代码,本篇文章当然也不会让大家失望,专门针对C语言入门或者学习了部分知识之后的小伙伴来练手的游戏项目——<五子棋大战>,本期并不是使用的easyX,因为考虑到有些大学的同学没有接触到这个,所以本期就是一个“黑漆漆”的控制台界面,这个就希望大家谅解哈!,话不多说,下面我们正式来看吧! 一.构建棋盘 首先可以用一个二维数组来构建棋盘,下标表示位置,内容表示黑子白子或者空位.当数组内容为1时,该位置为白字,当数组为0时,该位置为白子,空位输出+ 二.判断位置超范围与错误…
文章导读: 一.概述-what's WebSocket? 二.运行在浏览器中的WebSocket客户端+使用ws模块搭建的简单服务器 三.Node中的WebSocket 四.socket.io 五.扩展阅读 一.概述-what's WebSocket? 1.1 为什么我们需要WebSocket这样的实时的通信协议? WebSocket是web通信方式的一种,像我们熟知的HTTP协议也是web通信方式的一种.但是我们知道HTTP协议是一种无状态的协议,其服务端本身不具备识别客户端的能力,必须借助外…
文章导读: 一.概述-what's WebSocket? 二.运行在浏览器中的WebSocket客户端+使用ws模块搭建的简单服务器 三.Node中的WebSocket 四.socket.io 五.扩展阅读 一.概述-what's WebSocket? 1.1 为什么我们需要WebSocket这样的实时的通信协议? WebSocket是web通信方式的一种,像我们熟知的HTTP协议也是web通信方式的一种.但是我们知道HTTP协议是一种无状态的协议,其服务端本身不具备识别客户端的能力,必须借助外…
WebSocket 首先新建一个空的目录,通过npm安装nodejs-websocket: npm install nodejs-websocket 新建app.js文件: var ws = require("nodejs-websocket"); ws.createServer(function(conn){ conn.on("text", function (str) { console.log("get the message: "+str…
五子棋游戏 一,1.五子棋的基本常识 与任何一种竞技棋一样,五子棋的每一局棋也分为三个阶段:开局,中局和残局. 五子棋的开始阶段称为开局,或称布局.其开局阶段是十分短暂的,大约在七着与十几着之间.在这一阶段的争夺中,双方的布局,应对将对以后的胜负起着极为关键的作用.在开局阶段取得的形势好坏,主动与被动,先手与后手的优劣程度,往往直接影响中局的战斗.因此积极处理好开局和开局向中局的过渡十分重要. 五子棋是从一至五,逐渐布子,发展连系,同时运用限制和反限制的智慧,在连子的过程中为自己的棋子争得相对的…
一.Websockets介绍 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随着HTML5的诞生,WebSocket协议被提出,它实现了浏览器与服务器的全双工通信,扩展了浏览器与服务端的通信功能,使服务端也能主动向客户端发送数据. 我们知道,传统的HTTP协议是无状态的,每次请求(request)都要由客户端(如 浏览器)主动发起,服务端进行处理后返回response结果,而服务端很难主动向客户端发送数据:这种客户端是主动方,服务端是被动方的传统Web模式…
一.Websockets介绍 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随着HTML5的诞生,WebSocket协议被提出,它实现了浏览器与服务器的全双工通信,扩展了浏览器与服务端的通信功能,使服务端也能主动向客户端发送数据. 我们知道,传统的HTTP协议是无状态的,每次请求(request)都要由客户端(如 浏览器)主动发起,服务端进行处理后返回response结果,而服务端很难主动向客户端发送数据:这种客户端是主动方,服务端是被动方的传统Web模式…
目录 简介 netty中的websocket websocket的版本 FrameDecoder和FrameEncoder WebSocketServerHandshaker WebSocketFrame netty中使用websocket 总结 简介 websocket是一个优秀的协议,它是建立在TCP基础之上的,兼容HTTP的网络协议.通过Websocket我们可以实现客户端和服务器端的即时通讯,免除了客户端多次轮循带来的性能损耗. 既然websocket这么优秀,那么怎么在netty中使用…
Solon Web 开发 一.开始 二.开发知识准备 三.打包与运行 四.请求上下文 五.数据访问.事务与缓存应用 六.过滤器.处理.拦截器 七.视图模板与Mvc注解 八.校验.及定制与扩展 九.跨域处理 十.签权 十一.国际化 十二.统一的渲染控制 十三.WebSocket 十四.与Spring.Jsr330的常用注解对比 Handler + Context 架构,是Solon Web 的基础.在 Context 里可以获取: 请求相关的对象与接口 会话状态相关的对象与接口 响应相关的对象与接…
Solon Web 开发 一.开始 二.开发知识准备 三.打包与运行 四.请求上下文 五.数据访问.事务与缓存应用 六.过滤器.处理.拦截器 七.视图模板与Mvc注解 八.校验.及定制与扩展 九.跨域处理 十.签权 十一.国际化 十二.统一的渲染控制 十三.WebSocket 十四.与Spring.Jsr330的常用注解对比 开发 WebSocket ,需要引入相关的 solon.boot 插件: 或者 solon.boot.websocket (端口为:主端口 + 10000) 或者 solo…
Solon Web 开发 一.开始 二.开发知识准备 三.打包与运行 四.请求上下文 五.数据访问.事务与缓存应用 六.过滤器.处理.拦截器 七.视图模板与Mvc注解 八.校验.及定制与扩展 九.跨域处理 十.签权 十一.国际化 十二.统一的渲染控制 十三.WebSocket 十四.与Spring.Jsr330的常用注解对比 1.注解对比 Solon Spring JSR 330 @Inject * @Autowired @Inject 注入Bean(by type) @Inject("name…
一.WebSocket 协议背景 早期,在网站上推送消息给用户,只能通过轮询的方式或 Comet 技术.轮询就是浏览器每隔几秒钟向服务端发送 HTTP 请求,然后服务端返回消息给客户端. 轮询技术一般在浏览器上就是使用 setInerval 或 setTimeout 这种方式的缺点: 需要不断的向服务端发送 HTTP 请求,这种就比较浪费带宽资源.而且发送 HTTP 请求只能由客户端发起,这也是早期 HTTP1.0/1.1 协议的一个缺点.它做不到由服务端向客户端发起请求. 为了能实现客户端和服…
标签: WebSocket SignalR 前言 1. Web消息交互技术 1.1 常见技术 1.2 WebSocket介绍 1.3 WebSocket示例 2. Signal 2.1 SignalR是什么 2.2 默认传输方式 2.3 指定传输方式 2.4 自动管理传输方式 2.5 通信模型 2.6 SignalR示例(永久连接和Hubs(略)) (1)安装Nuget包 (2)增加SignalR服务 (3)增加Startup启动类 (3)前端js配置 (4)实际效果 (5).Net Clien…
一.做个这样的效果,双击图标打开相应的应用 二.主界面类,使用JavaSwing的JDesktopPane类创建这个桌面 package com.swing; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.Graphics2D; import java.awt.Rectangle; import java.awt.Toolkit; import java.awt.event.MouseAdapte…
相关博文目录: 第一次作业点评 第二次作业点评 第三次作业点评 说明:随机挑选20组点评,大家可以看看blog名字,github项目名字,看看那种是更好的,可以学习,每个小组都会反应出一些问题,希望能取长补短,改进自己的项目,所有贴出来的各种信息都可以自己做下横向对比,自(主动)学(别人好的地方)哈 第一组:取款机项目 组员 1121:负责功能代码编写 blog:取款机项目实验报告 code:joanyy/ATM 1125:负责单元测试编写 blog:结对项目:ATM code:tpp53185…
这是从网上看到的一套java面试题, 答案只是一个大概, 另外题目质量参差不齐, 斟酌参考(JVM的部分暂时没有答案) 一.Java 基础 JDK 和 JRE 有什么区别? 答: JDK(Java Development Kit)是java开发工具包, 是针对开发人员提供的一套开发环境, 其中包含了jre(程序运行环境,标准类库class文件)以及编译器javac等一系列工具. JRE(Java Runtime Environment)是Java运行时环境, 针对生产环境发布, 其中包含了JVM…
学习准备 Linux 或者 Mac 环境: 安装有 Sockets 扩展: 了解 TCP/IP 协议. socket函数只是PHP扩展的一部分,编译PHP时必须在配置中添加 --enable-sockets 配置项来启用. 如果自带的PHP没有编译scokets扩展,可以下载相同版本的源码,进入ext/sockets使用phpize编译安装. socket系列函数 socket服务端/客户端流程: 图中所示流程在任何编程语言里都是通用的. server端 接下来我们写一个简单的单进程TCP服务器…
https://www.cnblogs.com/Wddpct/p/5650015.html 前言 1. Web消息交互技术1.1 常见技术1.2 WebSocket介绍1.3 WebSocket示例 2. Signal2.1 SignalR是什么2.2 默认传输方式2.3 指定传输方式2.4 自动管理传输方式2.5 通信模型2.6 SignalR示例(永久连接和Hubs(略))(1)安装Nuget包(2)增加SignalR服务(3)增加Startup启动类(3)前端js配置(4)实际效果(5).…
一.面向过程 VS 面向对象 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了写程序的复杂度,只需要顺着要执行的步骤,堆叠代码即可. 缺点是:一套流水线或者流程就是用来解决一个问题,代码牵一发而动全身. 应用场景:一旦完成基本很少改变的场景,著名的例子有Linux內核,git,以及Apache HTTP Server等. 面向对象的程序设计的核心是对象(上帝 式思维) 面向对象程序…
JS实现五子棋大战:GitHub源码 知识点总结: 第一步.基础: //获取canvas var chess = document.getElementById('chess'); //获取上下文,创建上下文对象 var context = chess.getContext('2d'); canvas绘制直线.设置画笔颜色 //设置画笔颜色 context.strokeStyle = '#bfbfbf'; context.moveTo(0, 0); context.lineTo(450, 450…
如果觉得资源不错,友情转发,贵在分享!!! 少儿编程Scratch: 少儿编程Scratch第一讲:Scratch完美的初体验少儿编程Scratch第二讲:奇妙的接球小游戏少儿编程Scratch第三讲:宇宙大战.枪战游戏少儿编程Scratch第四讲:射击游戏的制作,克隆的奥秘少儿编程第五讲:Scratch练习一坐标和移动少儿编程Scratch第六讲:抽奖游戏之造型.随机和广播少儿编程Scratch第七讲:字母雨打字练习少儿编程Scratch第八讲:变量和太空大战少儿编程Scratch第九讲:小猫…
一.硬件及开发包说明: 产品型号为良田高拍仪S1800A3,集成b/s系统,适用现代浏览器,图片使用BASE64数据.开发包的bin文件下的video.flt文件需要和高拍仪型号的硬件id对应,这个可以找厂家要然后替换. 开发包地址:https://github.com/xufeikko/webIm/blob/master/%E8%B7%A8%E6%B5%8F%E8%A7%88%E5%99%A8%E6%8E%A7%E4%BB%B6SDK%20V2.3.0.rar 开发包文件目录: demo文件:…