- 博客(552)
- 收藏
- 关注
原创 【经典】Java工程师必读书籍,计算机基础资料推荐
对与做技术的人,总是感觉时间不够用。1. 为什么学Java呢? 大概问一下,我们为什么学习Java呢?我思考了下,大概有以下几个原因:热爱技术,对计算机编程非常感兴趣 因为Java的优势:Java语言摆脱了硬件平台的束缚,实现了一次编程,到处运行的效果,,也就是Java是跨平台的优势;提供了一种相对安全内存管理和访问机制,吸收了C++的优点,避免了绝大部份的内存泄漏和和指针越界的问题;实现了热点代码检测和运行时编译及优化,使得Java随着运行时间的增长而获得更高的性能;Java有一套完整..
2020-10-13 11:42:10 731 2
原创 go中的rune类型
汉字的16进制值得区间在UTF-8的第三区段,那么在go的编码下会占用三个字符。看上面的结果The Shy: 7,这个好理解,英文的字符串的长度为7,英雄联盟: 12。将Unicode码点转换为对应的字符(汉字)。其中,%c 是一个占位符,表示将一个Unicode码点格式化为对应的字符。rune其实就是int32的数据类型,对于汉字等,将汉字转化为Unicode码点。结果打印:打印出字符在字符串中的索引位置 k 和对应的Unicode码点 v。go语言中 ,rune其实是一种int32的数据类型的别名。
2023-11-11 18:39:38 13326
原创 go语言,yaml实现简单的workflow工作流
工作流的作用就是通过yaml配置文件,将关于本工作流的一个个task任务串联起来形成一个大的功能体。通过加载yaml,将任务执行的顺序固定化。yaml都是key:value结构。- 代表的是一个数组,数组中的元素是key:value结构,这个value还可以是数组类型等等。1.创建一个yaml文件,名字可以是student.yaml。现在举个具体的案例,来实现一个简易的工作流,更加通俗易懂。这里举了一个用户注册的功能。我把参数信息都打印出来了。创建一个main.go。2.创建go文件测试。
2023-10-28 20:38:46 13938
原创 什么是脚本文件,脚本的执行,脚本格式等
脚本文件是包含一系列计算机命令的文本文件,通常用于自动化任务、自定义功能或执行特定操作。脚本文件的文件名通常以脚本语言的扩展名结尾,以便操作系统和用户能够识别它们。:脚本文件通常用于自动执行一系列任务,以减少手动操作的需求。:脚本文件通常可以在多个操作系统上运行,尤其是基于脚本语言的脚本,因为它们是解释型的,不依赖于底层操作系统。:脚本文件中包含的命令按顺序执行,可以与操作系统的命令行工具和脚本语言的功能一起使用。脚本很简单,纯文本,./执行脚本。总之,按顺序执行,纯文本,执行简单等。
2023-10-24 20:47:30 4985
原创 【保姆级教程】:docker搭建MongoDB三节点副本集
创建副本集,1主2从,主负责增删改,当然查也可以,从负责只读。远程的linux系统,在远程的linux系统上使用docker搭建mongoDB的三节点副本集。注意:mongoDB版本:mongo6.0之前的版本,执行的时候使用mongo这个命令启动客户端,mongo的6.0版本之后使用mongosh命令启动客户端。重要的事情说三遍!重要的事情说三遍!重要的事情说三遍!注意:mongoDB版本:mongo6.0之前的版本,执行的时候使用mongo这个命令启动客户端,mongo的6.0版本之后使用mongosh
2023-10-23 20:09:08 1732
原创 centOS启动mongoDB错误:./mongod: error while loading shared libraries: libcrypto.so.10: cannot open share
问题是:libcrypto.so.10这个库 未安装。
2023-10-18 12:48:10 1857 1
原创 windows本地文件上传linux 或 linux输入rz命令后出现receive.**B0100000023be50
这种现象需要客户端支持,或者使用Xshell工具等。但是有一种简单的方法,使用。
2023-10-18 10:27:29 1651
原创 go语言中比较函数 reflect.DeepEqual(a any,b any) 注意小坑
reflect.DeepEqual(a any,b any)主要比较切片,map的深度是否一致,包括数据的值,以及数据类型是否一致。但是在比较的时候如果mapA,和mapB的顺序不一致,会返回false。创建2个user1.json,user2.json,代码如下。
2023-10-16 20:33:00 1039
原创 【数据库】通过实例讲清楚,Mongodb的增删查改,分组查询,聚合查询aggregate
mongodb中,基本的概念是文档,集合,数据库。fieldMongoDB自动将_id字段设置为主键。MongoDB不支持表的连接。一个mongodb可以建立多个数据库,一个数据库可以创建多个集合,一个集合很总可以有多个文档,数据库存储在data中。
2023-09-03 17:47:34 2733
原创 ssh命令
ssh全称为secure shell,是一种网络协议,主要作用于计算机之间的加密登录。在Linux操作系统上很常见,比如当前本地物理机使用ssh登录到远程计算机,那么就可以任务该登录是安全的。那么ssh协议为什么是安全的呢?因为这里使用了混合加密,也就是公钥+私钥的形式加密。登录的过程是这样的,首先用户向远程计算机发送登录请求,把自己得公钥发给用户;用户使用这个公钥,将登录密码加密后,发送回来;远程主机用自己得私钥,解密登录密码,如果密码正确,就同意了用户登录。
2023-08-31 10:37:39 877
原创 【go语言基础】go中的方法
方法是从属于某个结构体或者非结构体的。在func这个关键字和方法名中间加了一个特殊的接收器类型,这个接收器可以是结构体类型的或者是非结构体类型的。这个结构体做为值接收器需要拷贝整个结构体,这个代价十分昂贵,这种情况下使用指针接收器,结构体不会被拷贝,只会传递一个指针到方法的内部。当拷贝一个结构体的代价过于昂贵的时候,比如说结构体中有很多字段,如果方法内使用。指针接收器可以使用在:对方法内部的接收器所做的改变应该对调用者可见时。大多数方法都使用的是结构体从属,注意传递的是值传递还是指针传递。
2023-08-11 16:57:14 700
原创 【go基础】go并发编程之channel
channel通道是一种比较重要的数据结构,用于多个协程之间的通信。可以把channel想象成一个传送带,将协程想象成传送带周边的人,一个人往传送带上放东西,传送带另一端的人将传送带的东西取走。也就是左边的goroutine是负责发送数据的,右边的goroutine是负责接收数据的。data会通过channel,从左边的goroutine传送的右边的goroutine。
2023-06-28 21:39:37 384
原创 【leetCode:剑指 Offer】06. 从尾到头打印链表
输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。先将链表中的元素入栈,然后遍历栈内元素,将元素加入到数组中。倒序输出,使用栈Stack的数据结构。
2023-05-29 23:38:10 557 1
原创 【leetCode:剑指 Offer】24. 反转链表
head = head.next,head指向的是head的下一个节点。定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。定义pre当前cur节点的前一个节点,cur指向head指向的节点.cur = head,cur指向head指向的节点。pre = cur, pre指向cur指向的节点。当前while循环中,
2023-05-29 22:21:28 525
原创 【leetCode:剑指 Offer】67. 把字符串转换成整数
1.题目描述写一个函数 StrToInt,实现把字符串转换成整数这个功能。不能使用 atoi 或者其他类似的库函数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余的字符,这些字符可以被忽略,它们对于函数不应该造成影响。注意
2023-05-29 21:08:43 527
原创 【leetCode:剑指 Offer】20. 表示数值的字符串
至少一位数字,后面跟着一个点 '.' ,后面再跟着至少一位数字。至少一位数字,后面跟着一个点 '.' ,后面再跟着至少一位数字。(可选)一个 'e' 或 'E' ,后面跟着一个 整数。(可选)一个符号字符('+' 或 '-')(可选)一个符号字符('+' 或 '-')(可选)一个符号字符('+' 或 '-')一个点 '.' ,后面跟着至少一位数字。一个点 '.' ,后面跟着至少一位数字。至少一位数字,后面跟着一个点 '.'至少一位数字,后面跟着一个点 '.'②数值,包括小数,整数。(可选)一个符号字符(
2023-05-27 18:47:03 836
原创 【详解】MD5加密真的安全吗?不安全有什么解决办法?
1、MD5加密简介在用户注册是时候,通常使用MD5加密,先看下什么是MD5加密,以及加密过程?MD5全名Message-Digest Algorithm 5(信息-摘要算法)是一种不可逆的加密算法。2、MD5有以下特性:压缩性:任意长度的数据,算出的MD5值长度都是固定的。容易计算:从原数据计算出MD5值很容易。抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困
2022-05-10 10:37:15 2908
原创 【打卡第259道】【二分】【leetCode高频】:34. 在排序数组中查找元素的第一个和最后一个位置
1、题目描述给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。进阶:你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗?2、算法分析本题的数组为升序数组,使用二分查找解决此问题。明确几个点:1、找左半边的位置①二分查找的范围:左边界left = 0,有边界right=nums.length - 1②假如数组中存在targe
2022-05-06 18:17:34 190
原创 【打卡第258道】【字符串】【leetCode高频】:8. 字符串转换整数 (atoi)
1、题目描述请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。将前面步骤读入的这些数字转换为整数(即
2022-05-04 16:47:44 2036
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人