自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(202)
  • 收藏
  • 关注

原创 CasaOS系统玩客云安装内网穿透工具实现无公网IP远程访问

2月底,玩客云APP正式停止运营,不再提供上传、云添加功能。3月初,有用户进行了测试,局域网内的各种服务还能继续使用,但是在进行远程访问测试时,则一直显示连接中,无法实现离家在外时,通过外面的网络或手机流量远程访问家中的玩客云了。面对这个情况,之前刷过CasaOS系统的笔者表示只需要安装cpolar内网穿透工具,就可以轻松实现即使玩客云app停服,依然可以随时随地在公网环境访问本地玩客云中储存的文件。

2024-05-23 18:22:58 208 2

原创 Redis常见基本类型(5)-List, Set

语法:时间复杂度: O(count)返回值: 取出的元素.

2024-05-22 15:28:59 606 7

原创 Windows系统ssh远程连接Linux Archcraft无需公网IP与公网服务器

ssh 服务运行正常后,我们在外部设备上使用Archcraft 局域网IP进行ssh 连接,可以看到也是连接成功,Archcraft 默认用户名密码都是:liveuser,本地测试没有问题后,下面我们在Archcraft中安装cpolar内网穿透软件,实现远程也可以进行ssh 连接,不受局域网限制!然后打开左侧在线隧道列表,查看刚刚创建隧道后生成的 ssh TCP连接的地址,这个地址就是公网连接地址,我们可以在任意设备上使用该地址进行ssh 连接。这种随机地址的优势在于建立速度快,可以立即使用。

2024-05-20 16:31:23 765 25

原创 Redis常见数据类型(4) - hash, List

如图: a,b,c,d,e五个元素从左到右组成了一个有序的列表, 列表中的每个字符串称为元素,, 一个列表中最多可以存储 2 ^ 32 - 1个元素. 在Redis中, 可以对两端插入和弹出, 还可以获取指定范围的元素列表, 获取指定索引下标的元素等. 列表是一种比较灵活的数据结构, 它可以充当栈和队列的角色, 在实际开发上有很多应用场景.在列表有元素的情况下, 阻塞和非阻塞的表现是一致的. 但如果列表中没有元素, 非阻塞版本会立即返回nil, 但阻塞版本会根据timeout, 阻塞一段时间,

2024-05-19 23:18:07 1180 2

原创 Redis常见数据类型(3)-String, Hash

上一篇中介绍了了String里的基本命令, 接下来总结一下。

2024-05-17 12:42:28 1042 23

原创 Linux系统使用宝塔面板快速搭建Discuz论坛详细步骤

Board(以下简称 Discuz!)是一套通用的社区论坛软件系统,用户可以在不需要任何编程的基础上,通过简单的设置和安装,在互联网上搭建起具备完善功能、很强负载能力和可高度定制的论坛服务。下面我们在Linux上使用宝塔面板+Discuz+cpolar内网穿透工具结合,搭建一套发布到互联网环境的论坛服务,无需公网IP服务器、也无需设置路由器。

2024-05-16 16:16:21 414 20

原创 Linux的基础指令

常用选项:-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在.-i 或 --interactive覆盖文件之前先询问用户.-r递归处理, 将指定目录下的文件与子目录一并处理. 若源文件或目录的形态, 不属于目录或符号链接, 则一律视为普通文件处理.-R 递归处理, 将指定目录下的文件及子目录一并处理.

2024-05-14 22:48:54 953 5

原创 如何在群晖NAS中开启FTP并实现使用公网地址远程访问传输文件

然后打开左侧在线隧道列表,查看我们创建的cpolar 公网TCP地址,这里有两种类型的地址,第一个是客户端连接的公网地址,下面三个是数据端口,27089~27091,这个端口范围需要设置到FTP服务端那边(这里需要注意!隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到FTP公网地址已经更新成为了固定FTP地址和端口,同时三个数据端口也变成了固定的数据端口,下面我们进入群晖FTP设置界面修改掉数据端口。然后就是见证奇迹的时刻,可以看到连接成功了,这样一个固定的FTP公网远程地址就设置好了!

2024-05-13 16:21:12 1295 28

原创 性能测试 --概念

对于软件什么是性能问题:就以购物软件为例:1)购物过程页面突然无法打开, 刷新后可以重新打开.2)双十一期间无法进入商品页面.3)页面加载时间过长, 需要消耗用户大量的等待时间.甚者如生活中的抢票功能, 对于软件的性能要求极高, 由于用户都在同一时间抢票, 并发量过大, 导致响应速度极慢, 很难抢到票, 这也是软件的一个栗子.(五一没抢到星穹铁道演唱会的票呜呜呜~)

2024-05-10 23:28:17 1174 24

原创 Spring事务及事务传播机制(2)

事务传播机制就是:多个事务方法存在调用关系时, 事务是如何在这些方法间进行传播的比如有两个方法A, B都被@Transactional修饰, A方法调用B方法, 此时B方法运行时, 是加入A的事务, 还是创建一个新的事务呢?这就涉及到了事务的传播机制.事务隔离级别解决的是多个事务同时调用一个数据库的问题.而事务传播机制解决的hi一个事务在多个节点(方法)中传递的问题。

2024-05-10 10:58:29 964 10

原创 如何本地Docker运行蚂蚁笔记并实现无公网IP远程连接使用LeaNote

使用上面的Cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到Leanote蚂蚁笔记界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可到公网进行远程访问蚂蚁笔记了!最后,我们使用固定的公网https地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,可以异地远程自己的蚂蚁笔记来进行编辑和学习了!,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称。

2024-05-09 17:24:17 442 23

原创 Spring 事务及事务传播机制(1)

定义:事务是指逻辑上的一组操作, 构成这组操作的各个单元, 要么全部执行, 要么全部不执行。

2024-05-09 08:04:38 1054 3

原创 Spring AOP(3)

答: AOP是一种思想, 是对某一类事情的集中处理. Spring框架实现了AOP, 所以称为SpringAOP.

2024-05-07 13:16:17 1104 10

原创 Spring AOP(2)

创建一个注解类://注解类型//注解生命周期这里只做简单说明, 不必深究:1.@Target标识了Annotation所修饰对象的范围, 即该注解用于什么地方(上文就是用于方法)2.@Retention指Annotation被保留的时间长短, 标明注解的生命周期.在TestController中的t1()和 UserController中的u1()这两个方法上添加自定义注解 @[email protected]("执行t1方法...");@MyAspect。

2024-05-06 19:36:31 1171 9

原创 使用固定公网地址远程访问开源服务器运维管理面板1Panel管理界面

1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等下面我们介绍在Linux 本地安装1Panel 并结合cpolar 内网穿透工具实现远程访问1Panel 管理界面。

2024-05-06 17:47:08 847 31

原创 Spring AOP(1)

即Aspect Oriented Programming(面向切面编程)什么是面向切面编程呢?切面就是指某一类特定的问题, 所以AOP也可以叫做面向特定方法编程什么是面向特定方法编程呢?比如上一篇中讲到的拦截器, 就是对比如登录校验这一类问题的统一处理. 所以, 拦截器也算是AOP的一种应用. AOP是一种思想, 拦截器是AOP的一种实现. Spring框架实现了这种思想, 提供了拦截器技术的相关接口.同样地, 统一数据返回格式和同意一场处理, 也是AOP思想的一种实现.

2024-04-28 10:07:43 1738 33

原创 SpringBoot统一功能处理

什么是拦截器?拦截器是Spring框架提供的核心功能之一, 主要用来拦截用户的请求, 在指定方法前后, 根据业务需要执行预先设定的代码.在拦截器当中, 开发人员可以在应用程序中做一些通用性的操作, 比如通过拦截前端发来的请求, 判断Session中是否有登陆用户的信息. 如果有就可以放行, 如果没有就进行拦截. 下面我们先来学习一下守城太君, 哎不对, 拦截器的基本使用.自定义拦截器:实现HandlerInterceptor接口, 并重写其所有方法.注册配置拦截器: 实现WebMvcConfi

2024-04-27 14:53:03 1788 15

原创 如何在软路由系统iStoreOS安装内网穿透实现远程管理本地软路由

本文主要介绍如何在软路由系统iStoreOS中安装cpolar内网穿透,实现使用公网地址随时随地远程访问本地软路由webui界面进行管理。iStoreOS系统是基于OpenWrt定制的软路由系统,提供了如轻nas,云盘,文件共享等众多网络服务功能,如果我们想在户外公网环境下使用这些功能,就需要使用内网穿透软件来实现。本教程需要准备的食材:已经安装好的iStoreOS系统如果您没有实体软路由,我们还有[iStoreOS虚拟机](

2024-04-26 15:33:29 688 21

原创 测试的分类(3)

简言之, 测试人员需要测试软件在不同语言和地区是否能够正常工作.eg:墨西哥:中国:国际化测试需要关注软件的哪些特性:布局时间日期数字格式货币机器型号......

2024-04-25 15:55:52 1010 14

原创 Windows系统安装GeoServe并实现无公网IP远程管理本地服务

另外,GeoServer是开源软件。接着一直下一步安装即可,安装完成后,我们打开浏览器,输入http://localhost:8088/geoserver,即可看到GeoServer的web 管理界面,本地安装成功了,下面安装cpolar 内网穿透工具,实现远程访问。地址设置好后,把随机的域名地址换成我们固定的公网地址访问,可以看到同样也是访问成功,这样一个永久固定不变的公网地址就设置好了.随机的域名地址换成我们固定的公网地址访问,可以看到同样也是访问成功,这样一个永久固定不变的公网地址就设置好了.

2024-04-23 16:14:32 1025 29

原创 测试的分类(2)

不以测试数据的执行而是, 仅通过分析或检查源程序的设计, 内部结构, 逻辑, 代码风格和规格等来检查程序的正确性.常见的静态测试有代码走查, 代码扫描工具等.

2024-04-22 17:32:07 1224 5

原创 补档 -- 测试的分类(1)

最近有很多人私信我说: 灰灰你什么时候写测试分类阿, 本来我要开始肝性能测试的, 我一看, 奥, 之前摸鱼忘写了, 所以这里补档(叶问指着一边笑.jpg).

2024-04-21 21:50:00 1413 9

原创 自动化测试Selenium(4)

通过类似下面这种形式可以定位一组元素.

2024-04-19 15:57:08 1649 5

原创 Ubuntu系统安装cpolar实现Windows使用固定公网地址远程ssh访问写代码

远程连接服务器的工具有很多,比如XShell、putty等,可以通过ssh来远程连接服务器,但这用于写代码并不方便,可能需要现在本地写好代码后再将源代码传送到服务器运行、服务器上的图片也无法直接查看。而VS Code可以很好的解决这些问题,它的核心组件都运行在远程环境中,本地的开发机器完全不需要拥有远程开发环境的源代码,在VS Code上编写代码可以直接同步更新到服务器上,给你带来丝滑般的远程开发体验。

2024-04-18 15:54:29 1341 31

原创 MyBatis操作数据库(4)

动态sql是MyBatis的强大特性之一, 能够完成不同条件下的sql拼接.在注册用户的问题时, 可能会有这样的一个问题:就是说注册时有一些信息是必填的, 而有一些信息是选填的. 那么如果在添加用户的时候有不确定字段的传入, 程序应该如何实现呢?这时就可以使用动态标签来判断了, 比如添加的时候, 性别gender为非必填字段, 我们通过使用标签来指定这个非必填的内容, 它的语法格式如下:接口定义:Mapper.xml实现:该实现是能够解决一些非必填的情况的, 但是如果有多个, 甚者是拼接

2024-04-18 09:07:09 1112 4

原创 自动化测试Selenium(3)

即打印该网址的标题.使用如下:即打印该网址的url. 使用如下: 让我们写一个基本的测试单元:测试结果: 我们知道启动的浏览器不是最大化的, 这样不会影响脚本的执行, 但是有时候会影响我们"观看"脚本的执行. 结果展示: 最大化还是不够灵活, 能不能随意地设置浏览器的宽, 高显示? 当然也是可以的. 浏览器上有一个后退, 前进按钮, 也相对比较容易实现:

2024-04-17 09:40:49 2644 31

原创 MyBatis操作数据库(3)

MyBatis参数赋值有两种方式, 咱们前面使用了#{}进行赋值, 接下来来看两者的区别:1.先看Integer类型的参数:我们观察一下打印的日志: 我们发现输输入的参数并没有在后面拼接, id使用的是 ? 进行占位. 这种SQL我们称之为"预编译SQL".我们把#{}换为${}再观察打印的日志: 可以看到, 这次的参数是直接拼接在SQL中了.2.接下来我们再看String类型的参数:观察打印的日志, 发现正常返回. 我们把#{}改为${}再观察打印的日志:可以看到, 这次的参数

2024-04-16 13:34:29 1039 4

原创 如何在Linux系统部署Joplin笔记并结合内网穿透实现无公网IP远程访问

我们就成功在本地搭建了Joplin Server,但是想实现无需公网IP环境来远程访问Joplin Server里的数据库内容,就需要借助cpolar内网穿透工具来实现公网访问了!cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。Joplin官网地址:https://joplinapp.org/

2024-04-15 15:10:28 6702 32

原创 自动化测试selenium(2)

Selenium是一个用于自动化网页浏览操作的工具,而WebDriver是一个Selenium的一个子项目,它提供了一个用于控制各种浏览器的编程接口(也就是我们之前提到的浏览器驱动). 简单地说, WebDriver是Selenium的一个实现, 它提供了与浏览器交互的功能.具体来说, WebDriver提供了一组API, 允许开发人员以编程的方式模拟用户在浏览器中进行的各种操作,例如点击链接, 填写表单, 提交表单, 模拟键盘输入等等。

2024-04-12 10:27:24 1134 3

原创 如何在SFTP工具中使用固定公网地址远程访问内网Termux系统

要注意的是,以上步骤使用的是cpolar的随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。我们打开任意SFTP 客户端工具,选择SFTP,输入我们在cpolar中创建的公网地址和对应的端口,再输入用户名密码,即可访问成功(本文章以winSCP为例,其他客户端同理)配置固定tcp地址,回到在手机浏览器上cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的tcp隧道,点击右侧的。重启完termux后,然后启动cpolar。

2024-04-11 15:08:39 1383 27

原创 自动化测试selenium(1)

Selenium是web应用中基于UI自动化测试框架, 支持多平台, 多浏览器, 多语言.

2024-04-10 11:20:06 1950 27

原创 MyBatis操作数据库(2)

MyBatis开发有两种方式:1.注解2.xml上面我们学习了注解的方式, 下面来学习xml的方式使用MyBatis的注解方式, 主要是为了完成一些简单的增删改查功能, 而下面我们介绍的xml方式, 则一般用于写一些比较复杂的sql语句.

2024-04-09 15:41:15 429 6

原创 本地部署WebSocket服务端结合内网穿透实现公网远程即时通讯

即登录cpolar官网后,点击预留,保留一个固定tcp端口地址,然后将其配置到相应的隧道中即可。这里我们用cpolar内网穿透来映射内网端口,它支持http/https/tcp协议,不限制流量,无需公网ip,也不用设置路由器,操作简单。注意:该隧道选择的是临时tcp地址和端口,24小时内会变化,如需固定tcp地址,可升级为专业套餐做tcp地址固定!cpolar安装成功后,默认会配置两个默认隧道:一个ssh隧道和一个website隧道,可自行删减或者修改。,可以查看到token码,复制并执行命令进行认证。

2024-04-08 18:18:32 1753 31

原创 MyBatis操作数据库(1)

MyBatis 是一款优秀的持久层框架, 用于简化JDBC的开发.持久层:指的就是持久化操作的层, 通常指数据访问层(dao), 是用来操作数据库的。

2024-04-07 20:14:14 811 3

原创 Redis常见数据类型(2)

将key对应的string表示的浮点数加上对应的值. 如果对应的值是负数, 则视为减去对应的值(因此没有DECRFLOAT). 如果key不存在, 则视为key对应的value是0. 如果key对应的不是string, 或者不是一个浮点数, 则报错. 允许采用科学计数法表示浮点数.将key对应的string表示的数字加上对应的值. 如果key不存在, 则视为key对应的value是0. 如果key对应的string不是一个整型或者范围超过了64位有符号整型, 则报错.数字, 可以是整型或者浮点型;

2024-04-06 11:12:14 1310 5

原创 Map源码解析

其实HashMap底层是个什么东西我们之前也讲过, 就是一个哈希桶(差不多可以看成一个数组), 然后每一个节点又连接着链表/红黑树之类的, 下面让我们看一看具体在源码上是怎样实现的:

2024-04-05 23:09:52 1036 9

原创 软件测试用例(3)

一个有效的测试用例应该具备以下特点:1., 以确保对系统的各个方面进行全面的测试. (差不多可以理解为白盒测试)2.测试用例应该基于正确的需求和规范编写, 确保测试的结果是可信的.3.. 这样可以确保每个测试用例都能够独立地发现问题, 而不会因为其它因素的干扰而遗漏错误.4.: 测试用例应该能够重复执行,. 这样可以确保问题可以被准确地重现和定位.5., 随着系统的变化和演进, 测试用例也需要相应地进行更新和维护, 以保持测试的有效性.

2024-04-05 11:00:44 938 5

原创 软件测试用例(2)

白盒测试也叫逻辑驱动测试, 它是对程序的逻辑结构进行检查, 从中获取测试数据核心: 对程序的逻辑结构进行检查, 从中获取测试数据.判定标准:"穷举路径测试" -> 使用测试用例执行了程序流中所有可能的执行流路径, 程序可以得到完全测试1.不同逻辑路径的数量可能达到天文数字.2.虽然可以测试到程序中的所有路径, 但是程序中可能存在着错误.原因:(1)即使是穷举路径测试也不能保证程序符合其设计规范. eg: 升序排序写成降序排序.

2024-04-04 10:42:35 1350 35

原创 软件测试用例(1)

定义: 数据驱动的测试或输入/输出驱动的测试.核心: 测试目标和结构完全无关, 重点集中在程序不按其规范正确运行的环境条件判定标准: "穷举输入测试"缺点: 经济, 时间, 无法实现.(因为测试投入的目标在于通过有限的测试用例最大限度地发现问题的数量.

2024-04-02 09:39:27 1272 15

原创 如何在Portainer中创建Nginx服务并搭建静态站点实现公网访问本地网站

Portainer是一个开源的Docker轻量级可视化工具,它提供了一个直观的Web界面,让你轻松管理和监控Docker容器、镜像和网络等。之前在文章《Linux Docker 图形化工具 Portainer远程访问》中我们讲了如何使用Docker部署一个Portainer,并结合cpolar内网穿透实现了公网访问成功。本篇文章教大家如何在Portainer创建Nginx容器,并且部署一个静态站点实现公网访问。

2024-04-01 16:45:58 951 32

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除