- Promise 原理与实战:从基础到高级的完整教程
D.eL
前端工程化从无-通前端javascript
一、前言:为什么会出现Promise?Promise的重要性我认为没有必要多说,概括起来就是五个字:必!须!得!掌!握!。而且还要掌握透彻,在实际的使用中,有非常多的应用场景我们不能立即知道应该如何继续往下执行。最常见的一个场景就是ajax请求,通俗来说,由于网速的不同,可能你得到返回值的时间也是不同的,这个时候我们就需要等待,结果出来了之后才知道怎么样继续下去。letxhr=newXMLHttp
- Nodejs模块:使用Helmet 增强Web应用安全性
ohn.yu
Nodejsjavascriptnode.js
Helmet是一个Node.js中间件,主要用于增强Web应用的安全性。它通过设置各种HTTP响应头,帮助你的应用抵御多种常见的Web漏洞攻击,例如跨站脚本攻击(XSS)、点击劫持(Clickjacking)、内容嗅探攻击(ContentSniffing)等。1.什么是Helmet?为什么使用Helmet?Helmet本身并不是一个"银弹",不能解决所有的安全问题,但它提供了一个简单有效的方式来设
- Deno入门教程:Node.js 的替代品
xiaoweids
编程语言JavaScriptnode.jsjavascript开发语言
转自:微点阅读https://www.weidianyuedu.com这几天假期,我学习了一下Deno[1]。它是Node.js的替代品。有了它,将来可能就不需要Node.js了。这篇文章就是Deno的一个初步介绍,尝试回答为什么Node.js不能满足需要,以及Deno能够带给我们什么?以下内容主要基于BertBelder[2]和RyanDahl[3]的最新演讲。0、进入主题之前,先说一下Deno
- nvm 安装某个node.js版本后不能使用或者报错,或不能使用npm的问题
腥臭腐朽的日子熠熠生辉
node.jsnpm前端
安装了nvm之后发现不能使用某个版本的node.js,报错之后,不能使用npm这个命令。可以这样解决:1、再node.js官网直接下载node.js的压缩包。找到nvm的安装目录2、直接将文件夹解压到这个安装目录中修改一下名字即可。
- Amazon S3上传文件访问限制
MetaverseMan
aws
在AmazonS3中,直接通过clientID或类似的身份标识来限制访问并不是一个内置的功能。不过,您可以结合AWS的其他服务和功能来实现对特定终端或客户端的访问控制。以下是几种常见的方法:1.使用预签名URL和条件限制AWSS3预签名URL支持通过条件(Condition)来限制访问。虽然不能直接使用clientID,但可以通过IP地址、请求头等条件来限制访问。示例:通过IP地址限制访问pack
- 设计模式-单一职责原则
qq_26920109
javajava设计模式深圳
单一职责原则(SRP:Singleresponsibilityprinciple)又称单一功能原则,原话解释是:thereshouldneverbemorethanareasonofaclasstochange,也就是引起类的变化原因不能超过一个,面向对象五个基本原则(SOLID)之一。该原则由罗伯特·C·马丁(RobertC.Martin)于《敏捷软件开发:原则、模式和实践》一书中给出的。马丁表
- 电子工程师转战汽车OEM主机厂之路
上层精灵的赞美诗
行业杂谈汽车单片机嵌入式硬件eclipsemcu
文章目录1电子工程师2汽车系统工程师第一篇分享一个笔者2018年的一个心得文章,回头想想从事汽车行业也小8年了,从懵懂稚嫩到所谓的老油条,也是难忘的经历,希望我的经历对从事电子行业和汽车行业的小伙伴有所帮助。1电子工程师2013年电气工程及其自动化专业毕业,由于家里条件的原因,我不能选择继续读研深造,所以本科毕业必须出来工作,由于本科生的就业压力也是非常大的,所以当时想,在大学的时候要学习一些真正
- ChatGPT、DeepSeek、GIS与Python机器学习强强联合!地质灾害风险评估、易发性分析、信息化建库及灾后重建
WangYan2022
DeepSeekChatGPT地下水地质灾害DeepSeekChatGPTGIS灾后重建
在地质灾害频繁肆虐的当下,精准开展风险评价刻不容缓。如今,一门极具创新性的教程震撼登场,它将ChatGPT、DeepSeek等前沿技术与GIS、Python以及机器学习深度交融,为学员打造出前所未有的学习体验,助力大家在地质灾害风险评价领域强势突围,一路领先。前沿技术融合,铸就智能学习核心动力教程最闪耀的亮点之一,便是大胆引入了ChatGPT和DeepSeek技术。它们恰似无所不能的“数据魔法师”
- C# 技术使用笔记:如何高效处理字符串
caifox菜狐狸
C#技术使用笔记c#笔记stringStringBuilderSubstringReplaceSplit
1.C#字符串基础概念1.1字符串不可变性在C#中,字符串具有不可变性,这意味着一旦创建了一个字符串对象,其内容就不能被修改。例如,当我们执行以下代码时:stringstr="Hello";str=str+"World";实际上,str+"World"并是修改了原来的"Hello"字符串,而是创建了一个全新的字符串对象"HelloWorld",并将str的引用指向了这个新对象,原来的"Hello"
- 如何合法抓取TikTok视频信息和评论:完整Python爬虫教程
Python爬虫项目
2025年爬虫实战项目音视频python爬虫开发语言
一、引言TikTok是全球最受欢迎的短视频平台之一,每天吸引着数百万的用户上传和分享视频内容。作为内容创作者和数据分析师,抓取TikTok上的视频和评论可以帮助你分析社交趋势、受欢迎的内容类型和用户互动。然而,TikTok明确表示其平台的数据抓取行为受到限制,这也意味着我们不能直接通过常规的网络爬虫技术去抓取其数据。本文将介绍如何在合法的前提下进行TikTok数据抓取。我们将探索TikTok的AP
- JVM部分八股
努力向前ing
JVM八股详究javajvm八股
什么是JVM?有哪些好处?索引越界可能导致程序覆盖其他程序内存中的代码JVM是一套规范,有多种实现JVM运行流程?1.类加载器将java程序翻译为java字节码文件2.运行数据区将字节码文件加载到内存,字节码文件是JVM规范的文件,不能直接运行,而是交给执行引擎运行3.执行引擎中的解释器将字节码文件翻译为机器指令,交给CPU执行,执行过程中可能通过本地方法调用接口调用本地方法类的生命周期?加载:将
- 华为云认证 - 云学堂「集证」有礼
天氰色等烟雨
华为云
华为云最近又出了一个新活动,我看了一下,奖励比上次的要好很多,本来不想搞的,这下不得不考虑一下了~还是一样,得先报名才能参与活动!特别提醒一下,企业账号是不能参加这次活动的,大家要用个人账户来报名。按以往的经历,不是实名认证的账号也可以参与进来。活动地址如下:DeveloperEvents_DeveloperAlliance-HuaweiCloudMeetlike-mindeddevelopers
- vs code配置python_如何在vscode里的python配置好matplotlib?,vscode配置python环境教程
weixin_39564151
vscode配置python
如何在vscode里的python配置好matplotlib?,vscode配置python环境教程vscode配置python环境教程2020-09-2015:14:33人已围观VScode配置Python环境“配置任务运行程序”遇到问题我建议尝试再把bug写出来,不能因为不一样就不继续首先需要VScodePython插件。打开Python任意脚可以直接拖入。点击左下角的扩展按钮,在弹出界面选择
- 【面试问题】Java 接口与抽象类的区别
刘小炮吖i
JavaJava后端开发面试题java开发语言面试
引言在Java面向对象编程中,接口(Interface)和抽象类(AbstractClass)是两个重要的抽象工具。它们都能定义未实现的方法,但设计目标和使用场景截然不同。本文将通过语法、特性和实际案例,深入解析两者的核心区别。一、基础概念回顾抽象类(AbstractClass)定义:使用abstract关键字声明的类,包含抽象方法(无实现)和具体方法(有实现)。特点:不能被实例化,必须通过子类继
- Transformers模型版本和lm_eval老版本冲突问题ImportError: cannot import name ‘initialize_tasks‘ from ‘lm_eval.task
neverwin6
llamapython服务器
Transformers模型版本和lm_eval老版本冲突问题1问题背景在LLM评测的时候,要用lm_eval模型,而对于像是llama3/Mistrual等比较新的模型,较低的Transformers不能适配,所以要升级到0.40.0以上才行,但是如果升级的话,那么直接在沿用老版本的lm_eval评测就会出现:Traceback(mostrecentcalllast):File"main.py"
- 【Leetcode】11. 盛最多水的容器
Leuanghing
leetcode算法python
一、题目描述给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i,0)和(i,height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例1:输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组[1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示
- go面向对象编程三大特性,封装、继承和多态
平谷一勺
Golang基础篇golang开发语言后端go封装继承多态封装多态继承
1.简介go具有面向对象编程的封装、继承和多态的特性,只是实现的方式和其它OOP语言不一样,下面看下go的三大特性是如何实现的。2.封装2.1基本介绍封装就是把抽象出的字段和对字段的操作封装在一起,数据被保护在内部,程序的其它包只能通过被授权的操作(方法),才能对字段进行操作。优点:隐藏细节。可以对数据进行验证,保证安全合理。2.2封装的实现步骤将结构体、字段(属性)的首字母小写(不能导出了,其他
- 施磊老师高级c++(二)
Zhuai-行淮
施磊老师cppc++开发语言
智能指针文章目录智能指针基础--实现简单的智能指针2.不带引用计数的智能指针问题解决不带引用计数的智能指针汇总auto_ptr--#include--不推荐scoped_ptr---不推荐unique_ptr--推荐--右值引用--move3.带引用计数的智能指针4.shared_ptr交叉(循环)引用问题代码示例整体过程解决办法--强弱混用弱智能指针-不能使用资源5.多线程访问共享对象的线程安全
- LeetCode134☞加油站
fantasy_4
LeetCode刷题pythonleetcodejava算法贪心算法
关联LeetCode题号134本题特点贪心局部最优解-部分差值如果小于0(消耗大于油站油量)就从下一个加油站开始,因为如果中间有小于0的情况当前站就不可能是始发站,整体最优解-整体差值如果小于0,那么就是不能有始发站本题思路classSolution:defcanCompleteCircuit(self,gas:List[int],cost:List[int])->int:curSum=0tota
- C++学习笔记:引用
etp_
c++学习笔记
引用是已知变量的别名,通过将引用变量用作参数,函数将使用原始数据而不是其副本。下面将r作为a的别名:inta;int&r=a;就像char*是指向char的指针一样,int&是指向int的引用。(a和r指向相同的值和内存单元)注意:&r表示r引用变量的地址。引用和指针的区别1.必须在声明引用时将其初始化,而不能像指针那样先声明再赋值。2.引用更接近const指针,一旦与某个变量关联起来便有一直效忠
- PTA--- 666(递归搜索)
对方正在长头发丿
算法数据结构蓝桥杯c++深度优先
题目描述:小明有一张m*n的好习惯记录卡,记录每一天的好习惯目标达成度(数字0-9表示)。某天目标完成达成,就在当天的格子里写上数字6,目标没有完全达成就写上一个小于6的数字(0-5),目标超额完成就写上一个大于6的数字(7-9)。记录卡上如果能找到一条长度为3的路径并且路径上的三个数字都大于等于6(这里的路径是指从某个格子出发,可以向左、右、上、下格子移动,并且不能重复经过一个格子),则小明就能
- unionall的用法(当某条记录为空时,union all是否可以合并此条记录)
hammring
mysql
我们经常说union和unionall的区别在于:1.union合并相同的列时,会去重只取其中的一条;2.unionall合并所有的列。但是如果在按照某一条件进行查询时,如果表中数据没有符合该条件的记录。(即按此条件查询,表中查找到的的记录每列都为空)此时unionall并不能合并这种空的记录。比如新建一个表名为t_student的表。记录学生的姓名,性别,年龄和成绩等基础信息。在t_studen
- 深度剖析C语言数组和指针的区别(非常详细)
xiecoding.cn
c语言算法开发语言c++青少年编程C语言入门数据结构
对于刚刚接触C语言指针的初学者,很容易认为数组和指针是等价的,数组名表示数组的首地址。不幸的是,这是一种非常危险的想法,并不完全正确。耐心看完本文,我保证会颠覆你的认知。数组和指针绝不等价数组和指针不等价的一个典型案例就是求数组的长度,这个时候只能使用数组名,不能使用数组指针,前面我们已经强调过了,这里不妨再来演示一下:#includeintmain(){inta[6]={0,1,2,3,4,5}
- 按照时间排序的分布式游标分页
像云~
记录分布式
背景最近有这么一个需求,就是在分页查询的时候,需要返回最近的pagesize条记录,即按照时间倒序的近pagesize条记录。有两个问题:一个就是这些记录来自于不同的存储位置,不能通过一次查询统一排序取数据,而需要分开查询读入,再汇总统一排序另一个就是在进行分页的时候,要保证当前页数据与上一页的连贯性,有点类似刷短视频的瀑布流。即分页查询是统一的,而数据存储是分布式的。方案由于是在高并发的场景下,
- 并发编程面试题四
2301_76231794
面试
1、ReentrantLock和synchronized的区别及使用的场景synchronized关键字(是悲观锁):自动管理:synchronized是Java提供的一种内置锁机制,使用简单,不需要显式地获取和释放锁。可重入性:同一个线程可以多次获取同一个锁而不被阻塞。不可中断:一旦一个线程开始等待获取锁,它不能被其他线程中断。内存可见性:synchronized块或方法提供了内存可见性的保证,
- Windows 图形显示驱动开发-WDDM 3.0功能- IOMMU DMA 重新映射(二)
程序员王马
windows图形显示驱动开发驱动开发
地址描述符列表为了同时支持物理和逻辑访问模式,并在运行时无缝切换这两种模式,Dxgkrnl提供了一个描述地址描述符列表(ADL)的DXGK_ADL结构。此数据结构类似于MDL,但描述了一个可以是物理或逻辑的页面数组。由于这些页可以是逻辑页,因此不能将ADL描述的地址映射到虚拟地址以直接访问CPU。DxgkddiBuildpagingbuffer的DXGK_OPERATION_MAP_APERTUR
- 破局 MySQL 死锁:深入理解锁机制与高效解决方案
小吕学编程
javamysql数据库sql
死锁的原理1.什么是死锁?当多个事务在并发执行时,每个事务都持有其他事务需要的锁,同时又在等待对方释放锁,导致所有事务都无法继续执行的状态,称为死锁(Deadlock)。2.死锁的四个必要条件互斥条件:资源(如某行数据)一次只能被一个事务独占。请求与保持条件:事务在持有某些锁的同时,请求新的锁。不剥夺条件:事务已获得的锁不能被强制剥夺。循环等待条件:事务之间形成环形等待链,如事务A等待事务B,事务
- Java入门第72课——String字符串基本操作
猴子学编程
Java零基础课程Java字符串StringStringBuilder
1.1String及其常用API1.1.1String是不可变对象·java.lang.String使用了final修饰,不能被继承;·字符串底层封装了字符数组及针对字符数组的操作算法;·字符串一旦创建,对象永远无法改变,但字符串引用可以重新赋值;·Java字符串在内存中采用Unicode编码方式,任何一个字符对应两个字节的定长编码。1.1.2String常量池·Java为了提高性能,静态字符串(
- python面向对象之抽象类
liangblog
python基础技能抽象类python面向对象
抽象类概念:抽象类是一个特殊的类,它的特殊之处在于只能被继承,不能被实例化,需要借助python模块实现;抽象类是从一堆类中抽取相同的内容而来的,内容包括数据属性和函数属性。抽象类与普通类的不同之处在于:抽象类中有抽象方法,该类不能被实例化,只能被继承,且子类必须实现抽象方法python中的abc模块python中需要利用abc模块实现抽象类importabc#利用abc模块实现抽象类classs
- Python的路径pathlib库
活跃家族
python开发语言
1、读取文件默认只会从当前代码操作文件的目录下读取文件。找不到就会报错。解决方式:1、方式一:绝对路径是指:电脑里从根目录开始的一个完整的路径--不推荐注意事项:路径特殊符号\t一定要转义在路径前面加一个r绝对路径弊端:1)移植给其他人电脑上用,文件前面的目录不对,要手动修改。2)\/不同平台路径分隔符不一样,绝对路径不能兼容不同平台。2、相对路径:不会写死每一级的路径,相对层级管理,找文件路径借
- 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