- 博客(44)
- 资源 (9)
- 收藏
- 关注
原创 MODBUS协议详解
MODBUS协议详解一、了解MODBUSMODBUS 是 OSI 模型第 7 层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信。它主要用于工业自动化设备通信。MODBUS可以在基于串行链路和以太 TCP/IP 网络的 MODBUS 上可以进行通信,也就是说,可以使用串口线或者网线链接两端设备,双方约定使用modbus协议去通信。二、了解MODBUS协议前面我们说了MODBUS有两种实现方式,一个是串口,一个是网口(后面称呼为TCP),那么MODBUS协议对应
2022-05-25 15:00:05
37600
8
原创 modbus协议使用【android串口通信】
modbus协议使用【android串口通信】本文的目的是android端与上位机之间使用modbus协议进行串口通信。通过串口与其他设备进行通信,传递数据。可以理解为电脑和键盘、鼠标通信。关于modbus协议我已经上传https://download.youkuaiyun.com/download/zhouhangzooo/81088547串口连接android端连接串口方法,其实就是设置串口的参数,打开底层的串口文件,android开发的朋友也可以让驱动人员帮忙写,当然谷歌也有官方框架,这里我使用的是第三
2022-02-18 10:56:35
7170
11
原创 Android设置时间和日期2(解决软键盘问题)
之前写过一篇文章介绍的是设置系统时间和日期,其中用到了安卓原生系统的DateickerDialog和TimePickerDialog,原文在下面链接:https://blog.youkuaiyun.com/zhouhangzooo/article/details/106509380最近一段时间我才发现这两个对话框有一个问题:在设置时间和日期时,如果不是滑动,而是编辑数据,会出现软键盘输入框,点击取消或完成之后,这个输入框不会自动关闭,由于我做的是定制系统,去掉了底部导航栏,所以非常不友好,于是我们需要主动去关闭这个
2021-11-16 11:31:20
1469
原创 图书管理系统2.0
前言:这是我两年前做过的一个jsp项目,github下载:https://github.com/zhouhangzooo/LibrarySystem总的来说,我觉得对初学者来说是比较容易上手的,前后端不分离,没有框架,对于初学者来说(其实我也是初学者),代码结构分的太好太清晰,反而一头雾水,就好像写字一样,你还没学会写作文,就已经想将文章分段,这刚开始不能好高骛远,所以我觉得初学者,无论学习哪一种语言或技术,都应该从基础开始,最好是有个固定模板或格式,就好像数学公式,我最初是学Android的,对于一开
2021-08-12 17:45:17
581
原创 IDEA新建maven项目
IDEA创建maven项目并本地部署,解决没有artifact的问题File -> New -> Project,选择Maven,勾选Create from archetype从列表中找到并选中后缀maven-archetype-webapp,注意有两个webapp,别选错了,然后Next,填写包名和项目名完成创建图1项目结构如下:图2默认创建的maven项目没有java文件夹,于是我们创建java文件目录,并标记为Sources类型图3然后配置Tomcat,我们发现没有a
2021-06-17 13:43:00
247
1
原创 Linux从零搭建web服务器
Linux下部署web服务器文章目录Linux下部署web服务器1.购买服务器2.链接服务器3.搭建环境(web)3.1安装JDK3.2安装Apache Tomcat3.3安装MySQL4.总结1.购买服务器https://www.aliyun.com/activity/new?utm_content=se_1009243113关于如何选购这样看大家的情况,一般企业使用的至少是2核8G、5M带宽以上,个人就随意了。2.链接服务器登录阿里云,选择云服务器ECS,找到你购买的服务器,重置密码下载s
2021-06-11 17:06:39
2583
1
原创 问题:IDEA运行web项目,发现请求地址的项目名发生变化,导致404
使用IDEA运行web项目,发现请求地址的项目名发生变化,导致404首先配置Artifacts,然后再看Tomcat配置,这两个决定你的url项目名是什么。选取Modules的项目,这个时候要注意Name如果你按照系统默认的一般会带上:war,如图这里我配置了三个名字,接下来我们配置TomcatTomcat在运行的时候配置上面的三个名字一定要和你配置的Tomcat的一致然后在Deployment添加Artifact,这个时候显示我们上面配置了的三个Artifact,分别是books
2021-06-07 15:14:12
811
1
原创 MySQL下载入门使用
MySQLmysql下载配置环境配置文件配置命令设置mysql时区IDEA配置MySQLmysql下载https://dev.mysql.com/downloads/mysql/配置环境在环境变量里Path加入你的mysql路径如:D:\2345Downloads\mysql-8.0.25-winx64\mysql-8.0.25-winx64\bin配置文件在mysql根目录下,新建mysql.ini文件夹,内容如下[mysql]# 设置mysql客户端默认字符集default-cha
2021-06-05 16:27:10
154
原创 自定义View(进度条)2021-5-20
自定义进度条TestProgressBarpublic class TestProgressBar extends View { private Paint paint; private int color; private int bgSpace = 4; //背景间距 /** * 最大进度 */ private int max; /** * 当前进度 */ private int progress;
2021-05-20 11:38:38
168
原创 Android自定义画线(模拟指针)
Android自定义画线(模拟指针)今天和大家分享一下自定义画线功能,效果其实和安卓里开发者模式下的“指针位置”功能类似的,大概就是一个空白的界面,随着手指移动不断画线,话不多说,码上~创建空白的Activity、画笔画布 display = ScreenUtils.getDisplay(this); //创建bitmap,宽 高,图片的参数 bitmap = Bitmap.createBitmap(display.getWidth(), display.getHei
2020-10-15 11:04:01
1448
原创 Android分页查询
Android—SQLite分页搜索查询首先来给大家说一下数据库查询1.查询所有的数据 String sql = "Select * From history";2.倒序descString sql = "Select * From " + HistoryHelper.TABLE_NAME + " order by " + HistoryHelper.ID + " desc ";3.分页查询Limit,Offset这里我们查询12条,从0到11String sql = "Select *
2020-06-27 12:49:45
1289
原创 Android设置日期和时间
Android设置日期和时间通过Calendar获取日期和时间getDate();getTime();private void getTime() { cal = Calendar.getInstance(); hour = cal.get(Calendar.HOUR_OF_DAY); minute = cal.get(Calendar.MINUTE); } //获取当前日期 private void getDate() {
2020-06-02 23:35:21
4021
6
原创 Android数据库使用入门
Android数据库Android本地存储有几种方式,具体使用哪一种要看我们的需求比如我们要设置一个app的一个设置,存储简单几个数值,比如记住登录,记住亮度,偏好设置等,我们可以使用SharedPreferences,SharedPreferences使用起来非常简单方便,那么如果有这样一个需求,要本地保存多个用户,该如何做呢?当然很少会碰到这个需求,因为用户都是保存在服务器上的,如果我们要做,那我们就要使用到Android的数据库SQLite了,如果想系统全面的了解SQLite的话,我推荐这个网站:
2020-05-28 20:05:11
626
原创 NDK配置与JNI最基础使用
文章目录前序:1.需要开发硬件相关项目2.NDK允许我们使用类似C / C++之类的原生代码语言3.使用NDK优点:代码的保护、C/C++代码便于移植到其他平台使用:1.AndroidStuido配置NDK2.下载NDK,打开Settings3.配置External Toolsjavah:ndk-build:4.app的gradle文件在defaultConfig里加入5.编写Jni函数,在mai...
2020-05-07 21:11:21
351
2
原创 recyclerview封装使用
文章目录记录自己使用封装的RecyclerView,最近加入了过滤器FilterCommonFilterAdapterCommonFilterAdapter使用方法:ViewHolder 复用对象SimpleDividerDecoration分割线MultiItemCommonAdapter使用方法:MultiItemCommonAdapter——使用多个xml布局MultiItemTypeSup...
2020-05-04 16:47:47
242
原创 git最实用命令总结
github第一次上传项目进入上传项目的文件夹里,右击选择==Git Bash Here==(如果没有需要下载git工具)依次执行: 12345 git initgit remote add origin 你的远程仓库地址git add . 保存本地代码git commit -m "提交信息" 本地代码提交git push 或者 git p...
2020-03-15 18:44:21
268
原创 攻克技术堡垒!android反编译和打包工具全教程
相信大家都了解过反编译,但可能有些同学没有实验过,今天给大家分享一下准备工具下载地址:https://download.youkuaiyun.com/download/zhouhangzooo/11985369反编译打包:https://blog.youkuaiyun.com/sxk874890728/article/details/80486223反编译资源和源码:https://blog.csdn....
2019-11-19 16:45:33
192
原创 vscode和插件开发详解
vscodevscode的官方源码下载地址:https://github.com/microsoft/vscode我们可以将vscode源码运行起来看演示效果,假设我们将vscode源码下载到这个目录下:D:\new-vscode\vscode-master,那么运行步骤如下:vscode运行1.打开cmd命令行,进入到D:\new-vscode\vscode-ma...
2019-09-16 14:14:03
12396
1
原创 vscode通过插件修改编辑器的内容
title: vscode通过插件修改编辑器的内容date: 2019-08-12 17:13:29tags: “VsCode”之前碰到一个需求是这样的:在vsocde编译器中检验用户输入的代码,如果出现中文字符,那么将其替换成相应的英文字符。好了,进下来直接上代码:const fs_1 = require("fs");//读取文件内容,filePath为文件的路径,如:C:\aaa...
2019-08-12 17:50:15
2102
原创 递归查找解决方案
title: 递归查找date: 2019-08-06 17:50:39tags: “JavaScript”很多时候,我们通过网络请求返回后台数据之后,需要在前端页面中显示,通常有一些嵌套多个数组的数据,我们称之为‘树形结构’数据,而我们通常碰到搜索题目id查找对应的数据,又或者我们打开了一个题目,需要点击下一题的时候,我们往往需要通过id去获取题目这个对象;下面array其实就是多个...
2019-08-08 10:59:52
472
原创 通过css实现按钮高亮
title: 通过css实现按钮高亮date: 2019-07-01 14:26:53tags: “JavaScript”本文通过改变css来实现按钮高亮效果其实高亮只需增加一行代码,如下:原css:.monaco-workbench > .part.titlebar > .window-controls-container .window-minlogin { hei...
2019-07-21 20:40:55
4727
原创 html标签通过代码隐藏和显示
title: html标签通过代码隐藏和显示date: 2019-07-19 15:16:58tags: [“html”, “JavaScript”]工作中我们常常会碰到这个一个需求:当用户进行操作之后,通过在页面上提示信息;首先我们在body中定义一个提示信息的元素:<p id="submitResult"></p>然后在script里的用户响应中显示结...
2019-07-21 20:40:05
3660
原创 node-js请求https出现乱码解决方案
使用node.js请求https,代码如下:var options = { hostname: "www.xxx.com", port: 443, path: "/api/xxx", method: "POST", rejectUnauthorized: false, headers: { Accept: "*/*", ...
2019-07-07 19:00:19
2172
原创 node-js-Https请求传递数据
title: node.js Https请求传递数据date: 2019-04-24 15:23:00tags: [“https”, “node.js”]我的代码如下:参考了网上大多说的是req.write(contents);我试了这样写没有效果而是在url拼接?contents 来传递数据import * as https from "https";var querystri...
2019-07-07 18:57:47
1086
1
原创 JS文件相互调用
title: JS文件相互调用date: 2019-06-25 17:03:36tags: [‘JavaScript’, ‘TypeScript’]我们在写js代码的时候,常常会碰到两个js文件之间相互调用,直接上代码:messageText.js//定义数组var msgArray = [ {name: 'In function',value: '在函数'}, {name: '...
2019-06-25 17:56:57
7276
原创 使用session控制web登录退出
title: 使用session控制web登录退出date: 2019-06-08 22:29:00tags: [“Java”, “JSP”]今天给大家说一个session的问题,首先是session的使用方法:使用<% session().setAttribute(“isLogin”, “true”); %>获取/逻辑判断<% session.getAttrib...
2019-06-08 23:11:31
1777
原创 sql级联更新和级联删除
title: sql级联更新和级联删除date: 2019-05-27 23:15:29tags: [SQL, Mysql]sql级联更新执行更新book表失败后来查找原因是book表被borrow引用了,所以数据库不知道book表更新borrow表要不要更新,所以我们需要进行级联更新,也就是book表更新,borrow表和其它引用了book表也更新外键。book表borrow表...
2019-05-27 23:28:07
24647
原创 Tomcat无法启动和访问项目出现404
title: Tomcat无法启动和访问项目出现404date: 2019-05-19 12:41:26tags: [“Java”, “Tomcat”]首先我使用的是eclipse工具开发,Tomcat是9.0,之前项目启动使用Tomcat然后访问一直是可以的,昨天开始写Servlet,然后就想访问一下,结果Tomcat启动不起来了,网上大多说web.xml中配置的路径写的不对,其实如果你...
2019-05-19 14:33:55
5236
原创 Hexo不显示本地图片解决方案
title: Hexo不显示本地图片解决方案date: 2019-05-15 13:39:11tags: “hexo”查看主页配置文件_config.yml 里的post_asset_folder:这个选项设置为true还是false,如果是true,那么会创建文章时会自动生成文章同名文件夹,这个看你具体设置。但我发现,如果你设置为true,引用本地图片就是:为菜单栏menubar2.活动栏activitybar3.侧边栏sidebar4.编辑器edito...
2019-05-13 20:29:15
10927
8
原创 部署jsp到虚拟机服务器上
title: 部署jsp项目到虚拟机服务器上date: 2019-04-30 21:59:14tags: [jsp, 服务器]记录如何部署jsp项目到远程虚拟机或者服务器上准备工具:Xshell6、Xftp6、VMware Workstation准备工作:需要在VMware Workstation中建立你的虚拟机(相当于服务器),并且开启虚拟机;Xshell中建立会话(配置主机和...
2019-05-02 23:27:13
741
原创 JDBC基础使用
title: JDBC基础使用date: 2019-05-02 20:09:21tags: [“Java”, “JDBC”]本文记录简单使用JDBC的教程准备工具:eclipse、mysqlmysql建数据库和数据表//创建数据库ZHOUHANGcreate database ZHOUHANG;//使用数据库use ZHOUHANG;//创建数据表create tab...
2019-05-02 23:22:36
151
原创 vscode插件和源码通过命令进行通信
本文讲述一下vscode插件和源码通过命令进行通信原文链接:https://zhouhangzooo.github.io/2019/04/10/vscode插件与源码通信/在之前"vscode插件与webview相互通信"文章中,讲述webview和插件进行通信,里面有个注册命令,之前文章没有详细代码,其实代码vscoode官网都有,## 接下来要说命令,那么先贴一下注册命令的代码 ...
2019-04-23 14:35:23
1965
1
原创 vscode插件与webview相互通信
title: vscode插件与webview相互通信date: 2019-04-03 13:37:37tags: “vscode”1.webview发送消息给插件插件js和ts都可以(webview需要引入vscode,可以通过)然后test-webview.js里面加入const testMode = false; const vscode = testMode ? {} : ac...
2019-04-05 10:14:27
4110
1
原创 微信小程序分类-左侧导航与右侧内容联动优化
由上一篇介绍了分类联动:https://blog.youkuaiyun.com/zhouhangzooo/article/details/88775790之后,还有一些问题,比如当点击最后一个分类时,并且其商品较少时,会出现如下情况,如图这样显示并不好,因此我们需要优化一下,比如判断是最后一个分类时,在右边添加一个大概高度的view,逻辑很简单,直接上代码:<block wx:i...
2019-03-26 21:31:04
3706
原创 微信小程序分类-左侧导航与右侧内容联动
左侧导航与右侧内容联动一、首先是点击左侧导航,我们右侧内容需要滑动至相应的位置。思路是:点击左侧某一项,获取该元素的id,也就是左侧view的id,然后动态传到右侧内容的scroll-into-view,scroll-into-view的值为某个子元素的id,这里的子元素说的是右侧的view,我们将左侧view的id和右侧view的id设置为同一个值时,这样当左侧id发生变化时,scroll...
2019-03-24 13:54:45
14365
2
原创 egret关于编译运行失败解决方法
egret使用小白:今天了准备运行一下跳一跳项目,居然给我报错了,我记得前几天还能运行的,看报错给我提示c盘路径,发现正好是egret引擎版本路径,报错忘了截图了,大概是return binding.lstat(pathModule._makeLong(path)); ^Error: ENOENT: no such file or directory...
2019-03-18 21:14:50
4534
3
原创 Visual Studio Code源码编译最完整解决方案
简介:1.Visual Studio Code(以下简称vscode)是一个轻量且强大的代码编辑器,支持Windows,OS X和Linux。内置JavaScript、TypeScript和Node.js支持,而且拥有丰富的插件生态系统,可通过安装插件来支持C++、C#、Python、PHP等其他语言。2.有时我们需要自己开发编程工具,那么vscode是一个很好的选择。想要编译vs...
2019-01-12 18:00:40
13941
1
原创 Android 循环读数字动画实现
一、概述大家好,这篇文章为大家实现一个读数字的动画,非常简单,安卓动画一共有三种:视图动画(View Animation),帧动画(Frame Animation),属性动画(Property Animation)先显示一个效果图(卖家秀~) 二、实现下面我们使用属性动画中的Object Animator为例:(1)配置权限uses-per
2018-01-06 15:02:14
1128
转载 Android Socket通信详解
Android Socket通信详解这篇文章主要介绍了Android Socket通信详解的相关资料,需要的朋友可以参考下一、Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信。两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户端向服务器发送请求后,服务器端
2017-10-18 00:42:30
597
Modbus串口通信源码
2022-06-15
recyclerView-master.zip
2021-08-14
LibrarySystem.rar
2019-06-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人