- 博客(46)
- 资源 (1)
- 收藏
- 关注
原创 windows查看端口并杀死
在窗口中,继续输入【netstat -aon|findstr “提示的端口”】,例如小编提示的端口为2080,那么小编就输入命令为【netstat -aon|findstr “2080”】,回车之后就可以看见列表中的PID,然后根据PID在电脑的任务管理器中查看对应的占用程序,接着进行关闭即可。如果在上面步骤之后,我们得到的PID为2016,那么我们就可以输入命令【tasklist|findstr “2016”】,在第一行显示的名字就是程序名,这样我们就明白是那个程序占用的端口。/F参数表示强制结束进程。
2025-04-10 11:36:29
1051
原创 ubuntu 没有命令python 只有python3,设置使用python
在 Ubuntu 系统中,如果你发现只有 python3 而没有 python 命令,这通常是因为 Python 2.x 已经被弃用并且默认不再安装。然而,如果你打算开发多个项目并希望它们有隔离的依赖环境,使用虚拟环境会是一个更好的选择。另一种方法是在你的 shell 配置文件中(如 ~/.bashrc 或 ~/.zshrc,取决于你使用的 shell),添加一个别名来调用 python3。这样,你可以在虚拟环境中自由地使用 Python,而不会影响到系统级的 Python 版本。
2025-03-07 10:30:38
458
原创 windows 查看端口是否被占用
在Windows中,可以使用netstat命令来查看端口是否被占用。将<端口号>替换为你想要检查的端口号。如果命令返回结果,则表示该端口已被使用。返回结果中的最后一列是使用该端口的进程ID。将<进程ID>替换为你从netstat命令结果中获得的进程ID。这将显示出哪个程序正在使用该端口。
2024-12-19 16:19:43
184
原创 Ubuntu24.04 LTS 解决向日葵安装libgconf-2-4依赖问题
打开系统登录界面,因为系统默认使用Wayland,所以我们将选项切换为“Ubuntu on Xorg”,登录系统后即可正常使用向日葵个人版的远程服务。由于向日葵远程控制软件依赖于一些可能在Ubuntu 24.04的默认软件源中不可用的包(如libgconf-2-4),你需要手动添加这些依赖。由于Ubuntu 24.04的软件源中没有libgconf-2-4,你可以从Ubuntu 22.04(jammy)的软件源中添加它。添加libgconf-2-4的依赖源。
2024-12-11 14:17:00
2250
原创 阿里云购买内存扩容,需要再手动输入命令
系统内未进行扩容操作,您先对系统盘做下快照,防止误操作造成数据丢失,快照后依次执行。这三个命令即可完成扩容。
2024-11-11 14:35:22
178
1
原创 Python 服务端socket 每隔1秒发送数据
在Python中,你可以使用socket模块来创建一个服务端,并且使用time模块来实现每隔1秒发送数据的功能。在Python中,你可以使用socket模块来创建一个服务端,并且使用time模块来实现每隔1秒发送数据的功能。运行上述代码后,服务端将开始监听端口9999。每当有客户端连接时,服务端将每隔1秒发送当前时间的数据。请注意,这个例子没有包含错误处理和多线程/多进程的处理,因此在生产环境中可能需要进一步的改进。
2024-06-19 14:23:29
273
原创 python socket 在读取时(recv)服务端断开,这时没有异常,添加超时或非阻塞模式
在Python中使用socket进行通信时,如果客户端断开连接而服务器端在尝试读取时没有捕获到异常,可能会导致recv函数挂起或阻塞。为了捕获这种情况,可以使用超时机制或者非阻塞I/O。解决方案2:使用非阻塞I/O。解决方案1:设置超时。
2024-04-13 21:28:25
960
原创 Python 线程池类 ThreadPoolExecutor
在这个例子中,我们创建了一个最大工作线程数为5的线程池。然后,我们提交了10个任务到线程池中,每个任务都是调用task函数。task函数简单地打印一些信息,然后休眠2秒钟,最后返回一个任务编号的平方。通过使用线程池,我们可以并发执行这些任务,并在它们完成后按顺序打印结果。ThreadPoolExecutor是Python中的一个线程池类,它实现了线程池的概念。使用ThreadPoolExecutor可以方便地创建多个线程并分配任务给这些线程,以实现并发执行任务的目的。
2023-11-22 13:38:10
281
原创 直播python拉流截图实时
进程A如果发现队列里有两张图片(证明进程B的读取速度跟不上进程A),那么进程A主动将队列里面的旧图片删掉,换上新图片。直接使用opencv的cv2.VideoCapture直接读取rtsp视频流,但是这样做的缺点是延迟严重、出现掉帧、花屏现象等,原因在于opencv自己有一个缓存,每次会顺序从自己的缓存中读取,而不是直接读取最新帧。而ffmpeg-python就是解决FFmpeg学习成本的问题,让开发者使用python就可以调用FFmpeg的功能,既减少了学习成本,也增加了代码的可读性。
2023-04-23 09:02:20
1020
转载 python+mysql:实现python造1000万条数据并快速插入数据库,速度对比
python+mysql:实现python造1000万条数据并快速插入数据库,速度对比
2022-08-31 14:04:54
2621
3
转载 根据Java对象生成json后缀的文件工具
/如果父目录不存在,创建父目录。//将格式化后的字符串写入文件。//如果已存在,删除旧文件。}//返回是否成功的标记。*生成.json格式文件。//标记文件生成是否成功。//生成json格式文件。//保证创建一个新文件。//拼接文件完整路径。......
2022-08-02 13:30:30
301
转载 宝塔面板默认的PHP版本如何切换
在网站服务器运维管理工具中,经常使用的就是宝塔面板(https://www.bt.cn/)了,非常好用非常方便并且功能强大,大家有需要的可以去官网查看。在管理多个站点过程中,由于不同源码使用了不同PHP版本,因此安装了多个PHP版本。我的服务器版本为CentOS 7.3,宝塔面板版本为免费版 7.2.0,由于部署了新的网站代码,部分组件需要使用composer进行安装,因此打开ssh命令行工具,进入站点根目录,直接运行 composer install,提示报错:大概意思是putenv()被禁用,
2021-04-21 17:33:03
1258
1
转载 JPA拼接子查询语句
public static Specification<CatDomain> listAdvanceSpec() { return (Root<CatDomain> root, CriteriaQuery<?> query, CriteriaBuilder cb) -> { //创建主查询条件对象('where'后的语句对象) Predicate predicate = cb.conjunction()
2021-03-02 11:36:31
1115
1
原创 mysql 时间与字符串相互转换
时间、字符串、时间戳之间的相互转换:date转字符串、date转时间戳、字符串转date、字符串转时间戳、时间戳转date,时间戳转字符串用法涉及的函数date_format(date, format) 函数,MySQL日期格式化函数date_format()unix_timestamp() 函数str_to_date(str, format) 函数from_unixtime(unix_timestamp, format) 函数,MySQL时间戳格式化函数from_unixtime时间转字符串
2021-03-02 11:33:07
858
原创 MySQL时间格式化
在处理数据的时候,经常会在MySQL里面格式化时间进行统计。DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。select DATE_FORMAT(date,format) from table; date 参数是合法的日期。format 规定日期/时间的输出格式,可以有下面的格式:%a 缩写星期名 %b 缩写月名 %c 月,数值 %D 带有英文前缀的月中的天 %d 月的天,数值(00-31) %e 月的天,数值(0-31) %f 微秒 %H 小时
2021-03-02 11:23:49
3279
原创 php7关于foreach循环综合问题
一、foreach()循环对数组内部指针不再起作用,在PHP7之前,当数组通过foreach迭代时,数组指针会移动。现在开始,不再如此,见下面代码。。$array = [0, 1, 2];foreach ($array as &$val) {var_dump(current($array));}PHP5运行的结果会打印int(1) int(2) bool(false)PHP7运行的结果会打印三次int(0),也就是说数组的内部指针并没有改变。之前运行的结果会打印int(1), in
2021-03-02 11:17:54
307
原创 php8.0正式版新特性和性能优化学习
JIT(Just in Time Compiler) 即时编译器JIT 是一种编译器策略,它将代码表述为一种中间状态,在运行时将其转换为依赖于体系结构的机器码,并即时执行.在 PHP 中,这意味着 JIT 将为 Zend VM 生成的指令视为中间表述,并以依赖于体系结构的机器码执行,也就是说托管代码的不再是 Zend VM,而是更为底层的 CPU.其较之前的流程改动和重点如下左图是PHP8之前的Opcache流程示意图, 右图是PHP8中的Opcache示意图, 可以看出几个关键点:Opcache会
2021-03-02 11:12:09
511
转载 Junit 对具备shiro登录校验的接口做单元测试
通常,我们的接口是会作登录校验的,为了安全,有些接口甚至有权限校验,这样,通常的单元测试就很难通过,此处以第一种情况为例:接口(在接口内调用了当前登录的用户信息,如果发现不存在则会抛出异常)@PostMapping("/save")public Object save (@RequestBody @Valid final UserPage userPage, final HttpServletRequest request) { final User user = new User(); Be
2021-03-02 11:01:13
560
原创 PHP使用array_unique对二维数组去重处理
一维数组的重复项:使用array_unique函数即可,使用实例如下:代码如下 复制代码<?php $aa = array("apple", "banana", "pear", "apple", "wail", "watermalon"); $bb = array_unique($aa); print_r($bb); ?>结果如下:Array ( [0] => apple [1] => banana [2] => pear [4] => wai
2021-03-02 10:51:22
110
原创 windows下安装PHP的swoole拓展
一:下载Cygwin和swooleCygwin下载地址:https://www.cygwin.com/PHP的swoole拓展下载地址:https://pecl.php.net/package/swoole二:安装Cygwin安装Cygwin注意点1:选择镜像来源2:需要安装的软件(你也可以选择性安装)(1):安装binutils(2):安装gcc-core,gcc-g++(3):安装gdb(4)安装php环境(5):安装pcre-devel(6):安装autoconf
2021-03-02 10:30:06
3095
2
转载 微擎学习--路由解析
1、http://weiqin.com/web/index.php?c=site&a=entry&m=ewei_shopv2&do=web&r=shop.adv当传入的 c 值为 “site”, a 值为 “entry”时则是一个模块路由,m则表示模块对应的名称,该页面对应的视图和控制器文件都在addons/ewei_shopv2目录下do=web表示模块的后台管理r=shop.adv表示视图及控制器的名称控制器对应的路径:addons\ewei_shopv2
2021-01-21 11:59:25
1026
转载 SpringBoot使用MockMVC进行Junit测试并使用Jacoco查看测试的代码覆盖率
一、MockMVC简介MockMVC实现了对HTTP请求的模拟(并不是真正的HTTP请求),能够直接调用Controller进行测试,测试速度快、不依赖网络环境二、使用案例案例的代码链接附在文章最后1)、被测试的Controller@RestController@RequestMapping("/api/product")public class ProductController { @Autowired private ProductService productServi
2021-01-21 11:54:36
1378
转载 给宝塔mysql增加root远程登录
首先登陆phpmyadmin 输入并执行GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’这里的123456为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址2.flush privileges; 这一步一定要做,不然无法成功! 这句表示从mysql数据库的grant表中重新加载权限数据因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。mysql5.7用上面
2021-01-21 11:45:22
1440
原创 mysql查询字段里面时间戳和时间的转化
1、将时间戳转化为日期时间,使用FROM_UNIXTIME()函数例子:选出更新时间大于2018年5月2日0点的的相关记录select operator,FROM_UNIXTIME(updateTime) from umb_dnsmap_info whereupdateTime > 1525190400;2、相应时间转化为时间戳为:当前时间戳:select UNIX_TIMESTAMP();时间转化为时间戳:select UNIX_TIMESTAMP(‘2018-08-09
2021-01-21 11:42:15
1115
1
原创 centos添加定时任务 cron
安装crontab:yum install crontabs查看crontab服务状态:service crond status手动启动crontab服务:service crond start查看crontab服务是否已设置为开机启动,执行命令:chkconfig --list如果没有加入开机启动:chkconfig crond on添加一条定时任务:crontab -e进入编辑器*/3 * * * * /usr/bin/curl http://127.0.0.1/c
2021-01-21 11:37:32
496
转载 php高精度数计算
一、前方有坑php在使用加减乘除等运算符计算浮点数的时候,经常会出现意想不到的结果,特别是关于财务数据方面的计算,给不少工程师惹了很多的麻烦。比如今天工作终于到的一个案例:$a = 2586;$b = 2585.98;var_dump(a−a-a−b);期望的结果是:float(0.02)实际结果:float(0.019999999999982)人生有坑,处处提防二、防坑攻略:1、通过乘100的方式转化为整数加减,然后在除以100转化回来……2、使用number_format转化成字符
2021-01-21 11:22:07
186
转载 SpringBoot-事件监听的4种实现方式
springboot进行事件监听有四种方式:1.手工向ApplicationContext中添加监听器2.将监听器装载入spring容器3.在application.properties中配置监听器4.通过@EventListener注解实现事件监听讲到事件监听,这里我们说下自定义事件和自定义监听器类的实现方式:自定义事件:继承自ApplicationEvent抽象类,然后定义自己的...
2020-12-02 10:35:57
518
1
原创 @Pathvariable注解允许参数为空吗?
@PathVariable不能为空,不能设置默认值,因为null对于url是无意义的。如果参数确实可能为空,需要默认值,可以使用@RequestParams。不能允许为空,但是可以变通。最近遇到个required=false没用的情况。如下:@RequestMapping(value = "/student/{id}", RequestMethod.GET)public Student student(@PathVariable(required = false) Integer id) {
2020-12-02 10:27:22
4693
原创 Ubuntu安装MySQL及常用操作
一、安装MySQL使用以下命令即可进行mysql安装,注意安装前先更新一下软件源以获得最新版本:sudo apt-get update #更新软件源sudo apt-get install mysql-server #安装mysql上述命令会安装以下包:apparmormysql-client-5.7mysql-commonmysql-servermysql-server-5.7mysql-server-core-5.7因此无需再安装mysql-client等。安装过程会提示设置
2020-12-02 10:17:32
832
1
原创 springboot使用MockMvc测试controller
通常,在我们平时开发项目时,如果想要输入URL对Controller进行测试,在代码编辑之后,需要重启服务器,建立http client进行测试。这样会使得测试变得很麻烦,比如,启动速度慢,测试验证不方便,依赖网络环境等,这样会导致测试无法进行,为了可以对Controller进行测试,可以通过引入MockMVC进行解决。MockMvc实现了对Http请求的模拟,能够直接使用网络的形式,转换到Controller的调用,这样可以使得测试速度快、不依赖网络环境,而且提供了一套验证的工具,这样可以使得请求的验证
2020-12-02 10:03:22
510
原创 laravel安装指定版本
安装指定版本composer create-project laravel/laravel=5.6.* demo --prefer-dist查看Laravel版本号:php artisan --version
2020-12-01 17:59:18
972
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人