目录

工欲善其事

实践出真知

活跃标签: linux java mysql 待分类 windows js win10 springboot pdf idea docker 电路 nginx esp32 macOS git vue Arduino maven ffmpeg

存档:

private修饰的方法可以通过反射访问,那么private的意义是什么?

在一个类中,为了不让外界访问到某些属性和方法,通常将其设置为private,用正常的方式(对象名.属性名,对象名.方法名)将无法访问此属性与方法,但有没有其他方法可以访问呢?答案是有的,这就是java反射带来的便利。利用反射访问类的私有属性及方法如下: public class Reflect { private String name; private int age; private Reflect(int age) { this.age = age; } private void speak(String name) { System.out.println("My name is" + name); } public Reflect(String name) { this.name = name; } } 首先,我们要了解三个反射包中的类: Constructor:代表类的单个构造方法,通过Constructor我们可执行一个类的某个构造方法(有参或者无参)来创建对象时。 Method:代表类中的单个方法,可以用于执行类的某个普通方法,有参或无参,并可以接收返回值。 Fiel.....

图解 Git 各种用法,简单明了,一目了然!

基本用法 上面的四条命令在工作目录、暂存目录(也叫做索引)和仓库之间复制文件。 git add files 把当前文件放入暂存区域。 git commit 给暂存区域生成快照并提交。 git reset -- files 用来撤销最后一次git add files,你也可以用git reset 撤销所有暂存区域文件。 git checkout -- files 把文件从暂存区域复制到工作目录,用来丢弃本地修改。 你可以用 git reset -p, git checkout -p, or git add -p进入交互模式。 也可以跳过暂存区域直接从仓库取出文件或者直接提交代码。 img* git commit -a相当于运行 git add 把所有当前目录下的文件加入暂存区域再运行。git commit. git commit files 进行一次包含最后一次提交加上工作目录中文件快照的提交。并且文件被添加到暂存区域。 git checkout HEAD -- files 回滚到复制最后一次提交。 约定 后文中以下面的形式使用图片。 绿色的5位字符表示提交的ID....

js正则表达式

获取字符串中间的内容 'cin>>123123;'.match(/cin>>(\S*);/); 输出: 123123

网络通信

网络协议 网络通信中最重要的就是网络通信协议。当今网络协议有很多,局域网中最常用的有三个网络协议:MICROSOFT的NETBEUI、NOVELL的IPX/SPX和TCP/IP协议。应根据需要来选择合适的网络协议。 TCP/IP协议 每种网络协议都有自己的优点,但是只有TCP/IP允许与Internet完全的连接。TCP/IP是在60年代由麻省理工学院和一些商业组织为美国国防部开发的,即便遭到核攻击而破坏了大部分网络,TCP/IP仍然能够维持有效的通信。ARPANET就是由基于协议开发的,并发展成为作为科学家和工程师交流媒体的Internet。 TCP/IP同时具备了可扩展性和可靠性的需求。不幸的是牺牲了速度和效率(可是:TCP/IP的开发受到了政府的资助)。 Internet公用化以后,人们开始发现全球网的强大功能。Internet的普遍性是TCP/IP仍然使用的原因。常常在没有意识到的情况下,用户就在自己的PC上安装了TCP/IP栈,从而使该网络协议在全球应用最广。 TCP/IP的32位寻址功能方案不足以支持即将加入Internet的主机和网络数。因而可能代替当前实现的标准是IPv....

java8 小技巧保证分组groupingBy后排序不变

问题: 遇到一个小问题,查询出来一组数据后,按照其中的属性进行groupBy 分组 ,分组后要保证顺序不变。但是实际用groupBy进行分组后,返回的数据是杂乱无章的,没有按照原来list 的顺序返回 排查 首先去api中查找解决,查看Java 的 java.util.stream 包 Collectors 类 groupingBy 方法实现,结果如下: //一个参数 public static <T, K> Collector<T, ?, Map<K, List<T>>> groupingBy(Function<? super T, ? extends K> classifier) { return groupingBy(classifier, toList()); } //两个参数 public static <T, K, A, D> Collector<T, ?, Map<K, D>> groupingBy(Function<? super T, ? extends K> ....

js异步请求fetch

Fetch上传文件(不需要设置headers) 实例代码:其它参数可不加把文件放在body中就行 // 上传文件 function uploadFile(f, name) { const fd = new FormData() fd.append('file', f, name) fetch('/jeecg-boot/leading/upload', { method: 'POST', body: fd, cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached credentials: 'same-origin', // include, same-origin, *omit mode: 'cors', // no-cors, cors, *same-origin redirect: 'follow', // manual, *follow, error referrer: 'no-referrer', // *client, no-referrer headers: { 'user-a....

前端和后台传值

fetch get请求: -有参数有值 =》 正常 -有参数没值 =〉 后台可能接到 undefined -没有参数 =》后台接收null

centos7 home目录空间释放添加到指定分区

备份home目录 cd /home tar czvf /home.tgz /home 这样,会在/下生成名叫home.tgz的压缩包,您可以在扩大/home目录后将这个包 解回到新的/home目录中  cd / tar zxvf /home.tgz -C /  如果/home中确实没有什么有用的数据,这一步也可以省略。 在配置中删除home vim /etc/fstab # # /etc/fstab # Created by anaconda on Mon Sep 14 10:59:58 2020 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/centos_llilei-root / xfs defaults 0 0 UUID=f9d37ca9-9024-40e5-9587-b026......

一些docker命令

docker run --name nginx-test -p 8099:80 -d nginx docker exec -it nginx-test bash docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7 --lower_case_table_names=1 docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7 --lower_case_table_names=1 docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql docker run -d --name xzs --privileged -it -d -p 8001:8001 registry.cn-hangzhou.aliyuncs.com/mindskip/xzs:v3.0.6 /usr/sbin/init do....

文件服务器 FastDFS 安装和启动

使用命令 启动: sudo service fdfs_trackerd start sudo service fdfs_storaged start 重启: sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart 终止: sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf stop sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf stop 安装 下载fastdfs安装包和依赖包(sourceforge->fastdfs),然后解压 配置tracker sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf 在/home/python/目录中创建目录 fastdfs/tracker mkdir –p /home/python/f....

mysql 创建表标准语句

create table IF NOT EXISTS test_user ( id int auto_increment, username varchar(255) null, password varchar(255) null, mobile varchar(255), primary key (id) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 comment '权限测试用的表';

mysql

拯救数据库方法 alter table tableName discard tablespace;# 卸载表空间 # 拷贝 idb文件后 alter table tableName import tablespace ;# 导入表空间

mysql 聚合函数 (个人收集的)

sum(列名) 求和 max(列名) 最大值 min(列名) 最小值 avg(列名) 平均值 first(列名) 第一条记录 仅Access支持 last(列名) 最后一条记录 仅Access支持 count(列名) 统计记录数 注意和count(*)的区别 group_concat() #统计group by之后的相同字段

JS 的 URL 的编码或解码方法

URL的合法字符 URL的合法字符表示再浏览器的地址栏中不会被转义的字符,有两种: URL元字符:分号(;),逗号(’,’),斜杠(/),问号(?),冒号(:),at(@),&,等号(=),加号(+),美元符号($),井号(#) 语义字符:a-z,A-Z,0-9,连词号(-),下划线(_),点(.),感叹号(!),波浪线(~),星号(*),单引号(),圆括号(()`) 当输入的字符不符合以上的字符时,浏览器就会把该字符转义,规则:根据操作系统的默认编码,将每个字节转为百分号(%)加上两个大写的十六进制字母。 比如:当再浏览器地址栏中输入 www.baidu.com/q=你好时,会被转义成例如 www.baidu.com/q=%E6%98%A5%E8%8A%82类似的字符串,浏览器才会读取。 JavaScript的四个URL编码/解码方法: encodeURI 将元字符和语义字符之外的字符都进行转义,一般用于知道该URL只用于完整的URL时使用 encodeURIComponent 将除了语义字符之外的字符进行转义,包括元字符,因此,它的参数通常是URL的路径或参数值,而不是整个....

python 激活环境的进入和退出

创建 conda create -n cling 激活 source bin/activate 切换环境 conda activate cling 退出 conda deactivate

js 三种在浏览器储存数据的方法

三种本地存储方式 cookie 前言 网络早期最大的问题之一是如何管理状态。简而言之,服务器无法知道两个请求是否来自同一个浏览器。当时最简单的方法是在请求时,在页面中插入一些参数,并在下一个请求中传回参数。这需要使用包含参数的隐藏的表单,或者作为URL参数的一部分传递。这两个解决方案都手动操作,容易出错。cookie出现来解决这个问题。 作用 cookie是纯文本,没有可执行代码。存储数据,当用户访问了某个网站(网页)的时候,我们就可以通过cookie来向访问者电脑上存储数据,或者某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密) 如何工作 当网页要发http请求时,浏览器会先检查是否有相应的cookie,有则自动添加在request header中的cookie字段中。这些是浏览器自动帮我们做的,而且每一次http请求浏览器都会自动帮我们做。这个特点很重要,因为这关系到“什么样的数据适合存储在cookie中”。 存储在cookie中的数据,每次都会被浏览器自动放在http请求中,如果这些数据并不是每个请求都需要发给服务端的数据,浏览器这设置自....

js 中页面跳转的几种方式和区别

location.href常见的几种形式 self.location.href;//当前页面打开URL页面 window.location.href;//当前页面打开URL页面 this.location.href;//当前页面打开URL页面 location.href;// 当前页面打开URL页面 parent.location.href;//在父页面打开新页面 top.location.href;//在顶层页面打开新页面 注:①如果页面中自定义了frame,那么可将parent、self、top换为自定义frame的名称,效果是在frame窗口打开url地址。 ②此外,window.location.href=window.location.href;和window.location.Reload();都是刷新当前页面。区别在于是否有提交数据。当有提交数据时,window.location.Reload()会提示是否提交,window.location.href=window.location.href;则是向指定的url提交数据. ③用window.open()打开新页面 但是.....

js 将文本以文件的形式上传到服务器

let file; const properties = {type: 'text/plain'}, data = this.code; try { file = new File([data], "file.txt", properties); } catch (e) { file = new Blob(data, properties); } const formData = new FormData() formData.append('file', file, key) postAction(this.url.uploadUrl, formData).then(res => { if (res.success) { } });

Spring boot实现监听Redis key失效事件

开启redis key过期提醒 修改redis相关事件配置。找到redis配置文件redis.conf,只需修改配置文件redis.conf中的:notify-keyspace-events** Ex**,默认为notify-keyspace-events "", 查看“notify-keyspace-events”的配置项,如果没有,添加“notify-keyspace-events Ex”,如果有值,添加Ex,重启redis。 相关参数如图: K:keyspace事件,事件以__keyspace@<db>__为前缀进行发布; E:keyevent事件,事件以__keyevent@<db>__为前缀进行发布; g:一般性的,非特定类型的命令,比如del,expire,rename等; $:字符串特定命令; l:列表特定命令; s:集合特定命令; h:哈希特定命令; z:有序集合特定命令; x:过期事件,当某个键过期并删除时会产生该事件; e:驱逐事件,当某个键因maxmemore策略而被删除时,产生该事件; A:g$lshzxe的别名,因此”AKE”意味着所有....

Docker安装RabbitMQ

查看镜像 docker search rabbitmq:management 拉取镜像 docker pull docker.io/macintoshplus/rabbitmq-management 查看镜像 docker images 制作容器并启动 docker run -d --hostname fuyi-rabbit --name rabbitmq -e RABBITMQ_DEFAULT_USER=guest -e RABBITMQ_DEFAULT_PASS=guest -p 15672:15672 -p 5672:5672 c20 参数说明 -d #后台运行 -- homename fuyi-rabbit #主机名 RABBITMQ_DEFAULT_USER=guest #可视化界面登录用户名 RABBITMQ_DEFAULT_PASS=guest #可视化界面登录密码 -p 15672:15672 #端口映射 c20 #镜像ID 启动成功 docker ps -a 登录访问 http://ip:15672/ 用户名密码为 : guest