- 博客(133)
- 资源 (2)
- 收藏
- 关注
原创 Linux设置服务开机自启动脚本
文件内容如下:我的服务主要有三个服务,根据个人情况修改路径和启动服务。恭喜你,已学会了脚本的开机启动过程。1、我目前系统用的是Ubuntu系统。
2025-10-29 15:16:30
171
原创 如何快速启动HTTP服务器访问本地文件
通过如下名称查询是否安装python成功 通过命令:python --version显示版本号,环境ok。
2025-09-29 09:02:40
178
原创 深度学习yolov8模型 目标检测算法处理训练工业类电焊缺陷数据集 识别检测焊接焊缝缺陷检测数据集 建立基于深度学习的yolov8焊接焊点焊缝缺陷检测
每个图像都需要有一个对应的.txt文件,格式为:class_id center_x center_y width height,所有坐标归一化到[0,1]。深度学习yolov8模型 处理训练工业类电焊缺陷数据集 识别检测焊接焊缝缺陷检测数据集 建立基于深度学习的yolov8焊接焊点焊缝缺陷检测。model = YOLO('yolov8s.yaml') # 根据需求选择不同大小的模型如'n', 'm', 'l', 'x'YOLOv8训练焊接焊缝缺陷检测数据集,基于训练好的权重进行推理。
2025-09-18 18:49:32
1021
原创 基于Opencv+YOLO的实时目标检测
通过ananconda集成环境进行安装:安装好后,进入anaconda安装目录下,输入python出现以下,表示安装成功退出python编辑,输入:exit 回车查看已经安装的库:执行 :cd Scripts查询当前已经支持的工具包:pip list安装 opencv-python输入:pip install opencv-python 也可以指定版本号安装:pip install opencv-python==3.4.15 不加版本号默认最新的,需注意:3.4.2+会涉及到专利问题。
2025-09-18 14:33:08
271
原创 一小时SpringCloud Alibaba微服务项目
作者微服务是一种架构风格,代表着一种通过将应用程序拆分为小型、独立的功能模块(服务)的开发方式。每个模块(服务)实现独立的业务功能不限语言,不限技术;服务之间通过轻量级的通信机制(例如 HTTP/REST 或消息队列)进行交互。解耦应用程序,提升灵活性和维护性。1. Spring Cloud Gateway:网关Spring Cloud GateWay 是微服务模块的网关,整合 Nacos,实现动态路由的配置。
2025-09-16 11:57:21
924
原创 Android Studio 构建项目时 Gradle 下载失败的解决方案
下载地址 https://services.gradle.org/distributions/gradle-8.1-bin.zip 连接超时(10秒)。重新同步项目(点击 Sync Project with Gradle Files)。保存至本地目录(如 C:\gradle\gradle-8.1-bin.zip)。修改项目级 gradle-wrapper.properties。网络环境限制(如公司防火墙、地区网络屏蔽)。从腾讯云镜像下载对应版本的 .zip 文件。方案1:配置国内镜像代理(推荐)
2025-09-09 14:58:55
2168
原创 焊接自动化测试平台图像处理分析-模型训练推理
1、使用技术栈:jdk17/springboot/python/opencv/yolov8。该命令会将当前激活的虚拟环境退出,返回base环境或系统默认环境。3、通过虚拟环境安装进行隔离。2、JAVA环境搭建。安装python3.13。4、mysql8下载安装。激活的环境,直接输入。安装schedule。
2025-09-04 16:08:15
516
原创 Ubuntu系统中安装MySQL后若出现客户端远程连接失败的问题
ERROR 2003 (HY000):通常因防火墙、bind-address配置或服务未启动导致。云服务器安全组:若使用阿里云、腾讯云等,需在控制台配置安全组规则,允许3306端口的入站流量。密码错误:确保密码正确且已通过ALTER USER或GRANT命令更新。mysql -h 服务器IP -P 3306 -u 用户名 -p。修改bind-address后需重启MySQL服务生效。正常应显示0.0.0.0:3306或:::3306。一、检查MySQL服务状态。
2025-09-04 11:26:18
357
原创 在Ubuntu系统中为MySQL创建root用户和密码
插件兼容性:MySQL 8.0默认使用caching_sha2_password插件,若需兼容旧应用,需改为mysql_native_password。远程访问:默认仅允许本地登录,如需远程访问需额外配置bind-address和用户权限。方法2:通过debian-sys-maint账户修改(适用于密码未知时)。安全风险:避免使用简单密码,建议结合大小写字母、数字和特殊字符。方法1:直接修改root密码(适用于MySQL 8.0+)。一、安装MySQL(若未安装)。三、配置密码策略(可选)。
2025-09-04 11:19:09
351
原创 Ubuntu系统安装jdk全过程-测试验证通过
1、下载Oracle JDK 17:bashCopy Code置JAVA环境变量1、解压软件2、配置全局变量放到最后面在nano编辑器中保存并退出的步骤如下::按下快捷键Ctrl + O(即按住Ctrl键再按字母O),底部会提示确认文件名,直接按Enter确认保存。:按下快捷键Ctrl + X即可退出nano。
2025-09-03 17:53:56
357
原创 opencv+yolov8n图像模型训练和推断完整代码
1.'加载模型#2.检测目标#加载预训练模型#官方提供的基础测试和训练模型#首次运行自动下载。#2.检测目标#show=True 显示检测结果#save=True,保存检测结果#检测网络图片。
2025-08-27 13:44:53
958
原创 在 Ubuntu 系统上安装 MySQL
默认情况下,MySQL 只允许本地访问。禁止 root 用户远程登录(推荐选择。# 升级已安装的软件包(可选)# 查看 MySQL 服务状态。# 安装 MySQL 服务器。# 如果服务未运行,手动启动。删除测试数据库(推荐选择。重新加载权限表(推荐选择。删除匿名用户(推荐选择。(如果安装时未设置)。-- 使权限立即生效。
2025-08-27 11:52:00
960
原创 centos7安装python3.13.3
-enable-optimizations参数的作用是开启优化编译,以此提升Python的性能。altinstall防止覆盖系统默认的Python版本。从Python官方网站下载你想要安装的Python版本的源代码。在安装新软件之前,建议先更新系统的软件包到最新版本,以此确保系统的稳定性和安全性。为了能够编译和安装Python,需要安装一些必要的依赖包。如果成功显示Python 3.13.2的版本信息,就表明安装成功。3. 下载Python源代码。7. 安装pip(可选)2. 安装必要的依赖包。
2025-08-26 09:24:05
534
原创 Centos下安装Jdk17
上一步中已将压缩包上传到目录 /download (具体看自己的目录)通过getconf LONG_BIT命令确定需要哪个安装包。自行选择版本以及安装包 本篇以jdk17为例。# 将压缩包解压到/usr/local目录。我是64 那就下载对应的安装包。拿到下载的 tar.gz压缩包。三. 配置环境变量(重点)一. 资源准备与环境说明。检查环境变量是否配置成功。
2025-04-11 16:30:37
998
原创 maven项目pom.xml第一行报错处理方案(已解决)
maven项目pom.xml第一行报错: org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apach网上查到的资料有1、把parent version改成2.1.4.RELEASE 我试了之后发现<parent><groupId>org.springframework.boot</groupId><art.
2020-07-10 11:41:52
2334
原创 JAVA充电秘籍(one)
最多有多少的任务等待执行这个问题和BlockingQueue相关。 BlockingQueue有三个子类,一个是ArrayBlockingQueue(有界队列),一个是LinkedBlockingQueue(默认无界,但可以配置为有界),PriorityBlockingQueue(默认无界,可配置为有界)。所以,对于有多少个任务等待执行与传入的阻塞队列有关。newFixedThrea...
2020-05-27 16:54:02
448
原创 JAVA高级工程师面试指南(持续更新中。。。。)
1、Mybatis 一级缓存(sqlSession)、二级缓存(需要开启)mapper级别的(namespace)MyBatis的二级缓存相对于一级缓存来说,实现了SqlSession之间缓存数据的共享,同时粒度更加的细,能够到namespace级别,通过Cache接口实现类不同的组合,对Cache的可控性也更强。 MyBatis在多表查询时,极大可能会出现脏数据,有设计上的缺陷,安全使用二...
2020-04-22 22:33:51
772
原创 关于服务器之间接口调用中文乱码问题解决
关于服务器之间接口调用中文乱码问题解决常规解决办法:(1)、String userID = new String(request.getParameter("userID").getBytes("iso-8859-1"), "utf-8");(2)、request.setCharacterEncoding("UTF-8");(3)、如果是页面请求,并用了encode加密,那么需要...
2019-12-18 17:51:24
2670
原创 java中HashMap原理?面试?你是谁,你在哪?
1、为什么用HashMap?HashMap是一个散列桶(数组和链表),它存储的内容是键值对(key-value)映射HashMap采用了数组和链表的数据结构,能在查询和修改方便继承了数组的线性查找和链表的寻址修改HashMap是非synchronized,所以HashMap很快HashMap可以接受null键和值,而Hashtable则不能(原因就是equlas()方法需要对象,因为HashM...
2019-10-21 17:58:34
230
原创 arrayList和vector的区别
首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList、Vector和LinkedList。List用于存放多个元素,能够维护元素的次序,并且允许元素的重复。3个具体实现类的相关区别如下: ArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能...
2019-10-21 17:08:01
290
原创 JAVA获取所有请求参数和头部信息
//获取所有的请求参数Enumeration<String> paraNames=request.getParameterNames();for(Enumeration<String> e=paraNames;e.hasMoreElements();){ String thisName=e.nextElement().toString(); St...
2019-09-25 08:54:31
4519
原创 Ambiguous mapping. Cannot map 'XXXXXController' method
Ambiguous mapping. Cannot map 'XXXXXController' method问题的一案板原因是:@RequestMapping(value=XXX) 可能是同一个Controller或者 是不同的Controller。 XXX重名导致。
2019-09-19 09:46:09
392
原创 linux,日志查找技巧
1.查询日志中含有某个关键字的信息1cat app.log |grep 'error'12.查询日志尾部最后10行的日志1tail -n 10 app.log13.查询10行之后的所有日志1tail -n +10 app.log 14.查询日志文件中的头10行日志1head -n 10 app.log 15.查询日志文件除了最后10行的其他所有日志1...
2019-09-11 19:56:13
372
原创 百万级访问量—高并发问题的解决历程
一、单台服务器+数据库(原始)原始架构二、增加反向代理反向代理代理是一个接收和转发请求的过程。正常情况下,「正向代理」代理的对象是客户端,「反向代理」代理的对象是服务端,它完成这些功能:健康检查功能,确保我们的服务器是一直处于运行状态的路由转发功能,把请求转发到正确的服务路径上认证功能,确保用户有权限访问后端服务器防火墙功能,确保用户只能访问允许使用的网络部分等等...
2019-09-10 11:28:05
2941
原创 创建线程池有哪几种方式
通常开发者都是利用Executors提供的通用线程池创建方法,去创建不同配置的线程池,主要区别在于不同的Executors目前提供了5种不同的线程池创建配置:1、newCachedThreadPool(),它是用来处理大量短时间工作任务的线程池,具有几个鲜明特点:它会试图缓存线程并重用,当无缓存线程可用时,就会创建新的工作线程;如果线程闲置时间超过60秒,则被终止并移除缓存;长时间闲置时,...
2019-08-30 10:24:23
14518
原创 notify()和 notifyAll()有什么区别
notify()和notifyAll()的区别?notify():唤醒一个处于等待状态的线程,注意的是在调用此方法的时候,并不能确切的唤醒某一个等待状态的线程,而是由JVM确定唤醒哪个线程,而且不是按优先级。notifyAll():唤醒所有处入等待状态的线程;并可以理解为把他们排进一个队列;只不过只有头部的线程获得了锁,才能运行;注意!!并不是给所有唤醒线程一个对象的锁,而...
2019-08-30 10:16:32
1781
原创 sleep() 和 wait() 有什么区别?
1、这两个方法来自不同的类分别是Thread和Object,sleep方法属于Thread类中的静态方法,wait属于Object的成员方法。2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。3、wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在任何地方使用(使用范围)。sleep方法属...
2019-08-30 10:14:51
312
原创 多线程
callable 与 runnable 的区别Callable接口比Runnable接口要新一点,它是在 Java 5 的时候发行的。尽管Callable跟Runnable接口都是设计来代表一个任务(task), 这个任务可以被任意线程执行, 但两者间还是有一些明显的差异. 在我看来, 最主要的差异在于Callable可以在内部的call()方法返回执行的结果, 而Runnable则不行另...
2019-08-30 09:38:25
215
原创 java 容器相关
网易面试:问:Java容器有哪些,你聊一聊吧Java容器:数组,String,java.util下的集合容器数组长度限制为 Integer.Integer.MAX_VALUE;String的长度限制: 底层是char 数组 长度 Integer.MAX_VALUE 线程安全的List:存放有序,列表存储,元素可重复Set:无序,元素不可重复Map:无序,元素可重...
2019-08-29 16:23:08
200
原创 接口、抽象类、普通类对比与分析
抽象类和普通类主要有三点比较大的区别:1.首先应该知道,抽象类是不能被实例化的,就是不能用new调出构造方法创建对象,而普通类则反之!2.抽象类的访问权限限于Public和Protected,因为抽象类的方法是需要继承之后让子类去实现的,如果为Private,则无法被子类继承,子类也无法实现该方法package com.test.test;public abstract clas...
2019-08-28 16:50:25
230
原创 大数据量高并发访问的数据库优化方法
一、数据库结构的设计如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能。所以,在一个系统开始实施之前,完备的数据库模型的设计是必须的。在一个系统分析、设计阶段,因为数据量较小,负荷较低。我们往往只注意到功能的实现,而很难注意到性能的薄弱之处,等到系统投入实际运行一段时间后,才发现系统的性能在降低,这时再来考虑提...
2019-08-28 10:00:18
791
原创 使用MQ消息队列的优缺点
公司的项目一直都是在使用MQ的,但是由于使用的功能很简单,所以一直都是知其然不知其所以然,作为一个程序猿有必要了解每一个使用的技术,为什么使用它?它的优点是什么?缺点是什么?等等。。。2|0使用mq的好处2|1解耦与复用系统A要发送一个消息到多个系统,如果此时每增加一个系统,系统A都需要通过修改源码来增加接口,此时耦合非常高,但是如果中间使用消息队列的话,系统只需要发送一次...
2019-08-26 11:50:15
242
原创 数据库分库分表策略的具体实现方案
一、MySQL扩展具体的实现方式随着业务规模的不断扩大,需要选择合适的方案去应对数据规模的增长,以应对逐渐增长的访问压力和数据量。关于数据库的扩展主要包括:业务拆分、主从复制,数据库分库与分表。这篇文章主要讲述数据库分库与分表1.1、业务拆分在 大型网站应用之海量数据和高并发解决方案总结一二 一篇文章中也具体讲述了为什么要对业务进行拆分。业务起步初始,为了加快应用上线和快速迭代,很...
2019-08-26 11:42:01
200
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅