
OSI参考模型
OSI或开放系统互连模型是由国际标准组织(ISO)开发的。它提供了一个分层的网络框架,该框架概念化了异构系统之间应如何进行通信。它具有七个相互连接的层。OSI模型的七个层是物理层,数据链路层,网络层,传输层,会话层,表示层和应用程序层,如下图所示:物理层,数据链路层和网络层是网络...
2024-01-10
nano卡和小卡区别
SIM小卡包含两种,一种是微型小卡(Micro SIM)另外还有一种比微型小卡还小的卡,名叫Nano SIM卡。小卡与nano卡不是同一种。Nano SIM卡、Micro SIM卡和标准SIM卡区别主要是以下几点区别:区别一:从大小上看Nano SIM卡尺寸为12mm ×9mm;SIM卡:尺寸为25mm×15mm;小卡Micro SIM卡尺寸是12mm×15mm。区别二:从先后顺序看SIM卡是第...
2024-01-05
Jekyll 将纯文本转换为静态博客网站
Jekyll 是一个简单的免费的 Blog 生成工具,类似WordPress。但是和 WordPress 又有很大的不同,原因是 jekyll 只是一个生成静态网页的工具,不需要数据库支持。但是可以配合第三方服务,例如 discuz。最关键的是 jekyll 可以免费部署在 Github 上,而且可以绑定自己的域名。特点简单无需数据库、评论功能或...
2024-01-10
PHP实现百度人脸识别
PHP接入百度人脸识别,供大家参考,具体内容如下1.注册百度开发者账号。https://login.bce.baidu.com/?account= 注册登录成功后,进入控制台,在左边的导航栏找到产品-》人工智能-》人脸识别:创建应用。创建应用成功后拿到应用的API Key和Secret Key2.接口调用-获取access token调用人脸识别接口前需要获取acc...
2024-01-10
php使用imagecopymerge()函数创建半透明水印
使用imagecopymerge() 函数创建半透明水印,供大家参考,具体内容如下<?php// 加载要加水印的图像$im = imagecreatefromjpeg('photo.jpeg');// 首先我们从 GD 手动创建水印图像$stamp = imagecreatetruecolor(100, 70);imagefilledrectangle($stamp, 0, 0, 99, 69, 0x0000FF);imagefilledrectangle($stamp, 9, 9, 90, 60, 0xF...
2024-01-10
详解Spring Boot实战之Filter实现使用JWT进行接口认证
本文介绍了spring Boot实战之Filter实现使用JWT进行接口认证,分享给大家jwt(json web token)用户发送按照约定,向服务端发送 Header、Payload 和 Signature,并包含认证信息(密码),验证通过后服务端返回一个token,之后用户使用该token作为登录凭证,适合于移动端和apijwt使用流程本文示例接上面几篇文章中的...
2024-01-10
老生常谈Java异常处理和设计(推荐)
在程序设计中,进行异常处理是非常关键和重要的一部分。一个程序的异常处理框架的好坏直接影响到整个项目的代码质量以及后期维护成本和难度。试想一下,如果一个项目从头到尾没有考虑过异常处理,当程序出错从哪里寻找出错的根源?但是如果一个项目异常处理设计地过多,又会严重影响到代...
2024-01-10
JVM教程之内存管理和垃圾回收(三)
JVM内存组成结构JVM栈由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示:1)堆所有通过new创建的对象的内存都在堆中分配,其大小可以通过-Xmx和-Xms来控制。堆被划分为新生代和旧生代,新生代又被进一步划分为Eden和Survivor区,最后Survivor由From Space和To Space组成,结构图如下所示:新生...
2024-01-10
Java的Struts2框架中拦截器使用的实例教程
1、拦截器小介拦截器的功能类似于web.xml文件中的Filter,能对用户的请求进行拦截,通过拦截用户的请求来实现对页面的控制。拦截器是在Struts-core-2.2.3.jar中进行配置的,原始的拦截器是在struts-default.xml中配置的,里面封存了拦截器的基本使用方法。Struts2拦截器功能类似于Servlet过滤器。在Action执行exe...
2024-01-10
如何利用JConsole观察分析Java程序的运行并进行排错调优
一、JConsole是什么从Java 5开始 引入了 JConsole。JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行。您可以轻松地使用 JConsole(或者,它更高端的 “近亲” VisualVM )来监控 Java 应用程序性能和跟踪 Java 中的代码。二、如何启动JConsole1.如果是从命令行启动,使 JDK 在 PATH 上,运行 jcon...
2024-01-10
使用Java通过OAuth协议验证发送微博的教程
虽然新浪微博开放平台中提供各种语言版本的开发 SDK 下载,也各自附有一些基本接口调用的 Demo 和接口说明文档。但是这几天的耐心尝试之后,感觉新浪微博开放平台上的入门指导和下载到的 Java 开发包 weibo4j 包里面的 Demo 使用注释有些不一致。再加上自身领悟能力有限,导致遇到好些摸不着头脑的...
2024-01-10
java编写的简单移动方块小游戏代码
本文实例讲述了java编写的简单移动方块小游戏代码。分享给大家供大家参考,具体如下:运行效果截图如下:第一次用java编写图形化的界面,还是有些青涩。。以后继续努力!!具体代码如下://Little Box Game by AlexYui//Game.java By 1093710210@ HITimport javax.swing.*;import java.awt.event.*;import java.awt.geom.*;impor...
2024-01-10
JAVA 8u20 反序列化漏洞分析
作者:天融信阿尔法实验室原文链接:https://mp.weixin.qq.com/s/TAjfHEJCvP-1yK2hUZlrbQ 一、前言在JDK7u21中反序列化漏洞修补方式是在AnnotationInvocationHandler类对type属性做了校验,原来的payload就会执行失败,在8u20中使用BeanContextSupport类对这个修补方式进行了绕过。二、Java序列化过程及数据分析在8u20的POC中需要直...
2024-01-10
针对欧洲组织的新的僵尸网络 Outlaw 再度来袭
原文链接:Outlaw is Back, a New Crypto-Botnet Targets European Organizations 译者:知道创宇404实验室翻译组 介绍在我们的日常监控中,我们拦截了一个试图渗透客户网络的Linux恶意软件,该恶意软件是著名的“ Shellbot ”,被定义为“Outlaw Hacking Group”的犯罪工具。早在2018年,TrendMicro首次发现“Outlaw Hacking Group”...
2024-01-10
CVE-2019-19781 远程代码执行漏洞深入分析
作者:天融信阿尔法实验室 公众号:https://mp.weixin.qq.com/s/rg8xRmhb0ArRQTW0KajSrQ环境搭建虚拟机下载地址:https://www.citrix.com/downloads/citrix-gateway/然后选择下载NSVPX-ESX-13.0-47.22_nc_64.zip这个文件,该文件是ovf,可以直接用vmware来倒入并打开选择导入先后配置 IP地址,子网掩码,的网关地址,然后选择4确认...
2024-01-10
Git Submodule 漏洞(CVE-2018-17456)分析
作者:Hcamael@知道创宇404实验室英文版本:https://paper.seebug.org/980/国庆节的时候,Git爆了一个RCE的漏洞,放假回来进行应急,因为公开的相关资料比较少,挺头大的,搞了两天,RCE成功了收集资料一开始研究这个漏洞的时候,网上公开的资料非常少,最详细的也就github blog1的了。得知发现该漏洞的作...
2024-01-10
大文本处理时vim和sublime的性能
如题,当处理一个有几万行的文本文件时,vim移动光标都有明显的卡顿,但是sublime却很流畅。内部的原理是什么?vim可不可以改进?请大神赐教,多谢!回答:vim默认enable的功能太多,而这些功能里面很多在大文件下性能很差。比如:set noswapfile禁掉swap file,比如vim -u xxx无插件启动等等主要vim的设...
2024-01-10
shell脚本怎样打开一个新的标签页?
如题,我想让平常的工作自动化起来,比如开始项目开发的时候要先打开几个shell标签页,然后在不同标签页输入几个指令启动服务脚本。这里想让这一流程自动化执行。已知使用gnome-terminal可以打开新的窗口,但是我想只打开一个shell窗口,然后用shell模拟我们在窗口中按下ctrl+shift+t的操作,请问有什么...
2024-01-10
Express调用mongodb时关于异步的问题?
我需要获取mongo数据库中某个表的最大的cateID值,而找到的方式是:db.find().sort({"cateID" : -1}).limit(1),但是这种方式并不能像MySQL一样直接返回一个值,而是返回了一个看不懂的东西:而我唯一知道的,找到返回对象的方式是:myDB.find().sort({"cateID" : -1}).limit(1).toArray() .then(function(result) { console.log(r...
2024-01-10
undefiend reference to 问题
使用Makefile编译时没有出错,但直接写命令编译错误,请问这是为什么:回答:把MakeFile里引入的库加到编译参数里.回答:举个栗子吧你有三个文件a.c,b.c,lib.h依赖sdl2lib.h声明了a()/b()a.c引用了b.c定义的b()b.c引用了a.c定义的a()a/b都引用了sdl2那么要怎么编译他们?gcc -c a.c注意-c,这个参数告诉gcc不要...
2024-01-10
C语言算法题:矩阵转置
这个是我的代码:#include <stdio.h>int input_M = 0, input_N = 0;int main() { scanf("%d%d", &input_M, &input_N); int matrix1[input_M][input_N]; int matrix2[input_N][input_M]; for (int i = 0; i < input_M; ++i) { for (int j = 0; j < input_N; ++j) { ...
2024-01-10
c++模板类的使用
ifndef LINKSTACK_H_INCLUDEDdefine LINKSTACK_H_INCLUDED //linkstack.husing namespace std; template <typename T>class LinkStack{private:LinkStack<T>* mc_lin; //栈指针int mc_size; //最大容量int mc_top; //栈顶public:LinkStack(T size); //构造函数~LinkStack();...
2024-01-10
