- 博客(151)
- 资源 (2)
- 收藏
- 关注
原创 程序员搞副业接外包?醒醒吧兄弟,跑滴滴都比这靠谱!
接个外包项目,轻轻松松月入过万!”——这话听着耳熟吧?程序员老王去年信了这邪,结果熬夜三个月,最后甲方跑路,尾款都没拿到。我哥们小张,曾经也是“副业战士”。有次接了个餐饮系统开发,甲方开口就是:“很简单!最后小张熬出两个黑眼圈,甲方却说:“这和我想的不一样啊…打了八折还得分期付。我知道你想说:“那是他菜!我技术好,肯定能接大单!:定金30%→初版50%→尾款20%,少一分都不交代码。:亲戚/前同事介绍的项目,至少不会跑路。:功能列表写清楚,加需求?
2025-03-15 12:31:02
387
原创 Linux Shell 脚本还不会写?岂不是奥特了
Linux Shell 脚本是一种用于在命令行环境中编写和执行批处理任务的脚本语言。它通过组合多条命令来实现复杂的任务自动化。
2024-07-16 17:14:08
867
原创 网络爬虫基本原理介绍
网络爬虫是一种自动化程序,用于从互联网上获取信息并进行数据抓取。它通过发送HTTP请求获取网页内容,并解析网页内容提取所需信息。
2024-01-19 15:19:09
3040
原创 Linux 系统 curl 命令详解
curl 是一个功能强大的命令行工具,用于与 Web 服务器进行数据通信。它支持多种协议,如 HTTP、HTTPS、FTP、SFTP、SMTP 等,并提供了丰富的选项和参数来执行各种操作,如发送请求、下载文件、上传文件等。下面我将详细介绍 curl 命令的用法。
2024-01-05 15:54:36
3523
原创 Linux 系统 find 命令详解
find命令是 Linux 系统中常用的文件搜索工具,用于在指定目录及其子目录下查找符合条件的文件或目录。它可以根据文件名、文件类型、文件大小、文件权限、修改时间等多种属性进行搜索。常用的find其中path参数表示要搜索的目录路径,如果不指定,则默认搜索当前目录及其子目录。expression参数则是搜索条件表达式,可以使用一系列选项和测试来定义搜索规则。
2024-01-05 15:25:39
1455
原创 Linux 查看网络命令 netstat 详解
netstat 是一个用于显示网络连接、路由表和网络统计信息的命令行工具。它可以帮助你查看当前系统中的网络状态,如已建立的连接、监听端口、路由表等。
2023-12-28 14:52:33
2354
原创 一文了解 StandardTokenizer 分词器,分词原理
StandardTokenizer 是HanLP中的一个分词器,也是默认的标准分词器。它基于词典和规则的方式对中文文本进行分词,将输入的句子切分成一个个独立的词语。基于词典和规则使用一个内置的词典和规则来对中文文本进行分词。词典包含了大量的常见词汇和词语,规则则用于处理一些特殊的情况,如人名、地名、数字等。支持中英文混合分词可以处理中英文混合的文本,并正确地将其切分成独立的词语。例如,“我爱自然语言处理"会被切分成"我”、“爱”、“自然语言处理”。
2023-11-24 14:50:03
2257
原创 万字详解 HTTP 协议,WEB开发再也不会迷茫了
HTTP(Hypertext Transfer Protocol)是一种应用层协议,用于在客户端和服务器之间传输超文本数据。它是现代互联网中最重要的协议之一,经常用于浏览器与Web服务器之间的通信。HTTP允许客户端发起请求并接收服务器响应,它的主要目标是实现客户端和服务器之间的通信和数据交换。HTTP是无状态协议,每个独立的请求-响应周期都是相互独立的,服务器不会保留先前请求的任何信息。
2023-08-23 16:58:57
604
原创 Linux 系统 diff 文件比较命令详解
diff 命令用于比较两个文件或目录之间的差异。它会逐行比较文件的内容,并且在不同的行上显示不同之处。
2023-08-22 17:36:11
3846
原创 一文搞懂NoSQL 数据库 MongoDB
MongoDB是一种开源的、面向文档的非关系型数据库管理系统,于2009年首次发布。它使用BSON 类似JSON 风格的文档来存储数据,而不是传统的行和列的表格形式。MongoDB的设计目标是在处理大量数据时提供高性能和可扩展性。它旨在满足现代应用程序对灵活性、可伸缩性和数据复杂性的要求。
2023-08-22 17:24:50
724
原创 Linux 系统 sort 命令详解
Linux 系统提供了sort命令来对文本文件进行排序。sort命令可以按行、字段或数字进行排序,并支持各种排序选项,以满足不同的排序需求。
2023-08-16 17:50:10
4426
原创 Mysql 事务隔离级别详解
事务隔离是指在数据库中,多个并发执行的事务之间相互隔离的程度。事务隔离级别是一个重要的概念,它定义了事务在读取和修改数据时能够接触到其他事务所做的修改的程度。事务隔离的目的是确保并发事务能够正确地执行,同时保持数据库的一致性和可靠性。在一个并发环境中,多个事务可能同时读取和修改数据库中的数据,如果没有适当的隔离机制,会出现一些问题,如脏读、不可重复读和幻读。脏读(Dirty Read):一个事务读取了另一个未提交事务所做的修改的数据。如果这个未提交的事务最终回滚,那么读取到的数据就是无效的。
2023-08-16 16:20:57
507
原创 Java 类加载机制详解
Java 类加载机制是 Java 运行时的核心组成部分,负责在程序运行过程中动态加载和连接类文件,并将其转换为可执行代码。实现动态加载:Java 类加载机制允许程序在运行时根据需要动态地加载类文件。这种能力使得开发人员可以根据实际需求来加载所需的类,而不需要一次性加载所有的类。这对于大型应用程序和框架来说特别有用,因为它们可能包含大量的类,但只有在需要时才会加载。解决依赖关系:Java 类加载机制可以解决类之间的依赖关系。
2023-08-14 16:43:19
651
原创 Java 锁机制详解,乐观锁,悲观锁,可重入锁 到底是什么,怎么实现
java 锁机制详解,一文搞懂 乐观锁,悲观锁,可重入锁,自旋锁,信号量等锁机制
2023-08-10 15:48:56
2262
原创 Java 多线程并发 CAS 技术详解
CAS(Compare and Swap)是一种并发编程中常用的技术,用于解决多线程环境下的并发访问问题。CAS操作是一种原子操作,它可以提供线程安全性,避免了使用传统锁机制所带来的性能开销。
2023-08-08 14:10:12
3639
原创 Java 多线程 深入解析,让我们都高并发程序更稳健
线程池是一种管理和复用线程资源的机制,它可以在应用程序中创建一组预先初始化的线程,以执行多个任务。线程池维护着一个线程队列,其中包含一定数量的空闲线程。当有新的任务到达时,线程池中的空闲线程会立即执行任务,而不需要每次都创建和销毁线程,从而提高了应用程序的性能和效率。使用线程池的主要目的是为了避免频繁地创建和销毁线程带来的开销,同时有效地控制并发线程的数量,防止过多的线程造成系统资源的浪费和线程切换的开销。
2023-08-07 11:00:26
345
原创 Linux sed 命令详解
这将先将文件input.txt中的所有"foo"替换为"bar",然后将所有"abc"替换为"xyz"。可以使用正则表达式作为sed命令中的匹配模式。模式实现替换操作,将输入文本中的"old"字符串替换为"new"字符串。这将删除文件input.txt中匹配模式"start"和"end"之间的文本。这将直接在输入文件input.txt中将所有的"foo"替换为"bar"。这将删除文件input.txt中匹配模式"pattern"的所有行。这将把文件input.txt中的所有"foo"替换为"bar"。
2023-08-03 18:20:07
709
原创 Linux nohup 命令详解
nohup命令是Linux/Unix系统中非常有用的命令之一。它允许您在后台运行命令或脚本,并且在退出终端会话后仍然保持运行。通过将输出重定向到一个文件中,您可以稍后查看任务的输出。除了基本的nohup命令语法外,还有一些选项可用于更好地控制nohup进程的行为。请记住,在使用nohup时要小心资源消耗,确保系统具备处理长时间运行任务所需的资源。
2023-08-03 16:08:10
6405
原创 Java 克隆技术详解,深拷贝与浅拷贝的区别及实现
克隆是指创建一个对象的副本,使得新创建的对象在内容上与原始对象相同。在编程中,克隆是常用的技术之一,它具有以下几个重要用途和优势:复制对象:使用克隆可以创建一个与原始对象相同的新对象,包括对象的属性和状态。这样可以在不影响原始对象的情况下,对新对象进行修改、操作、传递等。这在某些场景下非常有用,可以避免重新创建和初始化一个对象。隔离性与保护:通过克隆,可以创建一个独立于原始对象的副本。这样,修改克隆对象时,不会影响到原始对象,从而实现了对象之间的隔离性。
2023-08-02 11:02:08
1346
3
原创 万字详解 TCP协议,TCP开发绝不能错过
TCP(Transmission Control Protocol)是一种在计算机网络中广泛使用的传输层协议。它负责提供可靠的、面向连接的数据传输服务,确保数据能够按照正确的顺序和完整性传递。提供可靠的数据传输:TCP协议通过序号、确认和重传机制来确保数据的可靠传输。发送方将每个数据包进行编号,并在接收方收到数据后进行确认,如果数据包丢失或损坏,发送方将重新传输它们,以确保数据的完整性和准确性。
2023-07-19 11:00:44
991
原创 万字详解 Stream 流式编程,写代码也可以很优雅
Stream(流)是 Java 8 引入的一个新的抽象概念,它代表着一种处理数据的序列。简单来说,Stream 是一系列元素的集合,这些元素可以是集合、数组、I/O 资源或者其他数据源。Stream API 提供了丰富的操作方法,可以对 Stream 中的元素进行各种转换、过滤、映射、聚合等操作,从而实现对数据的处理和操作。Stream API 的设计目标是提供一种高效、可扩展和易于使用的方式来处理大量的数据。
2023-07-13 11:32:44
1125
原创 一文搞懂 Java 集合,再也不用担心集合数据类型的操作了
Java集合是用于存储和操作一组对象的数据结构。它提供了一组接口和类,用于处理不同类型的集合数据,如列表、集、映射等。Java集合的主要作用是:存储对象:Java集合可以存储不同类型的对象,并提供了方便的方法来添加、删除和访问集合中的元素。管理数据:集合提供了多种数据结构,如列表、集、映射等,可以根据不同的需求选择合适的数据结构来管理数据。比如,列表可以按照插入顺序存储数据,集可以保证元素的唯一性,映射可以通过键值对来存储和访问数据等。
2023-07-10 16:55:09
677
原创 Linux 系统 less命令详解
Linux中的less命令是一个非常常用的文本查看工具,它可以用于查看任意大小的文本文件,支持滚动翻页、搜索、标记等功能。在本文中,我们将详细介绍less命令的用法、参数和实例,并对其背后的原理和相关技术进行简要讲解。
2023-07-10 14:11:23
21984
原创 Linux 系统 history(查看执行命令历史) 命令详解
history命令是Linux/Unix系统中的一个常用命令,用于查看当前用户在命令行中执行过的命令历史记录。该命令允许用户查看、搜索、编辑和执行之前执行过的命令,为用户提供了方便、快捷的操作方式。本文将全面详细地讲解history命令的各种用法和注意事项,并提供一些实用的技巧和技巧。
2023-07-10 11:38:03
34361
4
原创 Linux 系统 cp 复制命令详解
cp命令是Linux/Unix系统中的常用命令之一,用于复制文件或目录。该命令的语法比较简单,但有很多选项和使用技巧,本文将全面详细地讲解cp命令的各种用法和注意事项。
2023-07-10 11:31:51
3766
原创 万字浅谈 DDD 领域驱动设计
领域驱动设计(Domain-Driven Design,DDD)架构时,它是一种软件设计方法,旨在帮助开发人员更好地理解和解决复杂业务领域的挑战。DDD 架构的目标是将软件设计与实际业务需求紧密结合,通过明确的领域模型和业务概念来支持系统的开发和演化。定义:领域驱动设计是一种基于领域模型的软件设计和开发方法,强调将软件设计与业务领域的实际需求相结合。它提供了一组原则、模式和工具,帮助团队更好地理解业务领域、捕捉业务知识,并以清晰的方式将其映射到软件系统中。
2023-07-07 11:12:43
313
原创 一文搞懂Java多线程,讲的很详细,收藏起来慢慢看
多线程是指在一个程序中同时执行多个线程,每个线程都有自己独立的执行路径。在多线程中,程序的执行可以同时进行多个任务,从而提高系统的资源利用率和响应性能。在传统的单线程编程模型中,程序按照顺序执行,一次只处理一个任务。这种方式在某些情况下可能会导致效率低下或者无法满足需求。而多线程通过将任务拆分为多个子任务,并且在不同的线程上同时执行,从而实现并发处理。
2023-07-05 14:49:19
2311
原创 一文搞懂 ThreadLocal,是时候反问面试官了
ThreadLocaL是Java中的一个线程级别的变量,它提供了一种将数据与每个线程关联起来的机制。每个线程都有自己独立的实例,可以在这个实例中存储和获取数据,而不会与其他线程的数据产生冲突。的作用和用途主要有以下几个方面:可以用于保存每个线程所需的私有数据。例如,在多线程环境下,如果有一个对象需要在线程之间共享,但又希望每个线程都拥有它的私有拷贝,则可以使用来存储这个对象。这样,每个线程都可以独立地读取和修改自己的私有拷贝,而互不干扰。可以避免使用线程同步机制(如锁)来保护共享数据,从而提高程序的并发性能
2023-07-04 11:48:17
6515
3
原创 一文搞懂 Elasticsearch 分布式搜索&分析引擎
Elasticsearch是一个开源的分布式搜索和分析引擎,用于存储、搜索和分析大量的数据。它构建在Apache Lucene库之上,提供了简单易用的RESTful API和丰富的查询语言,使用户可以轻松地进行实时数据索引、搜索和分析。Elasticsearch的背景可以追溯到2010年,由Elastic公司(前称为Elasticsearch BV)创立,旨在解决传统关系型数据库无法处理海量数据和实时搜索的问题。
2023-07-03 11:12:15
1093
原创 Java String 对象超详细讲解,以后再也不怕别人问我String 对象问题了
String类是Java中提供的一个核心类,用于表示字符串的不可变序列。它属于Java标准库的一部分,定义在java.lang包中,并且是一个final类,即不可被继承。下面详细介绍String类的定义和特点:定义:String类是一个引用类型(Reference Type),它用于表示由字符组成的字符串。在Java中,字符串被视为一个对象而不是基本数据类型。每个String对象实例都包含一个字符序列,该序列具有固定的长度和内容。
2023-06-29 14:26:11
1736
原创 一文搞懂 java 泛型,也有可能搞不懂,毕竟讲得太全面了
在许多编程语言中,如Java和C#,泛型类是一种特殊类型的类,它可以接受不同类型的参数进行实例化。泛型类提供了代码重用和类型安全性的好处,因为它们可以与各种数据类型一起使用,而无需为每种类型编写单独的类。// 类成员和方法定义 }在上面的示例中,是一个泛型类的名称,表示类型参数,T可以替换为任何合法的标识符,用于表示实际类型。要使用泛型类,可以通过指定实际类型来实例化它。例如,假设我们有一个名为MyClass在上面的示例中,我们使用整数类型实例化了泛型类。这样,myInstance。
2023-06-29 11:04:06
990
1
原创 Linux 系统 grep 命令超详细讲解
grep 命令是一项非常有用的工具。grep(全称:Global Regular Expression Print)命令用于根据给定的正则表达式搜索文本,并将匹配的行打印出来。
2023-06-27 17:28:12
52130
2
原创 Linux 命令 systemctl 详解
Linuxsystemctl命令是systemd系统和服务管理器的主要命令之一,它可以启动、停止、重启、重新加载和查询系统服务状态等操作。以下是systemctl。
2023-06-27 11:30:33
6183
原创 你知道防御式CSS吗?你知道哪些防御式CSS?
防御式CSS(Defensive CSS)是一种编写CSS样式的方法,旨在处理复杂的代码库或大型项目中的样式冲突和副作用。它通过采用模块化、封装和命名约定等技术,以减少样式之间的耦合性,提高代码的可维护性和可扩展性。通过采用防御式CSS的方法,开发人员可以更好地管理和维护CSS代码,减少样式冲突和隐式副作用,提高项目的可维护性和可扩展性。它特别适用于大型项目或多人合作开发的场景,有助于减少团队协作中的样式冲突问题。
2023-06-27 10:55:31
363
Java实现的贪吃蛇游戏代码
2024-01-25
SQLyog 最新社区免费正版
2023-09-11
Java 生成二维码代码
2023-07-04
最新全国城市编码表2020-03
2022-07-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人