- 博客(241)
- 资源 (11)
- 问答 (1)
- 收藏
- 关注

原创 Java实现中国象棋(人机对战)
简介Hello,I'm Shendi花了五天时间用 Java 写了一个中国象棋.拥有大概如下功能象棋基本功能 可走路线点显示 人机对战 移动动画 我方永远是下方成品视频Java制作的中国象棋+简单AI更多实战内容请进入我的实战专栏:https://blog.youkuaiyun.com/qq_41806966/category_9656338.html点个关注吧~需要源码点这里:https://github.com/1711680493/Applicatio...
2020-07-16 15:44:56
14249
13

原创 手把手教你JNI,各种方法,踩坑记录,命令行方式,ide方式(全)
Hello,I'm Shendi;这次学习总结一下 JNI,包括制作的一些小demo(获取屏幕像素值,全局监听键盘事件).什么是JNI?JNI(Java Native Interface) Java本地接口,用于与C/C++进行交互为什么要jni?因为有些东西需要依赖于操作系统,例如我上面说的 获取屏幕像素点,使用Java很难实现(可以截图然后获取图片的像素点)以及键盘监听,Java的话只能在窗体上JFrame这些才可以获取到按下的上面键,但是用C可以很容易获取到如果我
2020-07-07 13:40:25
7502
4

原创 Java实现一个Web服务器(支持重定向转发和自定义文件 类似于Tomcat)
目录简介运行效果图404界面(可自定义模板)sws文件(简单的进行重定向)学习前需要的知识整理思路项目目录结构使用的 jar(shendi-kit-1.0.jar)编写启动类StartWebServerServer抽象类(所有服务器类的父类)实现TCP服务器(DefaultServer)请求类(DefaultHttpRequest)响应类(DefaultHttpResponse)了解一下重定向处理资源信息图标处理映射文件处理...
2020-05-25 00:38:35
8161
3

原创 [JavaWeb]谁是卧底游戏制作(网络游戏)
Hello,I'm Shendi,这次我制作了谁是卧底游戏(制作周期三天).这里我写了一篇关于这个制作的教程,并附带了源码下面是运行效果.目录主要技术整理思路开始界面实现房间列表界面(快速开始,进入房间)房间架构(对应 Room 类)当我们点击快速开始游戏按钮的时候,请求了 JoinServlet 接口房间界面实现加入房间用户类 Player...
2020-05-03 21:47:01
9519
1

原创 Java Swing 贪吃蛇制作
Hello,I'm Shendi 闲来无事写个贪吃蛇耍耍思路呢大概就是一个窗体(JFrame)三个图片(JLabel) 背景 食物 蛇使用一个二维数组代表场景地图...源码在最文章最后,这里就片面的描述一下(伪代码 一个类)public class Snake { //伪代码 纯手码 需要看结果请去获取源码 有问题请留言 //首先,我们需要定义场景 一............
2020-04-04 23:44:56
7966

原创 (详)h5+js实现文字雨 Canvas的使用
Hello,我是Shendi,在web前端的路上一去不复返这次给大家带来了一个文字雨效果,效果如下实现流程首先我们要知道什么是Canvas Canvas是h5的一个标签(画布) 在画布上任何一点都可以操作(绘制) Canvas需要配合js来使用创建Canvas 新建一个html文件,在<body>标签中添加如下标签 代码如下<...
2019-12-31 12:50:19
8291
原创 使用mitmproxy抓取APP数据
需要注意的是,Android版本大于7,那么安装的证书是用户证书,并且在Android7.0开始,用户证书不被信任,所以需要安装系统证书(需要手机Root),如果APP可以在模拟器中运行那么就使用模拟器,不行的话只能另寻他法。并双击安装证书,一直下一步就可以了(密码可以不需要),在证书存储部分,选择将所有的证书都放入下列存储 - 受信任的根证书颁发机构。模拟器可以直接Root,我这里使用逍遥模拟器,按照上面的步骤,在模拟器内设置代理,下载证书。使用的 mitmweb,在配置完手机代理后,在手机浏览器输入。
2025-03-24 16:33:52
793
原创 记一次小程序爬虫(反编译-自动化字体映射生成)
最后的问题就是处理掉这个字体的问题,整个爬取就大功告成了我通过源代码,下载了自定义的字体文件,这个字体可以理解为一个编码对应一个图片…所以,能想到的就是编写一个映射,将编码与正确文字对应…但手动编写也太浪费时间了,并且如果字很多呢?字体在线编辑可以用这个看字体编码与字体对应:https://kekee000.github.io/fonteditor/所以我第一时间想到,能不能使用OCR识别来全自动生成映射?只要把字体分割成一个个的,然后一个个识别就可以了…于是编写了以下代码(Python)
2025-03-16 17:14:43
1682
原创 消息认证码(Message Authentication Code)
在一个一对一的场景下,如服务器与客户端,服务器如何确保请求来自客户端呢?消息认证码(MAC,Message Authentication Code)是一种用于确保数据完整性和真实性的技术。它使用一个私钥对数据进行签名,接收方可以使用相同的私钥验证签名的...
2025-03-07 16:07:52
379
原创 Maven打包保留参数名称
那么可以不用@Param注解给变量指定名称,因为在编译时保留了变量的名称,在IDE中可以配置。在多模块中也需要每一个模块都加上,不过如果有父模块的话在父pom中这样配置就行了。在SpringBoot+Mybatis中,如果在编译时带上了。在打包时需要在Maven中配置才可以保留,在 pom 中如下。记录一下,主要是多Maven模块。
2025-02-15 20:59:33
172
原创 本地部署Deepseek-R1模型指南:从Ollama安装到RAG应用
最近Deepseek爆火,因为其开源和免费,于是决定尝试一下本地部署,并在此记录下来。这里记录的是模型的部署,是一个专注于高级推理任务的模型首先需要有一个用于部署模型的工具,如OllamaLM Studio等...
2025-02-14 17:32:01
861
原创 Android通知监听权限NotificationListener
获取启用了通知监听权限的列表,然后根据其中是否包含来判断。所以判断当前应用是否启用通知监听权限代码如下。当没开通通知监听权限,一般需要跳转,代码如下。,通知监听类在包下,名称为。
2024-12-31 21:37:43
526
1
原创 Android无障碍服务
最近想制作一个记录点击操作并重复播放的工具,用以解放双手,因现在的Android高版本基本上难以Root,所以选择了使用无障碍来实现,在这里记录下来。无障碍服务必须继承AccessibilityService类,重写该类的函数,有两个...
2024-06-07 22:04:32
4235
原创 记一次Mysql数据库宕机This could be because you hit a bug.
在实际使用中对于复杂的结构应避免JSON字段的使用,否则就会像我这样,为了实现某个需求不得不使用JSON_TABLE又出现宕机的问题。挂个脚本当程序挂掉后自动重启,增加保障,减少...
2024-04-16 21:25:02
1796
原创 用模型预测测试数据
接下来就开始使用训练好的模型,加载数据集.通过 tf.keras.models.load_model 加载保存的模型 其中x_test是样本数据,y_test样本的正确标签...
2023-12-21 22:49:09
730
原创 目标检测入门体验,技术选型,加载数据集、构建机器学习模型、训练并评估
因为使用python,在开始前,需要安装Python与pip。 第一步,导入 TensorFlow。第二步,加载数据集 第三步,构建机器学习模型。第四步,训练并评估模型...
2023-12-21 22:46:54
1768
原创 在VS Code中编写Python
因为有vscode,所以直接使用vscode来编写python了.在vscode中,点击左侧的扩展按钮(Ctrl+Shift+X),搜索Python,并进行安装.安装完成后,按快捷键Ctrl+Shift+P,输入...
2023-12-19 22:14:43
527
原创 Python+pip下载与安装
最近有识别图片中物体的需求,于是选用了TensorFlow,在一番考虑下,还是选择直接使用Python。Python下载安装.pip是python包管理工具.直接在搜索引擎搜索Python或通过...
2023-12-19 22:11:14
2106
原创 Java中并行执行的三种方式:线程、异步编程、虚拟线程
并行执行是指在操作系统中,一组程序按独立异步的速度执行,无论从微观还是宏观,程序都是一起执行的。线程是并发执行的基本单位,异步编程是一种编程范式,虚拟线程是...
2023-12-18 00:16:58
1507
原创 记一次Android中获取时间戳在Java转字符串不正确的问题
在 Java 中将 Android 的时间戳转字符串,发现转换的结果不正确。获取的时间戳,按道理转字符串应该是 2023-12-12 00:00:00 在Java中转换后是 2023-12-12 08:00:00...
2023-12-12 11:40:06
566
原创 记一次金额操作精度丢失问题与解决
以分为单位,金额为整数形式。在今天,发现了精度丢失的问题。在之前我觉得像这种 * 100与 / 100的操作按道理来说应该不会出现精度丢失问题,但现在问题就这样摆在眼前。一个好的东西一定是站在使用者的角度上来考虑,对于上面这样精度丢失的问题属实唏嘘,为什么不直接提供一个不会丢失精度的类型呢?毕竟我们只是使用者...
2023-12-10 11:54:07
1101
原创 Mysql启动占用内存过高解决
最近服务器内存不够用了,甚至还出现了内存溢出问题,导致程序宕机。但请求与用户量并没有多少,所以从各种启动的程序中想方设法的尽可能的减少其占用的内存。而在我的服务器中,Mysql服务占大头,吃了400多MB...
2023-12-08 16:05:04
1954
1
原创 记一次Java内存溢出导致程序宕机的问题及排查
通过代码检查内存。对于代码获取内存信息,需要用到 Runtime 的三个函数。我在接口的开始,结束处,以及可能对内存有较大影响的地方都增加打印,因为接口开始即文件上传完成,所以最大的可能性是...
2023-12-07 22:53:35
828
原创 Node.js之TCP(net)
需要使用到 net 模块,是 node.js 的核心模块,直接可以引入使用。const net = require('net');Node.js 将服务端和客户端区分开了,使用起来还是非常的简单,服务端大概就是监...
2023-11-19 23:25:16
1882
1
原创 Nodejs中net模块多次Socket.setTimeout无法覆盖之前函数,导致叠加执行问题解决
在 Nodejs 中,net 模块的 Socket 的 setTimeout 函数是设置超时时间,如果多次设置,超时时间会是最后一次的时间,但设置的函数会叠加执行,例如如下代码...
2023-11-19 17:01:04
481
原创 使用Redis实现分布式锁
需要使用到分布式锁的场景非常多,例如抢单等并发场景,Redis实现分布式锁,Redis是基于单线程的,这意味着所有来自客户端的命令都是顺序执行的,最常用的是使用...
2023-11-18 21:45:44
243
原创 个人实现在线支付,一种另类的在线支付解决方案
对于在线支付,最多的是接入微信与支付宝。但都需要营业执照,不适用于个人。一种另类的在线支付方式。对于个人收款,其实非常简单。可以转账,发红包,扫描收款码等...
2023-11-18 15:32:20
921
原创 Nodejs的Express之同路由HEAD请求却执行GET函数问题
在 Express 中,当编写 GET 与 HEAD 相同路由的接口,会发现一个惊奇的问题,即HEAD请求,执行的却是GET函数!就是这样的坑,找到浪费了很多的时间...
2023-11-17 13:24:07
141
原创 Android中Http请求报错java.net.UnknownServiceException: CLEARTEXT communication to xxx not permitted by ne
java.net.UnknownServiceException: CLEARTEXT communication to 192.168.0.111 not permitted by network security policy 从Android 9(API级别28)开始,默认情况下,Android应用不允许进行明文网络流量传输,也就是说不支持http,仅支持https...
2023-11-17 13:17:24
373
原创 Mybatis报错找不到参数解决之编译保留参数名称
在使用 Mybatis 的过程中,对于函数参数,通常会加上 `@Param` 注解来给参数命名,以让 Mybatis 找到参数。Java编译保留函数与参数名称信息可以提高开发效率,可以省略编写额外的代码来指定参数的名称,因此可以提高编码效率...
2023-11-15 10:10:35
664
原创 Nodejs操作缓存数据库-Redis
在服务端开发中,缓存数据库也是不可或缺的,可以提高程序并发以及方便后续扩展,而目前最常用的莫过于Redis了。要检查客户端是否已连接并准备好发送命令,请使用client...
2023-11-14 10:16:00
634
原创 Nodejs数据库的使用-Mysql
数据库是后端中不可或缺的,而 Nodejs 自然也有与数据库相应的库来使用,Mysql数据库可以使用mysql库。执行以下命令安装 mysql 依赖。该模块提供了内置的连接池,而不是逐个创建和管理连接。beginTransaction 开启事务...
2023-11-14 10:11:14
352
原创 NodeJS系列教程、笔记
Node.js安装与基本使用NodeJS的Web框架Express入门Node.js的sha1加密Nodejs热更新Nodejs配置文件Nodejs的字节操作(Buffer)Node.js之TCP(net)Node.js使用axios进行web接口调用Node.js的Express参数获取及获取POST请求的请求体Nodejs解析XML - xmlreader
2023-08-26 20:57:18
445
原创 快速开发框架若依的基础使用详解
为什么选?目的是为了提高开发效率,至于能不能提高,得实践才能知晓。若依的官网:http://www.ruoyi.vip/是一个快速开发框架,典型的一个后台管理系统。RuoYi-Vue是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring Security、MyBatis、Jwt、Vue),内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源,支持分布式事务。
2023-07-31 17:20:48
6533
原创 Nodejs的字节操作(Buffer)
字节操作是一个编程语言中必不可少的,而在NodeJs中也可以很方便的进行字节操作。Buffer.from 将对象转字节数...
2023-07-16 17:05:47
3164
原创 Dubbo入门详解,API方式与SpringBoot方式
Apache Dubbo 是一款易用、高性能的 WEB 和 RPC 框架,同时为构建企业级微服务提供服务发现、流量治理、可观测、认证鉴权等能力、工具与最佳实践。使用 Dubbo 开发的微服务原生具备相互之间的远程地址发现与...
2023-07-07 08:45:08
754
原创 JS将图片转pdf,jspdf的使用
一个用JavaScript生成PDF的库。addImage第一个参数为图片,可以为链接、字节等,第二个参数为图片格式,第三和第四代表图片编写到当前页的哪个位置,第五和第六代表绘制图片的...
2023-06-27 00:11:40
5715
原创 多域名实现单点登录详解
在很久以前给自己的网站制作了登录系统,但因为个人备案等原因没有需要用到登录的地方,于是就没有特意去完善这部分功能,仅仅是将用户部分抽取出来作为一个微服务最近编写一个转换工具,调后端接口,为了避免被恶意调用,除了使用验证码外,还需要登录才能使用因为是微服务,项目是多个,为了保证良好的体验,于是将单项目登录更改为单点登录。
2023-06-18 16:26:00
2446
1
原创 微信小游戏跳跳快乐方块制作全过程
1. 游戏思路,起名,logo设计,技术选型2. 整体策划与新建项目3. 首页的设计与制作4. 角色的制作与打包到小游戏5. 解决生成WebGL按钮文字消失问题6. 开始游戏,生成主角用摇杆控制移动7. 角色的跳跃、游戏边界、顶部尖刺8. 暂停按钮,方块落下停止与游戏结束9. 角色的武器与发射子弹10. 方块血量,子弹攻击方块,分数与玩法优化11. 销毁方块的随机加成,结算面板结算与游戏界面完善12. 商店,购买以及切换武器,火箭筒额外功能制作13. 历史分数与音乐制作14. 打包
2023-06-05 13:05:57
894
1
Java的死循环里的代码不执行
2020-01-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人