工作笔记
文章平均质量分 54
工作笔记
mumu_wangwei
祝愿看到内容的各位都能不放弃自己。也许美好就在下个路口,你只需要做的就是停下来多看看这个美好的世界。浮生墓,主修“红尘道”,让我们在红尘中修行而不忘初心。
展开
-
【Scala】Scala操作MongoDB
【代码】【Scala】Scala操作MongoDB。原创 2024-07-06 02:06:42 · 224 阅读 · 0 评论 -
【PHP】实现类的无缝动态扩展,设计模式,php工厂模式应用场景,以下代码是工厂模式在框架设计中的真实使用案例代码
php工厂模式应用场景,以下代码是工厂模式在框架设计中的真实使用案例代码。原创 2024-06-30 02:59:04 · 425 阅读 · 0 评论 -
【WX】联系作者
联系作者原创 2024-04-28 10:30:15 · 97 阅读 · 0 评论 -
【PHP】php7.3的composer依赖升级为php8.0
1) 在win cmd下运行php –version显示为原来的版本5.5。好吧,其实已经有答案了,一开始没有反应过来,这个5.5是因为我配置了环境变量,所以一直指向我原来的PHP目录,导致composer失败。2)解决方案:在 我的电脑->属性->高级->环境变量 中添加最新的PHP版本为环境变量,但是必须在之前环境变量的前面,当然也可以把之前的PHP环境变量删除。3)重启cmd或phpstorm运行composer install 就可以了。我直接改这个然后composer update就报错了。转载 2023-08-11 21:36:41 · 378 阅读 · 0 评论 -
【权限系统】权限系统设计模型分析(DAC,MAC,RBAC,ABAC)
权限系统设计可谓博大精深,这篇文章只是介绍了一点皮毛。随着人类在信息化道路上越走越远,权限系统的设计也在不断创新,但目前好像处在了平台期。可能因为在RBAC到ABAC之间有着巨大的鸿沟,无法轻易跨越,也可能是一些基于RBAC的微创新方案还不够规范化从而做到普及。不过在服务化架构的浪潮下,未来这一块必然有极高的需求,也许巨头们已经开始布局了。转载 2023-07-26 16:23:50 · 613 阅读 · 0 评论 -
【LeetCode】笔试题LeetCode
【代码】【LeetCode】笔试题LeetCode。原创 2023-03-28 21:18:20 · 148 阅读 · 1 评论 -
【software】常见流氓软件
1.360软件系列,流氓软件。3.wps办公软件,流氓软件。2.金山安全系列,流氓软件。删不干净,卸载不干净。原创 2023-01-29 18:05:42 · 4188 阅读 · 0 评论 -
【GIT】git本地代码上传到github
执行完后,如果没有异常,等待执行完就上传成功了,中间可能会让你输入Username和Password,你只要输入github的账号和密码就行了。后面的https链接地址换成你自己的仓库url地址,也就是上面红框中标出来的地址。如果想添加某个特定的文件,只需把.换成特定的文件名即可。第七步,也就是最后一步,上传代码到github远程仓库。第五步:重点来了,将本地的仓库关联到github上。cd到你的本地项目根目录下,执行git命令。第三步:将add的文件commit到仓库。第一步:建立git仓库。原创 2023-01-18 21:22:19 · 449 阅读 · 0 评论 -
【Centos7】centos7最小化安装后,再按装图像界面GNOME Desktop
这时,我们可以通过命令 startx 进入图形界面,第一次进入会比较慢,请耐心等待。(可能需要重启,命令为reboot)经过上面的操作,系统启动默认还是命令行页面的,需要我们进行切换。因为权限限制,所以我们需要进入 root 模式,开机使用 root 登陆或者系统运行中切换为 root 用户均可。然后我们开始安装我们需要的图形界面软件,GNOME(GNOME Desktop)在这里我们可以检查一下我们已经安装的软件以及可以安装的软件,命令为。1、首先安装X(X Window System),命令为。原创 2022-10-17 10:47:46 · 1543 阅读 · 0 评论 -
【Centos7】VirtualBox下安装CentOS7并联网(外网,本地都ping通过)
点击新建,然后按如下来分别选择Linux ,Red Hat(64-bit)建议设3G内存然后选择虚拟硬盘动态分配就是一次性不占用这么大硬盘,会动态增加硬盘使用空间这里设置虚拟机存储的物理位置,比较在意C盘空间的话,可以放在其他空闲的磁盘上然后启动刚刚创建好的虚拟机。选择相应的镜像文件,从本地磁盘上导入虚拟机里,点击右侧的文件夹有注册的选项,详见下下张图点击完启动后,会进入系统设置界面,然后选择第一项Install...,完毕后选择语言接着配置网络。原创 2022-10-02 00:51:19 · 1254 阅读 · 0 评论 -
【MYSQL】所有查询表中有2千万数据--sql如何优化
这条sql如何优化所有查询表中有2千万数据执行时间:2.913s执行时间: 0.005swhere 字段加索引,order by 字段加索引.where 字段索引优先于order by索引字段index (name,pwd,id)符合索引,where字段在前原创 2022-06-28 05:14:17 · 334 阅读 · 0 评论 -
【sql】数据库分库分表分页查询(2)
数据库分库分表分页查询(2)解决办法一般都放弃使用它自身的这种排序或者分页,使用nosql工具如 MongoDB,es,solr等创建二级索引。比如我们利用es,把我们常用的搜索条件和排序字段都索引进去,这样我们先查询es,然后返回id(分表策略选取的id),然后再拿这个id去各个表中查询,性能也完全没有问题。如果该id在各个表中刚好是主键,那性能会非常快,因为主键不但是唯一索引,更因为是聚簇索引,聚簇索引上面存的是该列数据。关于MongoDB,es的使用和优化后面会讲到,MySQL的索引优化及索引使用也会原创 2022-06-12 16:05:59 · 1679 阅读 · 0 评论 -
【sql】数据库分库分表设计方案(1)
1.数据库分库分表设计(1)2.数据库分库分表,实现分库分表后的分页查询,比如所有用户信息分页显示,用户表q_user_01–q_user_10淘宝的做法是拆分买家库和卖家库,也就是两个库:买家库、卖家库。买家库,按照用户的id来分库分表。卖家库,按照卖家的id来分库分表。实际上是通过数据冗余解决的:一个订单,在买家库里面有,在卖家库里面也存储了一份。下订单的时候,要写两份数据。先把订单写入买家库里面去,然后通过消息中间件来同步订单数据到卖家库里面去。买家库的订单a修改了后,要发异步消息,通知到卖家库去,原创 2022-06-12 14:51:14 · 1186 阅读 · 0 评论 -
【C++】socket相关函数
Socket本意是(电源)插座,在计算机通信领域中被翻译为“套接字”,是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。通过Socket,两台计算机可以通过网络进行信息的传递。本篇主要介绍了Socket相关函数的一些基本操作,并给出了客户端和服务器之间通信的例子,其环境是Ubuntu18.04 LTS。在Linux/Ubuntu环境下,使用socket()函数建立套接字需要引用头文件,其返回值为一个文件描述符(由于一般情况下0、1、2分别表示标准输入、标准输出、标准错误...原创 2022-06-11 20:05:47 · 3027 阅读 · 0 评论 -
【Java】ubuntu20.04安装java
ubuntu20.04安装Java_qq_38196982的博客-CSDN博客_ubuntu安装java 默认的ubuntu20.04源仓库包含了两个openJDK软件包,Java Runtime Environment(JRE)和Java Development Kit(JDK)。JRE主要包含了Java虚拟机(JVM),类和允许你允许Java程序的二进制包。JDK包含JRE和用于构建Java应用的开发/调试工具和库文件. Java11s java的一个长期支持版本,同时也是Ubuntu20.04转载 2022-06-10 21:09:10 · 2924 阅读 · 0 评论 -
【NPM】ubuntu20.04安装npm
ubuntu20.04安装npmsudo apt install npmubuntu20.04安装nodejssudo apt install nodejs一、概述Node.js 是一个跨平台的 JavaScript 运行环境,它构建在为了在服务器端运行 JavaScript 代码而设计的 Chrome JavaScript 上。它通常被用来构建后端应用,但是它也是非常流行的全栈和前端解决方案。npm 是 Node.js 的默认包管理工具,也是世界上最大的软件仓库。本文我们将为大家讲解,在 Ubunt原创 2022-06-10 18:39:08 · 7347 阅读 · 1 评论 -
【vim】vim插件YouCompleteMe配置文件
配置文件.ycm_extra_conf.py内容如下: #自己定义#配置C语言,C++语言函数提示目录 '-isystem', '/usr/include', '-isystem', '/usr/include/c++/9',#配置项目相关目录,头文进目录,测试目录 '-I', '/home/mumu/Lars/base/mysql-connector-c/include', '-I原创 2022-06-10 03:03:54 · 530 阅读 · 0 评论 -
【VIM】.vimrc配置,已经安装Vundle,YoucompleteMe
全选文本内容 via保存文档 ,wphp变量选中命令 vis选中html属性(不是很稳) vib上一个标签 ,n下一个标签 ,p关闭其他标签 ,o自动补全(无需命令,输入前半部分括号或者引号即自动补全后半部分)插件命令说明搜索框出来后, 输入关键字, 然后我目前使用 ,cm注释 使用 ,c取消注释...原创 2022-06-10 02:52:39 · 104 阅读 · 0 评论 -
【数据库】navicat --oracle数据库创建
第一次登录,与plsql相同,以管理员身份登录图0.1图0.2请注意,这里需要sysdba?1.navicat连接到数据库(服务器上的本地或相同,此屏幕快照演示了本地数据库)当navicat连接到Oracle时,可能会出现错误。此配置写在另一篇文章中连接成功后,打开它图1:2.Others-directory-create directory图2:图3:我复制了创建的地址,更改了姓氏,并将其保存在文件夹中图4:图5:输入目录名称(我在这里测试,您有空),保存?3.其他表空间-创建表空间图6:在表格中输入名称转载 2022-06-08 17:05:35 · 9018 阅读 · 0 评论 -
【Linux】Ubuntu 20.04 wifi 问号连接不上解决方法
1,Ubuntu中文 找到(设置)Ubuntu英文(settings)2,点开 设置(settings)找到 隐私(Privacy)3,在隐私(Privacy)里 关闭 正在检测连接(Connectivity Checking)4,重启原创 2022-06-01 12:19:42 · 3923 阅读 · 0 评论 -
Linux--pthread_once 的用法
pthread_once 一般用于一次性的线程初始化,在整个声明周期中,该方法只执行一次,从而实现一种线程安全的单例模式。Pthread_once () 函数语法要点头文件 :#include<pthread.h>函数原型 : int pthread_once(pthread_once_t *once_control, void(*int_routine)(void));once_control : 一个静态或全局变量,初始化为 PTHREAD_ONCE_INTinit_r.原创 2022-05-30 17:41:49 · 487 阅读 · 0 评论 -
linux 线程锁pthread_mutex_t ,pthread_rwlock_t ,pthread_cond_t ,pthread_spinlock_t
为什么使用线程锁在多线程应用程序中,当多个线程共享相同的内存时,如同时访问一个变量时,需要确保每个线程看到一致的数据视图,即保证所有线程对数据的修改是一致的。如下两种情况不存在不一致的问题:每个线程使用的变量都是其他线程不会读取和修改的变量是只读的当一个线程在修改变量的值时,其他线程在读取这个变量时可能会得到一个不一致的值。一个典型的例子是,在一个多线程程序中,两个及以上个线程对同一个变量i执行i++操作,结果得到的值并不如顺序执行所预期的那样。这就是线程间不同步的一个例子。可以用程序原创 2022-05-30 17:14:58 · 1514 阅读 · 0 评论 -
[Linux]VMware虚拟机Ubuntu20.04扩展系统磁盘空间
Ubuntu系统弹出ubuntu系统根目录空间不足提示文件系统根目录上的磁盘空间不足,卷文件系统根目录仅剩余的提示框框时,需要在现有的Ubuntu系统上扩展磁盘空间。1.关闭VMware中的Ubuntu系统2.在VMware面板中调整硬盘的大小VMware面板=》虚拟机(M)=》设置=》硬盘=》扩展=》调整成80G(根据实际需要调整大小)3.开启Ubuntu系统4.安装和使用gparted4.1.安装gparted$ sudo apt install gparted14.2.命令行启动转载 2022-05-21 03:56:08 · 1006 阅读 · 0 评论 -
ubuntu-docker安装oracle11
docker pull iatebes/oracle_11gDocker image for Oracle Database 11g (database installed)Build from this guide :https://github.com/jaspeen/oracle-11gRun Oracle DB 11g from docker$ docker run -d -p 1521:1521 iatebes/oracle_11gOS usersroot/ins.原创 2022-05-21 02:48:51 · 360 阅读 · 0 评论 -
ubuntu20.04 -vm-扩展硬盘后30G后不能联网,没IP
之前虚拟机ssh连接没问题,今天竟然连不上了。打开虚拟机 ip a 网卡ens33没有iproot@ubuntu:~/Desktop# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 sc...原创 2022-05-20 23:54:18 · 946 阅读 · 4 评论 -
Docker安装Oracle数据库
一、准备工作1.安装docker-ce (有docker老版本也可以直接使用)安装依赖的软件包yum install -y yum-utils device-mapper-persistent-data lvm2配置Docker的阿里云yum源1 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo2 安装docker-ce3 yum inst转载 2022-05-20 23:11:44 · 12047 阅读 · 4 评论 -
ubuntu20 下oracle安装
Oracle Java 13是在几周前发布的。 以下是在Ubuntu 14.04,Ubuntu 16.04,Ubuntu 18.04,Linux Mint 18.x,19.x及更高版本上轻松安装它的方法。要查看Java 13中的新功能和增强功能,请参阅公告。‘Linux Uprising’ team制作了一个安装脚本,可以自动下载并安装Oracle JDK 13,并将Java 13设置为默认的Java版本(设置JAVA_HOME等)。1.)通过Ctrl + Alt + T键盘快捷键或从应用程序菜单中搜原创 2022-05-20 20:52:12 · 1055 阅读 · 0 评论 -
【Git】 github 使用token
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.fatal: Aut原创 2022-05-13 21:11:52 · 3193 阅读 · 0 评论 -
【GitHub】GitHub上README.md编写
关于Markdown的基本编写语法,我直接以代码的形式展示,你可以直接copy下面代码去看显示结果:一、标题写法:第一种方法:1、在文本下面加上 等于号 = ,那么上方的文本就变成了大标题。等于号的个数无限制,但一定要大于0个哦。。2、在文本下面加上 下划线 - ,那么上方的文本就变成了中标题,同样的 下划线个数无限制。3、要想输入=号,上面有文本而不让其转化为大标题,则需要在两者之间加一个空行。另一种方法:(推荐这种方法;注意⚠️中间需要有一个空格)关于标题还有等级表示法,分为六个等级,显示原创 2022-05-13 04:00:09 · 385 阅读 · 0 评论 -
【PHP】composer 使用
命令行执行 composer init步骤:# 1. 输入项目命名空间# 注意<vendor>/<name> 必须要符合 [a-z0-9_.-]+/[a-z0-9_.-]+Package name (<vendor>/<name>) [root/test_composer]:yourname/projectname# 2. 项目描述Description []:这是一个测试composer init 项目# 3. 输入作者信息,直接回车..转载 2022-05-12 11:04:34 · 655 阅读 · 0 评论 -
【GIT】 运行git命令出现lf will be replaced by crlf 的解决方法
warning: LF will be replaced by CRLF in application/admin/nginx.htaccess.The file will have its original line endings in your working directorywarning: LF will be replaced by CRLF in application/task/Log/202205/12_exception.log.The file will have its or原创 2022-05-12 10:15:13 · 1563 阅读 · 0 评论 -
【PHP】php Composer 安装使用
依赖管理Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。这种想法并不新鲜,Composer 受到了 node'snpm和 ruby'sbundler的强烈启发。而当时 PHP 下并没有类似的工具。Composer 将这样为你解决问题:a) 你有一个项目依赖于若干个库。b) 其中一些库.....原创 2022-05-11 21:44:06 · 1791 阅读 · 0 评论 -
【PHP】php composer在windows、Linux下安装
Introduction#Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you.Dependency management#Composer isnota package manager in the same sens..原创 2022-05-11 21:38:17 · 234 阅读 · 0 评论 -
【PHP】vim代码提示补全
CTRL+n 普通关键字 CTRL+n CTRL+x 当前缓冲区关键字 CTRL+x CTRL+i 文件关键字 CTRL+x CTRL+] 标签文件关键字 CTRL+x CTRL+k字典查找 CTRL+x CTRL+f 文件名补全 CTRL+x CTRL+o全能(Omni)补全上面两个在一行的都是表示一条命令。当挑出自动补全的菜单之后,如果想关掉,如果发现手动输入会更快,CTRL+e可以终止本次操作。1.英文单词补全有时候可能想通过自动补全功能输入某个单词,但是它没有在任何打开的缓冲区转载 2022-05-11 10:03:03 · 1109 阅读 · 0 评论 -
【架构】单体应用->集群->分布式->微服务->ServiceMesh
1. 单体架构1.1 单体应用相对的,要理解什么是微服务,那么可以先理解什么是单体应用,在没有提出微服务的概念的“远古”年代,一个软件应用,往往会将应用所有功能都开发和打包在一起。1.2 集群架构随着用户规模和业务量的不断上涨,单个应用服务器将出现性能瓶颈,对于PB级的数据和高并发用户大流量访问,单一或者主备的数据库、文件系统都已经不能满足需求,需要集群化来分担负载。当数据规模达到一定规模,传统关系型数据库性能下滑非常严重,通过分库分表也难以应对,为了支撑海量数据和流量,出现了NoSql数据库,转载 2022-05-11 09:48:47 · 834 阅读 · 0 评论 -
C++ gdb调试
基础用法1. 简介GDB(GNU Debugger)是GCC的调试工具。其功能强大,现描述如下:GDB主要帮忙你完成下面四个方面的功能:1.启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。2.可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)3.当程序被停住时,可以检查此时你的程序中所发生的事。4.动态的改变你程序的执行环境。2 生成调试信息一般来说GDB主要调试的是C/C++的程序。要调试C/C++的程序,首先在编译时,我们必须要把调试信息...转载 2022-05-11 00:49:19 · 4467 阅读 · 0 评论 -
Vim使用Vundle安装代码补全插件(YouCompleteMe)
Vim使用Vundle安装代码补全插件(YouCompleteMe)安装 Vundle它的使用方法很简单,安装一个插件只需要在 ~/.vimrc 按照规则中添加 Plugin 的名称,某些需要添加路径,之后在 Vim 中使用:PluginInstall既可以自动化安装。1、先新建目录mkdir ~/.vim/bundle/Vundle.vim2、git 克隆 Vundle 工程到本地git clone https://github.com/gmarik/Vundle.vim.git ~/.原创 2022-04-23 00:01:36 · 1102 阅读 · 0 评论 -
C++ 文件读取read()write()
read函数read系统函数从打开的设备或文件中读取数据,即将数据从外设上经过内核读到用户空间,函数原型如下:#include <unistd.h>ssize_t read(int fd, void *buf, size_t count); 从 fd 中读取数据到 buf 中,count 是要求读到的字节数。fd为相应的文件描述符;buf为用户给定的数据缓冲区,该缓冲不是固定大小的,由count值决定其大小(用户给定,字节数)。write函数write系统函数原创 2022-04-12 05:41:00 · 2587 阅读 · 0 评论 -
vim常用命令
1.命令行模式打开双屏:vsp src/tcp_server.cpp以下是vim关于窗口分割的命令 :(以下命令在最后一行模式下)1、水平窗口分割::split(开启另一个窗口察看同一文件):split 文件名(开启另一个窗口察看指定文件)2、垂直窗口分割::vsplit(开启另一个窗口察看同一文件):vsplit 文件名(开启另一个窗口察看指定文件)3、在窗口之间进行切换:cntl+w+w:按住cntl键,同时按下两次w键。从一个窗口切换到另一个窗口(一般就会开两个窗口,多了会显得乱,原创 2022-04-11 15:30:47 · 381 阅读 · 0 评论 -
vim使用格式化代码
vim代码格式化在命令状态下输入gg,光标跳转到文件首部,然后在键盘下输入"=G"centos7下cp /etc/vimrc ~/.vimrcvim ~/.vimrcset sw=4set ts=4filetype indent onset cindentUbuntu下cp /etc/vim/vimrc ~/.vimrcvim ~/.vimrcset sw=4set ts=4 filetype indent onset cindent...原创 2022-04-11 02:24:35 · 1649 阅读 · 0 评论