- 虚拟专用网络(VPN)的 30 个知识 | 附带华为防火墙 IPSec VPN 配置实例
IT运维大本营
网络华为php
虚拟专用网络(VPN)定义:VPN就是一种能在公共网络上弄出个安全的私人网络的技术,靠加密连接实现。工作原理:VPN会通过隧道协议在用户的设备和VPN服务器之间弄出个加密的通道,这样就能保护数据传输啦。加密协议:常见的VPN加密协议有OpenVPN、L2TP/IPsec、PPTP和IKEv2这些。匿名性:用VPN能把用户的IP地址藏起来,这样上网的时候匿名性就高啦。安全性:VPN能保护用户在公共W
- 思科网络交换机配置命令(详细命令总结归纳)
IT运维大本营
华为思科锐捷网络服务器运维
前言一、交换机介绍二、交换机配置1、基本命令2、常用命令3、交换机恢复出厂配置4、telnet远程登录设置5、交换机VLAN设置(1)添加,删除vlan(2)命名vlan(3)将端口加入vlan6、交换机设置VLANIP地址7、Trunk的配置8、以太网通道配置(二层口)9、以太网通道配ip地址(三层口)10、VTP的配置11、三层交换机配置(1)配置虚拟接口IP地址(2)配置物理接口IP地址(3
- 华为路由器/交换机上配置Stelnet远程登录
qq_2661138306
华为网络信息与通信网络协议
Stelnet是加密的远程登录协议,它是基于SSH协议实现的。Stelnet是SSH协议在网络设备远程管理中的具体应用,允许管理员通过加密的SSH通道安全地访问网络设备的命令行界面(CLI),进行配置、监控和管理。以下是Stelnet的配置实例。拓扑图如下所示。先配置好IP地址作为远程登录的地址。AR1路由器:[AR1]intg0/0/0[AR1-GigabitEthernet0/0/0][AR1
- ubuntu安装opencv最快的方法
Derek重名了
最快方法,当然不能太多文字$sudoapt-getinstallpython-opencv借助python就可以把ubuntu的opencv环境搞起来,非常快非常容易参考:https://docs.opencv.org/trunk/d2/de6/tutorial_py_setup_in_ubuntu.html
- 第十三章 trunk扩展及单臂路由
电脑菜鸡
计算机网络第一阶段网络智能路由器
一.单臂路由:实现不同VLAN之间通信。1.链路类型:Trunk(中继)链路连接交换机和路由器。Access(接入)链路连接交换机和PC机。2.子接口:路由器的物理接口可以划分成多个逻辑子接口。每个子接口对应一个VLAN网段的网关必须配置IP地址并封装指定的vlan3.单臂路由配置命令:intf0/0nosh\\激活主接口intf0/0.10\\创建子接口10(编号自定义)encapsulatio
- 如何在 KubeBlocks 中配置实例模板?
小猿姐
kubernetes数据库云原生mysql
背景在KubeBlocks中,一个Cluster由若干个Component组成,一个Component最终管理若干Pod和其它对象。在0.9版本之前,这些Pod是从同一个PodTemplate渲染出来的(该PodTemplate在ClusterDefinition或ComponentDefinition中定义)。这样的设计不能满足如下需求:对于从同一个Add-on中渲染出来的Cluster,为其设
- IP学习——Fiveday
学为以—
tcp/ip学习智能路由器
设备排错[R1]displayipinterfacebrief查看路由器接口的IP地址信息[R1]displaycurrent-configurationintg0/0/1.10查看路由器接口的IP地址信息TG--->trunk查看vlan指令:displayvan其中UT--->accessc.vlan确认完成后即链路层配置完成排查网络层错误排查终端主机IP和路由器子接口网关2.排查两个内网间的
- 链路聚合 E-trunk 实验
DC_BLOG
路由与交换网络运维
文章目录实验目的配置CEPE1PE2PE3实验目的配置练习E-trunk配置命令配置E-trunk两台PE之间必须是可以互通的(需要IGP互通)学习跨设备链路聚合熟悉CE设备和PE设备的应用和部署方式配置CEvlan10intervlan10ipad192.168.1.124lacppriority100interfaceEth-Trunk1modelacp-statictrunkportg0/0
- iOS基础- Framework的CocoaPods制作
jeikerxiao
iosgithub框架库
1.Cocoapods使用podtrunk发布程序2.Framework的CocoaPods制作一、创建自己的github仓库CocoaPods都托管在github上(官方链接为:https://github.com/CocoaPods),所有的Pods依赖库也都依赖github,因此第一步我们需要创建一个属于自己的github仓库。仓库创建界面如下图:说明:Repositoryname仓库名称,
- 华为Gre 手动配置实例
Young143
华为网络
R1配置syssysnameHFdhcpenableacl2000rule1permitso192.168.10.00.0.0.255intg0/0/0ipadd192.168.10.25424dhcpselectintintg0/0/1ipadd12.0.0.124natoutbound2000iproute-s0.0.0.0012.0.0.2interfaceTunnel0/0/1tunnel
- 华为交换机MAC地址漂移配置实验
Ang.sut倾城♛ ♛
华为HCIP交换机部分交换机网络经验分享安全
一、实验拓扑图:二、实验要求:1、根据图示配置VLAN信息,E0/0/3为TRUNK端口,放行所有VLAN。2、在S2上配置VLAN10的MAC漂移检测,将产生漂移的MAC地址阻塞,阻塞30秒,允许重复2次。3、在S2上配置VLAN111的MAC漂移检测,将产生MAC地址漂移的端口阻塞,阻塞30秒,允许重复2次。4、从PC1上分别PINGPC2、PC9,查看S1、S2的MAC地址表,截图。5、从P
- Deformed Monster-Control speed
Green_Mage
Inthegame,weneedtohelpthedeformedmonsterssmoothlypasstheobstaclesandsmoothlyenterthetrunk.Therearetwoformsofmalformedmonsters.Thespherecanbescrolled,thesquareisnotmoving,youshoulduseitstwoformsreasona
- svn update 遇到 None of the targets are working copies问题的解决
popcorn丶
错误记录
在mac中,新建了一个目录svntrunk,然后在此目录下,执行了svncheckout***之后在同目录下执行SVNupdate竟然报错Noneofthetargetsareworkingcopies所有目标都不是工作副本的错误因此把文件的名字加上以后发现可以了因此我转到trunk目录执行svnupdateok了
- 2021-07-28自建pod库用到的命令
zhangwenqiang
创建工程-podtrunkme:检查自己是否有CocoaPods账号
[email protected]'yourname':注册账号-podlibcreateyourProjectName:创建pod工程创建git仓库//把代码从工作区添加到暂存区$gitadd.//把代码从暂存区添加到本地仓库区$gitcommit-m'InitialKKPodTest’//本
- 04_frp内网穿透实例
皓瑞 =)
嵌入式内网穿透运维前端内网穿透
frp内网穿透实例前置在这之前,你应该在嵌入式设备上和带有公网IP的服务器上都已经安装好了frp,如果没有的话就翻一下前面几节的内容。今天把frp的官方文档阅读完了,发现这个项目是我们国人主导的,还是比较自豪的;文档写的非常详细,我的建议是全部读一遍吧,花不了你多久时间的,因此也不介绍frp了,直接给出几个我自己的配置实例就可以了。官方文档:FRP这里给出的几个配置实例的原因主要是因为我的应用场景
- 玩客云刷机Armbian-unofficial_24.2.0-trunk_Onecloud_bookworm_current_6.6.11_xfce_desktop,解决卡97%的问题
linux实践操作记录
驱动开发
Armbian系列教程-刷机与初始化设置-视觉书虫-博客园(cnblogs.com)hzyitc/armbian-onecloud:Armbianforonecloud.玩客云用armbian(github.com)Releases·muzihuaner/armbian-onecloud(github.com)英特尔/AMD–Armbian准备usb双公头线,拆出主板usb双公头连接离hdmi最近
- Django(14)-应用及分布式路由
redrose2100
Djangopythondjango
Django(1)-简介Django(2)-创建项目及默认项目目录结构介绍Django(3)-配置文件详解Django(4)-URL和视图Django(5)-路由配置实例Django(6)-请求及响应Django(7)-Get请求和Post请求Django(8)-设计模式Django(9)-模板层简介与入门实例Django(10)-模板层的变量和标签Django(11)-模板层的过滤器和继承Dja
- ConvE,知识图谱嵌入(KGE) autodl 服务器运行
zhous_
服务器python
参考:博客地址项目地址项目地址主要配置采用autodl服务器环境如下配置路径服务器配置实例创建完成后打开jupyterlab打开终端输入vim~/.bashrc然后enter进入然后英文输入法下按i进入编辑模式底部会变为INSERT然后在最后一行加上source/root/miniconda3/etc/profile.d/conda.sh然后按esc最后英文状态下输入:wq保存退出注意有个英文冒号
- 09. 配置Eth-Trunk
江湖侠客
网工网络服务器人工智能
文章目录一.初识Eth-Trunk1.1.Eth-Trunk的概述1.2.Eth-Trunk的优势1.3.Eth-Trunk的模式的优势二.实验专题2.1.实验1:手工模式2.1.1.实验拓扑图2.1.2.实验步骤(1)配置PC机的IP地址(2)在交换机接口划入VLAN(3)交换机设置Eth-Trunk(4)交换机配置Eth-Trunk的负载分担2.1.3.实验调试(1)查看检查信息(2)查看带宽
- 华为:相同vlan,不同交换机之间的通信。
太阁闫辉
华为定义:华为交换机默认所有端口都是hybrid类型。hybrid:(杂合接口)包含access、trunk接口特性能用于下联级联接口,需要单独使用。可以手动更改是否针对流量数据是否打标。PVID(端口vlan标识符):代表了指定接口连接哪个vlanaccess接口接受数据:如果带有vlan标记的帧,先查看vlan标记是否是pvid的vlan标记,是则接受,不是则丢失,如果不带vlan标记,直接认
- [HCIE]vxlan --静态隧道
sxhuafeng
网络华为安全服务器运维
实验目的:1.pc2与pc3互通(二层互通);2.pc1与pc3互通(三层互通)实验说明:sw1划分vlan10vlan20;sw2划分vlan30;上行接口均配置为Trunk实验步骤:1.配置CE1/CE2/CE3环回口互通(配置IGP)1.1配置接口ipCE1:system-viewimmediately#命令立即生效interfaceGE1/0/0undoportswitch#打开三层接口u
- HCIP-Datacom(H12-821)31-40题
TenThreeSeven7
网络tcp/ip网络协议
有需要完整题库的同学可以私信博主,博主看到会回复将文件发给你!(麻烦各位同学给博主推文点赞关注和收藏哦)31、关于链路聚合的基本概念,下面描述错误的是:A.链路聚合是将一组物理接口捆绑在起作为一个逻辑接口来增加带宽及可靠性的方法。B.链路聚合遵循IEEE802.3ad协议。C.将若干条物理链路捆绑在一起所形成的逻辑链路称之为链路聚合组(LAG)或者Trunk.D.链路聚合只存在活动接口解析:在链路
- LVS/DR+keepalived配置实例(详细)
小小菜鸡钟先生
负载均衡
1.环境准备一台NFS服务器,采用内网192.168.100.20/24,共享目录为data1、data2两台后端服务器,分别采用外网192.168.100.60/24、192.168.100.70/24和内网192.168.1.130/24、192.168.1.132/24。网页目录分别挂载为NFS上data1和data2两台负载调度器,一主一备。均采用外网192.168.100.234/24、
- Nginx 配置实例-动静分离
Carol_6a27
1、什么是动静分离image.png通过location指定不同的后缀名实现不同的请求转发。通过expires参数设置,可以使浏览器缓存过期时间,减少与服务器之前的请求和流量。具体Expires定义:是给一个资源设定一个过期时间,也就是说无需去服务端验证,直接通过浏览器自身确认是否过期即可,所以不会产生额外的流量。此种方法非常适合不经常变动的资源。(如果经常更新的文件,不建议使用Expires来缓
- 第三十三天 锻炼肺活量
明竹
今日是处暑,恰逢台风将至,趁着还没有雨️,出门跑步锻炼一下肺活量。今晚是跑步6公里,很不错,花了45分钟而已,平均配速是7分32秒,虽然慢,但是进步了。停下来的那一刻,脚就有点软。还有一点,wake和SatrUnkind这两首歌就是跑步神曲,歌曲一响,血脉觉醒了,根本就不会累。下次争取配速跑到7分20,加油加油。
- 实战 | Nginx+keepalived 实现高可用集群
开源Linux
前言今天通过两个实战案例,带大家理解Nginx+keepalived如何实现高可用集群,在学习新知识之前您可以选择性复习之前的知识点:给小白的Nginx10分钟入门指南Nginx编译安装及常用命令Nginx配置文件详解一文带你读懂Nginx反向代理一文彻底读懂nginx中的location指令Nginx负载均衡原理及配置实例Nginx为什么快到根本停不下来?Keepalived入门学习Keepal
- cocoapods安装第三方库出现的问题解决
这个姑凉儿
最近podinstall进行第三方库配置的时候,经常会出现CDN:trunkURLcouldn'tbedownloaded:https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/a/a/4/Masonry/1.1.0/Masonry.podspec.json,error:FailedtoopenTCPconnectiontor
- unable to access 'https://chromium.googlesource.com/webm/libwebp/': Failed to connect to chromium...
不羁的躁动
cocoaPods1.8版本之后,项目中导入libwebp库的时候会报错找不到。解决方法如下:shift+command+G~/.cocoapods/repos/trunk/Specs/1/9/2这个时候就可以看到libwebp文件3.查看当前项目中使用的版本,然后打开相应版本号4.打开libwebp.podspec.json文件,将source中的git地址改为"https://github.c
- 从零开始学HCIA之链路聚合04
踢足球的博尔特
HCIA到HCIE进阶之路网络
1、LACP模式可以分为二层链路聚合和三层链路聚合。2、二层链路聚合,Eth-Trunk技术可以用来捆绑相同类型的端口,在一个二层的交换机上,一般把接入层交换机与分布层交换机之间的链路进行成二层链路聚合。3、在配置二层Eth-Trunk时,要求两端的端口使用相同的方式配置,都是交换端口(Access端口、Trunk端口、hybrid端口),保持端口的参数一致就能形成二层的Eth-Trunk。4、三
- The more he seeks to rise into the height and light, the more vigorously do his roots struggle ea...
焦小糖的育儿手记
Wearefamiliarwithtrees.Theyaresotallandtheyhavebigtrunk.Itwassaidthatthemorethetreeseekstoriseintotheheightandlight,themorevigorouslydohisrootsstruggleearthward,downward,intothedark,thedeep.Iwasmovedb
- Java实现的简单双向Map,支持重复Value
superlxw1234
java双向map
关键字:Java双向Map、DualHashBidiMap
有个需求,需要根据即时修改Map结构中的Value值,比如,将Map中所有value=V1的记录改成value=V2,key保持不变。
数据量比较大,遍历Map性能太差,这就需要根据Value先找到Key,然后去修改。
即:既要根据Key找Value,又要根据Value
- PL/SQL触发器基础及例子
百合不是茶
oracle数据库触发器PL/SQL编程
触发器的简介;
触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。触发器和过程函数类似 过程函数必须要调用,
一个表中最多只能有12个触发器类型的,触发器和过程函数相似 触发器不需要调用直接执行,
触发时间:指明触发器何时执行,该值可取:
before:表示在数据库动作之前触发
- [时空与探索]穿越时空的一些问题
comsci
问题
我们还没有进行过任何数学形式上的证明,仅仅是一个猜想.....
这个猜想就是; 任何有质量的物体(哪怕只有一微克)都不可能穿越时空,该物体强行穿越时空的时候,物体的质量会与时空粒子产生反应,物体会变成暗物质,也就是说,任何物体穿越时空会变成暗物质..(暗物质就我的理
- easy ui datagrid上移下移一行
商人shang
js上移下移easyuidatagrid
/**
* 向上移动一行
*
* @param dg
* @param row
*/
function moveupRow(dg, row) {
var datagrid = $(dg);
var index = datagrid.datagrid("getRowIndex", row);
if (isFirstRow(dg, row)) {
- Java反射
oloz
反射
本人菜鸟,今天恰好有时间,写写博客,总结复习一下java反射方面的知识,欢迎大家探讨交流学习指教
首先看看java中的Class
package demo;
public class ClassTest {
/*先了解java中的Class*/
public static void main(String[] args) {
//任何一个类都
- springMVC 使用JSR-303 Validation验证
杨白白
springmvc
JSR-303是一个数据验证的规范,但是spring并没有对其进行实现,Hibernate Validator是实现了这一规范的,通过此这个实现来讲SpringMVC对JSR-303的支持。
JSR-303的校验是基于注解的,首先要把这些注解标记在需要验证的实体类的属性上或是其对应的get方法上。
登录需要验证类
public class Login {
@NotEmpty
- log4j
香水浓
log4j
log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, HTML, DATABASE
#log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, ROLLINGFILE, HTML
#console
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4
- 使用ajax和history.pushState无刷新改变页面URL
agevs
jquery框架Ajaxhtml5chrome
表现
如果你使用chrome或者firefox等浏览器访问本博客、github.com、plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变。并且能够很好的支持浏览器前进和后退。
是什么有这么强大的功能呢?
HTML5里引用了新的API,history.pushState和history.replaceState,就是通过
- centos中文乱码
AILIKES
centosOSssh
一、CentOS系统访问 g.cn ,发现中文乱码。
于是用以前的方式:yum -y install fonts-chinese
CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。
后来,终于找到以下方法可以解决,需要两个中文支持的包:
fonts-chinese-3.02-12.
- 触发器
baalwolf
触发器
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)
语法:
create trigger triggerName
after/before 
- JS正则表达式的i m g
bijian1013
JavaScript正则表达式
g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。 i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。 m:表示
- HTML5模式和Hashbang模式
bijian1013
JavaScriptAngularJSHashbang模式HTML5模式
我们可以用$locationProvider来配置$location服务(可以采用注入的方式,就像AngularJS中其他所有东西一样)。这里provider的两个参数很有意思,介绍如下。
html5Mode
一个布尔值,标识$location服务是否运行在HTML5模式下。
ha
- [Maven学习笔记六]Maven生命周期
bit1129
maven
从mvn test的输出开始说起
当我们在user-core中执行mvn test时,执行的输出如下:
/software/devsoftware/jdk1.7.0_55/bin/java -Dmaven.home=/software/devsoftware/apache-maven-3.2.1 -Dclassworlds.conf=/software/devs
- 【Hadoop七】基于Yarn的Hadoop Map Reduce容错
bit1129
hadoop
运行于Yarn的Map Reduce作业,可能发生失败的点包括
Task Failure
Application Master Failure
Node Manager Failure
Resource Manager Failure
1. Task Failure
任务执行过程中产生的异常和JVM的意外终止会汇报给Application Master。僵死的任务也会被A
- 记一次数据推送的异常解决端口解决
ronin47
记一次数据推送的异常解决
需求:从db获取数据然后推送到B
程序开发完成,上jboss,刚开始报了很多错,逐一解决,可最后显示连接不到数据库。机房的同事说可以ping 通。
自已画了个图,逐一排除,把linux 防火墙 和 setenforce 设置最低。
service iptables stop
- 巧用视错觉-UI更有趣
brotherlamp
UIui视频ui教程ui自学ui资料
我们每个人在生活中都曾感受过视错觉(optical illusion)的魅力。
视错觉现象是双眼跟我们开的一个玩笑,而我们往往还心甘情愿地接受我们看到的假象。其实不止如此,视觉错现象的背后还有一个重要的科学原理——格式塔原理。
格式塔原理解释了人们如何以视觉方式感觉物体,以及图像的结构,视角,大小等要素是如何影响我们的视觉的。
在下面这篇文章中,我们首先会简单介绍一下格式塔原理中的基本概念,
- 线段树-poj1177-N个矩形求边长(离散化+扫描线)
bylijinnan
数据结构算法线段树
package com.ljn.base;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
/**
* POJ 1177 (线段树+离散化+扫描线),题目链接为http://poj.org/problem?id=1177
- HTTP协议详解
chicony
http协议
引言
- Scala设计模式
chenchao051
设计模式scala
Scala设计模式
我的话: 在国外网站上看到一篇文章,里面详细描述了很多设计模式,并且用Java及Scala两种语言描述,清晰的让我们看到各种常规的设计模式,在Scala中是如何在语言特性层面直接支持的。基于文章很nice,我利用今天的空闲时间将其翻译,希望大家能一起学习,讨论。翻译
- 安装mysql
daizj
mysql安装
安装mysql
(1)删除linux上已经安装的mysql相关库信息。rpm -e xxxxxxx --nodeps (强制删除)
执行命令rpm -qa |grep mysql 检查是否删除干净
(2)执行命令 rpm -i MySQL-server-5.5.31-2.el
- HTTP状态码大全
dcj3sjt126com
http状态码
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request
- asihttprequest上传图片
dcj3sjt126com
ASIHTTPRequest
NSURL *url =@"yourURL";
ASIFormDataRequest*currentRequest =[ASIFormDataRequest requestWithURL:url];
[currentRequest setPostFormat:ASIMultipartFormDataPostFormat];[currentRequest se
- C语言中,关键字static的作用
e200702084
C++cC#
在C语言中,关键字static有三个明显的作用:
1)在函数体,局部的static变量。生存期为程序的整个生命周期,(它存活多长时间);作用域却在函数体内(它在什么地方能被访问(空间))。
一个被声明为静态的变量在这一函数被调用过程中维持其值不变。因为它分配在静态存储区,函数调用结束后并不释放单元,但是在其它的作用域的无法访问。当再次调用这个函数时,这个局部的静态变量还存活,而且用在它的访
- win7/8使用curl
geeksun
win7
1. WIN7/8下要使用curl,需要下载curl-7.20.0-win64-ssl-sspi.zip和Win64OpenSSL_Light-1_0_2d.exe。 下载地址:
http://curl.haxx.se/download.html 请选择不带SSL的版本,否则还需要安装SSL的支持包 2. 可以给Windows增加c
- Creating a Shared Repository; Users Sharing The Repository
hongtoushizi
git
转载自:
http://www.gitguys.com/topics/creating-a-shared-repository-users-sharing-the-repository/ Commands discussed in this section:
git init –bare
git clone
git remote
git pull
git p
- Java实现字符串反转的8种或9种方法
Josh_Persistence
异或反转递归反转二分交换反转java字符串反转栈反转
注:对于第7种使用异或的方式来实现字符串的反转,如果不太看得明白的,可以参照另一篇博客:
http://josh-persistence.iteye.com/blog/2205768
/**
*
*/
package com.wsheng.aggregator.algorithm.string;
import java.util.Stack;
/**
- 代码实现任意容量倒水问题
home198979
PHP算法倒水
形象化设计模式实战 HELLO!架构 redis命令源码解析
倒水问题:有两个杯子,一个A升,一个B升,水有无限多,现要求利用这两杯子装C
- Druid datasource
zhb8015
druid
推荐大家使用数据库连接池 DruidDataSource. http://code.alibabatech.com/wiki/display/Druid/DruidDataSource DruidDataSource经过阿里巴巴数百个应用一年多生产环境运行验证,稳定可靠。 它最重要的特点是:监控、扩展和性能。 下载和Maven配置看这里: http
- 两种启动监听器ApplicationListener和ServletContextListener
spjich
javaspring框架
引言:有时候需要在项目初始化的时候进行一系列工作,比如初始化一个线程池,初始化配置文件,初始化缓存等等,这时候就需要用到启动监听器,下面分别介绍一下两种常用的项目启动监听器
ServletContextListener
特点: 依赖于sevlet容器,需要配置web.xml
使用方法:
public class StartListener implements
- JavaScript Rounding Methods of the Math object
何不笑
JavaScriptMath
The next group of methods has to do with rounding decimal values into integers. Three methods — Math.ceil(), Math.floor(), and Math.round() — handle rounding in differen