- RTSP协议全解析
江同学_
音视频
RTSP(RealTimeStreamingProtocol)协议全解析一、协议概述定位:应用层协议,用于控制流媒体服务器(播放、暂停、录制),媒体传输由RTP/RTCP实现。特点:基于文本(类似HTTP),支持TCP/UDP(默认端口554)。无状态协议,通过Session头维护会话状态。核心命令:方法用途OPTIONS查询服务器支持的方法DESCRIBE获取媒体描述(SDP格式)SETUP建立
- windows下srs流媒体服务器使用ffmpeg推流
-Mr_X-
ffmpeg
安装windows版本srs下载链接:Windows|SRS执行命令:ffmpeg推流命令:ffmpeg-i"rtsp://admin@
[email protected]:554/Streaming/Channels/101"-c:vcopy-c:aaac-fflv"rtmp://localhost:1935/live/stream"1.推流本地摄像头到流媒体服务器适用于将本地摄像头实时推流到RT
- aiohttp 异步http请求-4.文件上传multipart/form-data
上海-悠悠
Pythonpython
前言文件上传接口,post请求参数类型content-type:multipart/form-data,上传文件分2种情况小文件上传,可以直接用open函数读取大文件上传,aiohttp支持多种类型的文件以流媒体的形式上传官方文档示例上传multipart类型url='http://httpbin.org/post'files={'file':open('report.xls','rb')}awa
- python打造流媒体服务器,Python:HTTP发布带有流媒体的大文件
某miao
python打造流媒体服务器
I'muploadingpotentiallylargefilestoawebserver.CurrentlyI'mdoingthis:importurllib2f=open('somelargefile.zip','rb')request=urllib2.Request(url,f.read())request.add_header("Content-Type","application/zip
- FFmpeg+WebSocket+JsMpeg实时视频流实现方案
渔舟唱晚@
ffmpegwebsocket网络协议
之前写的使用FFmpeg+Nginx+HLS流媒体播放方案,适合对实时性要求不高的需求,存在延迟,FFmpeg需要将视频流存储到本地文件,而本次方案FFmpeg不需要将视频流存储到本地文件,而是直接将转换后的视频流(如MJPEG格式)通过标准输出(stdout)传递给WebSocket服务器,WebSocket服务器再将数据实时推送到前端。这种方式是实时流传输,适合需要低延迟的场景。以下是详细的实
- android浏览器资源嗅探,GitHub - icemanyandy/VBrowser-Android: 全网视频嗅探缓存APP
一朵小小玫
android浏览器资源嗅探
VBrowser-Android全网视频嗅探缓存APP简介一款用于全网视频嗅探、缓存及播放的APP,方便追剧党、出差党随时随地观看缓存好的视频。超强的视频嗅探能力,多线程急速下载。主要功能1.网页中包含的主流格式的流媒体视频的嗅探(M3U8,MP4等)2.主流格式的流媒体视频的缓存(M3U8及传统单文件视频(如MP4,avi))3.已缓存的视频播放(目前调用外部播放器,如MXPlayer)特色1.
- WebRTC中RTP/RTCP协议实现分析
音视频开发老马
音视频开发流媒体服务器Android音视频开发网络网络协议webrtc音视频流媒体
一前言RTP/RTCP协议是流媒体通信的基石。RTP协议定义流媒体数据在互联网上传输的数据包格式,而RTCP协议则负责可靠传输、流量控制和拥塞控制等服务质量保证。在WebRTC项目中,RTP/RTCP模块作为传输模块的一部分,负责对发送端采集到的媒体数据进行进行封包,然后交给上层网络模块发送;在接收端RTP/RTCP模块收到上层模块的数据包后,进行解包操作,最后把负载发送到解码模块。因此,RTP/
- MacOS快速安装FFmpeg、ffprobe、ffplay
杰哥的技术杂货铺
Linuxmacoslinuxffmpeg流媒体工具
文章目录一、工具简介二、mac安装ffprobe、FFmpeg等相关工具2.1方法一:使用Homebrew安装FFmpeg2.2从官网下载FFmpeg安装包,源码安装2.3macOS无法验证开发者时安装一、工具简介这些工具都是与多媒体处理和流媒体相关的开源工具,它们都属于FFmpeg多媒体框架。FFmpeg是一个用于处理多媒体内容(音频、视频、图像等)的命令行工具。它可以执行各种各样的操作,包括转
- 基于Linux平台的多实例RTSP|RTMP直播播放器深度解析与技术实现
音视频牛哥
RTSP播放器RTMP播放器大牛直播SDK音视频实时音视频视频编解码linuxrtsp播放器linuxrtmp播放器linux国产rtmp播放器linux国产rtsp播放器
一、引言在Linux平台上实现一个高性能、高并发的多实例播放器,是许多流媒体应用的核心需求。本文将结合大牛直播SDK的Linux平台RTSP/RTMP播放器功能,深入解析其实现原理、关键技术点以及优化策略。通过对代码的详细分析和实际应用的结合,帮助开发者更好地理解和应用该技术。二、项目概述本文基于以下代码实现了一个多实例播放器:multi_player_demo.cpp:主程序,负责初始化SDK、
- AI编剧系统深度解析:从算法架构到影视工业化应用实战
Coderabo
DeepSeekR1模型企业级应用人工智能算法
媒体娱乐行业革命:AI编剧创意辅助系统架构解析与实战应用一、行业背景与技术架构在流媒体内容需求激增的当下,传统编剧模式面临产能瓶颈。AI编剧创意辅助系统通过自然语言处理(NLP)、生成对抗网络(GAN)和知识图谱技术,构建了包含剧本生成、情节优化、角色塑造等模块的智能创作平台。核心架构分为:知识图谱层:整合影视剧本数据库(IMSDb)、维基百科等结构化数据NLP处理层:基于Transformer的
- 使用nginx+rtmp+ffmpeg实现桌面直播
handsomestWei
后端nginxffmpegrtmplive直播推流拉流
使用nginx+rtmp+ffmpeg实现桌面直播流媒体服务器搭建dockerrundocker镜像基于添加了rtmp模块的nginx,和ffmpegdockerpullalfg/nginx-rtmpdockerrun-d-p1935:1935-p8080:80--name=nginx-rtmpalfg/nginx-rtmprtmp模块说明进入容器内部查看dockerps|grepalfg/ngi
- [总结] 音视频开发工程师之路
二进制怪兽
音视频音视频
前言音视频开发是一个涉及多个技术领域的复杂方向,涵盖了音频处理、视频渲染、编解码技术、流媒体传输等多个方面。以下是一个简要的学习路线指南,帮助你逐步掌握音视频开发的核心技能。基础知识计算机科学基础:掌握操作系统、计算机网络、数据结构和算法等基础知识。数学基础:了解傅里叶变换、线性代数、信号处理等数学知识,这些是音视频编-解码和处理的基石。编程语言:熟练掌握C/C++,这是音视频开发中最常用的语言;
- 如何自建obs服务器,使用 Nginx+OBS 搭建rmtp直播服务器并进行直播
卓相
如何自建obs服务器
目录简介和安装配置OBS推流运行拉流完成简介和安装Nginx本身是一个非常出色的HTTP服务器,OBS(OpenBroadcasterSoftware)是一个免费且开源的,全平台支持的视频录制和直播软件。这两个东西通过一个nginx的模块nginx-rtmp-module组合在一起,即可以搭建一个功能流媒体服务器。这个流媒体服务器可以支持RTMP和HLS(LiveHttpStream)。FFmpe
- 【一文读懂】什么是RTSP协议?
Bl_a_ck
通讯协议udptcp/ip网络网络协议rtsp
RTSP协议(Real-TimeStreamingProtocol)RTSP(Real-TimeStreamingProtocol)是一个网络控制协议,用于在实时流媒体传输中管理多媒体数据的传输。RTSP并不传输数据本身,而是用于控制流媒体服务器,类似于HTTP协议,但它主要用于多媒体流的控制,比如音视频流的播放、暂停、停止等操作。工作原理RTSP协议本质上是一个客户端-服务器协议。客户端发起请求
- 什么是RTMP 和 RTSP?它们之间有什么区别?
wljslmz
网络技术RTMPRTSP
你好,这里是网络技术联盟站。视频盛行的时代,流媒体技术越来越重要,在本文中,我们将讨论两种流行的流媒体协议:RTMP和RTSP。什么是流协议?简单地说,流协议就是在两个通信系统之间传输多媒体文件的一套规则,它定义了视频文件将如何分解为小数据包以及它们在互联网上传输的顺序,RTMP与RTSP是比较常见的流媒体协议。RTMP英文全称:Real-TimeMessagingProtocol中文意思:实时消
- webrtc-stream和m7s可以实现thingsboard加载视频的功能,还有其其他网页的方法也可以实现如flask
鼾声鼾语
自动驾驶云平台音视频python开发语言ubuntugithub
方法1,推荐参考的案例:去学习webrtc-stream下载地址:去下载方法2,推荐:m7s下载地址:去下载m7s流媒体服务搭建方法方法3不推荐,不能够直接迁入到thingsboard中flask实现网页读取rtsp视频流创建app.py在app.py同级目录下创建文件夹和htmltemplates/index.html启动app.py,然后在地址中就可以看到视频了
- 流媒体传输的基本原理
学习嵌入式的小羊~
音视频
•实时播放:流媒体通过网络传输多媒体数据(如音频、视频),允许用户在数据传输过程中就开始播放,而不是等到所有数据都下载完毕。这依赖于以下几个关键因素:•网络控制协议:例如RTSP(Real-TimeStreamingProtocol)用于控制流媒体会话,RTP(Real-timeTransportProtocol)用于数据传输,而RTCP(RTPControlProtocol)用于监控质量和提供反
- RTP协议详解
dusk0825
流媒体
RTP协议负责对流媒体数据进行封包并实现媒体流的实时传输,即它按照RPT数据包格式来封装流媒体数据,并利用与它绑定的协议进行数据包的传输;RTP本身只保证实时数据的传输,并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。一、RTP数据包格式RTP码流由多个RTP包组成,每个RTP包,由RTP头标准字段(固定12字节)、RTP头扩展字段、RTP负载、
- FFmpeg 命令规则与参数详解:输入/输出 YUV 文件的要求与分析
陈皮话梅糖@
FFmpeg音视频高阶技术讲解ffmpeg
FFmpeg命令规则与参数详解:输入/输出YUV文件的要求与分析FFmpeg是一个强大的多媒体处理工具,支持视频、音频的编解码、格式转换、流媒体处理等功能。使用FFmpeg时,命令行参数的配置非常重要,尤其是处理YUV文件时,需要明确指定输入/输出的格式、分辨率、帧率等参数。本文将详细分析FFmpeg命令的规则和要求,特别是针对YUV文件的输入和输出。1.FFmpeg命令的基本结构FFmpeg命令
- 音视频流媒体中的实 时 流式 传 输 (Realtime (progressive streaming)。streaming )和 顺 序 流式 传 输
学习嵌入式的小羊~
音视频ffmpeg
实时流式传输(RealtimeStreaming)和顺序流式传输(ProgressiveStreaming)是两种不同的视频传输方式,它们各自有不同的特点和应用场景:实时流式传输(RealtimeStreaming)定义:实时流式传输是指视频内容在被创建或捕获的同时进行传输。观众可以立即看到正在进行的直播内容。特点:实时性:内容几乎没有延迟地到达观众,这对于直播、体育赛事、新闻报道等场景非常重要。
- EasyNVR平台现已支持AAC、G711A及G711U音频编码格式
EasyNVR
EasyNVR问题解决aacg711音视频数据库视频监控安全
在视频监控和流媒体传输领域,音频与视频的质量和同步性是用户体验的关键因素。EasyNVR平台一直以来致力于为用户提供稳定、高效的音视频解决方案。然而,随着技术的发展和用户需求的多样化,平台在音频编码格式的支持上遇到了一些挑战。之前有客户反馈,在使用EasyNVR平台播放云端录像时没有声音。经排查发现,问题源于设备使用的是G711A音频编码格式,而当时EasyNVR平台仅支持AAC格式的云端录像音频
- 实现使用Python和OpenCV播放RTMP视频流媒体的WebRTC
FdviAutoit
pythonopencv媒体WebRTC
WebRTC(Web实时通信)是一种用于浏览器之间实时通信的开放标准。它可以在Web浏览器中实现音频、视频和数据的传输,为实时通信应用程序提供了强大的功能。本文将介绍如何使用Python和OpenCV库来实现通过RTMP(实时媒体传输协议)播放视频流,并结合WebRTC实现实时的视频通信。在开始之前,确保你已经安装了Python和相应的库。你可以使用pip命令来安装OpenCV和其他所需的库:pi
- NGINX-RTMP 框架详解及与SRS对比
Ryan-S
webrtcnginxffmpeg运维音视频
NGINX-RTMP框架详解及与SRS对比1.概述NGINX-RTMP是基于Nginx的第三方模块(由社区开发维护),专注于RTMP协议的流媒体处理,适用于直播推流、点播分发等场景。它通过扩展Nginx的能力,支持RTMP流接收、转码、录制及多协议输出(如HLS)。核心特点如下:2.核心功能推流与拉流:支持RTMP协议推流(如OBS推流)和拉流播放。转码与录制:集成FFmpeg进行实时转码(分辨率
- 【QT】- QUdpSocket
追心嵌入式
QTqt开发语言
QUdpSocket是Qt自带的一个类,属于Qt网络模块,用于进行UDP(用户数据报协议)通信。它提供了简便的接口来发送和接收UDP数据报(datagrams)。UDP是一种无连接的协议,适用于那些不需要确保数据可靠性和顺序的应用场景,比如实时游戏、流媒体、DNS请求等。QUdpSocket概述QUdpSocket继承自QAbstractSocket,可以用于进行基于UDP协议的数据发送和接收。它
- Licode简介及与SRS对比
Ryan-S
webrtcLicode
Licode是一个开源的WebRTC通信框架,专注于多人实时音视频互动(如视频会议),而SRS是一个通用的流媒体服务器,支持直播、低延迟流分发等场景。以下是两者的详细对比和Licode的核心解析:一、Licode核心解析1.定位与设计目标核心功能:基于WebRTC的多人实时音视频通信(SFU/MCU混合架构)。设计思想:分布式架构:支持横向扩展(多个节点组成集群)。房间管理:以“房间(Room)”
- NVR管理平台EasyNVR深度解析:RTSP协议应用及摄像机集成
EasyGBS
EasyNVR音视频安全视频监控
随着信息技术的飞速发展,智慧视频监控平台已成为现代社会安全管理与智能化建设的重要基石。在众多视频监控平台中,NVR管理平台EasyNVR凭借其高效性、兼容性和灵活性,赢得了广泛的赞誉和应用。RTSP协议主要用于控制声音或影像的多媒体串流。它允许客户端与服务器进行交互,从而控制流媒体的播放、暂停、停止、倒放、快进等操作。RTSP协议应用及原理1、应用场景:共装了几台网络摄像机,想要实现多台录像机同时
- 使用国标流媒体服务器查看监控摄像头视频流如何正确使用UDP及TCP协议?
EasyGBS
EasyGBSTCP协议国标流媒体服务器国标GB28181安防摄像头视频直播
用过国标流媒体服务器的朋友们应该都知道,GB28181协议是由公安部提出来的,能够对接公安部的网络系统,给安防带来了很大的便利性,我们的国标流媒体服务器就支持集成接入自己的平台,也能够对视频进行录像。使用国标流媒体服务器会有很多二次开发的可能,因为我们会提供丰富的二次开发接口。近期也有不少用户用https接入国标流媒体服务器,是一种十分实用的视频监控网页直播。有位开发者为了进行测试,在自己的现场环
- SRS分析及低延迟实现机制
Ryan-S
webrtc音视频
本文是关于SRS(SimpleRealtimeServer)的架构解析、性能优势以及低延迟实现机制的详细说明:一、SRS的核心架构SRS的架构设计以模块化、高性能、低延迟为核心目标,主要分为以下几个层次:1.进程模型单进程多线程:SRS默认采用单进程模型,通过多线程处理网络I/O、流媒体协议解析、转码等任务,减少进程间切换开销。多进程集群:支持通过--workers参数启动多个进程,充分利用多核C
- 音视频开发成长之路与音视频知识点总结
Linux服务器开发
音视频开发webrtcffmpeg音视频开发流媒体服务器开发webrtcFFmpeg嵌入式音视频开发
音视频涉及语音信号处理、数字图像处理、信息论、封装格式、编解码、流媒体协议、网络传输、渲染、算法等。在现实生活中,音视频发挥着越来越重要的作用,如视频会议、直播、短视频、播放器、语音聊天等。所以从事音视频开发是一件有意义的事情,机遇和挑战并存。本文将从:音视频开发基础、音视频高级成长、音视频工作方向、音视频开源库、音视频相关书籍,配套的学习资源等几个方面来进行介绍。那么我们该如何系统的学习音视频开
- FFmpeg:多媒体处理的瑞士军刀
我码玄黄
开源后端运维ffmpeg多媒体处理开源
FFmpeg:多媒体处理的瑞士军刀前言FFmpeg是一个功能强大且跨平台的开源多媒体框架,广泛应用于音视频处理领域。它由多个库和工具组成,能够处理各种音视频格式,涵盖编码、解码、转码、流处理等多种操作。无论是专业视频编辑软件,还是流媒体服务,FFmpeg都扮演着重要角色。本文将从其核心组件、常用命令、应用场景以及优势与挑战等方面,深入探讨FFmpeg的功能与价值。核心组件解析FFmpeg的强大功能
- 安装数据库首次应用
Array_06
javaoraclesql
可是为什么再一次失败之后就变成直接跳过那个要求
enter full pathname of java.exe的界面
这个java.exe是你的Oracle 11g安装目录中例如:【F:\app\chen\product\11.2.0\dbhome_1\jdk\jre\bin】下的java.exe 。不是你的电脑安装的java jdk下的java.exe!
注意第一次,使用SQL D
- Weblogic Server Console密码修改和遗忘解决方法
bijian1013
Welogic
在工作中一同事将Weblogic的console的密码忘记了,通过网上查询资料解决,实践整理了一下。
一.修改Console密码
打开weblogic控制台,安全领域 --> myrealm -->&n
- IllegalStateException: Cannot forward a response that is already committed
Cwind
javaServlets
对于初学者来说,一个常见的误解是:当调用 forward() 或者 sendRedirect() 时控制流将会自动跳出原函数。标题所示错误通常是基于此误解而引起的。 示例代码:
protected void doPost() {
if (someCondition) {
sendRedirect();
}
forward(); // Thi
- 基于流的装饰设计模式
木zi_鸣
设计模式
当想要对已有类的对象进行功能增强时,可以定义一个类,将已有对象传入,基于已有的功能,并提供加强功能。
自定义的类成为装饰类
模仿BufferedReader,对Reader进行包装,体现装饰设计模式
装饰类通常会通过构造方法接受被装饰的对象,并基于被装饰的对象功能,提供更强的功能。
装饰模式比继承灵活,避免继承臃肿,降低了类与类之间的关系
装饰类因为增强已有对象,具备的功能该
- Linux中的uniq命令
被触发
linux
Linux命令uniq的作用是过滤重复部分显示文件内容,这个命令读取输入文件,并比较相邻的行。在正常情 况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如 果输入文件用“- ”表示,则从标准输入读取。
AD:
uniq [选项] 文件
说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个
- 正则表达式Pattern
肆无忌惮_
Pattern
正则表达式是符合一定规则的表达式,用来专门操作字符串,对字符创进行匹配,切割,替换,获取。
例如,我们需要对QQ号码格式进行检验
规则是长度6~12位 不能0开头 只能是数字,我们可以一位一位进行比较,利用parseLong进行判断,或者是用正则表达式来匹配[1-9][0-9]{4,14} 或者 [1-9]\d{4,14}
&nbs
- Oracle高级查询之OVER (PARTITION BY ..)
知了ing
oraclesql
一、rank()/dense_rank() over(partition by ...order by ...)
现在客户有这样一个需求,查询每个部门工资最高的雇员的信息,相信有一定oracle应用知识的同学都能写出下面的SQL语句:
select e.ename, e.job, e.sal, e.deptno
from scott.emp e,
(se
- Python调试
矮蛋蛋
pythonpdb
原文地址:
http://blog.csdn.net/xuyuefei1988/article/details/19399137
1、下面网上收罗的资料初学者应该够用了,但对比IBM的Python 代码调试技巧:
IBM:包括 pdb 模块、利用 PyDev 和 Eclipse 集成进行调试、PyCharm 以及 Debug 日志进行调试:
http://www.ibm.com/d
- webservice传递自定义对象时函数为空,以及boolean不对应的问题
alleni123
webservice
今天在客户端调用方法
NodeStatus status=iservice.getNodeStatus().
结果NodeStatus的属性都是null。
进行debug之后,发现服务器端返回的确实是有值的对象。
后来发现原来是因为在客户端,NodeStatus的setter全部被我删除了。
本来是因为逻辑上不需要在客户端使用setter, 结果改了之后竟然不能获取带属性值的
- java如何干掉指针,又如何巧妙的通过引用来操作指针————>说的就是java指针
百合不是茶
C语言的强大在于可以直接操作指针的地址,通过改变指针的地址指向来达到更改地址的目的,又是由于c语言的指针过于强大,初学者很难掌握, java的出现解决了c,c++中指针的问题 java将指针封装在底层,开发人员是不能够去操作指针的地址,但是可以通过引用来间接的操作:
定义一个指针p来指向a的地址(&是地址符号):
- Eclipse打不开,提示“An error has occurred.See the log file ***/.log”
bijian1013
eclipse
打开eclipse工作目录的\.metadata\.log文件,发现如下错误:
!ENTRY org.eclipse.osgi 4 0 2012-09-10 09:28:57.139
!MESSAGE Application error
!STACK 1
java.lang.NoClassDefFoundError: org/eclipse/core/resources/IContai
- spring aop实例annotation方法实现
bijian1013
javaspringAOPannotation
在spring aop实例中我们通过配置xml文件来实现AOP,这里学习使用annotation来实现,使用annotation其实就是指明具体的aspect,pointcut和advice。1.申明一个切面(用一个类来实现)在这个切面里,包括了advice和pointcut
AdviceMethods.jav
- [Velocity一]Velocity语法基础入门
bit1129
velocity
用户和开发人员参考文档
http://velocity.apache.org/engine/releases/velocity-1.7/developer-guide.html
注释
1.行级注释##
2.多行注释#* *#
变量定义
使用$开头的字符串是变量定义,例如$var1, $var2,
赋值
使用#set为变量赋值,例
- 【Kafka十一】关于Kafka的副本管理
bit1129
kafka
1. 关于request.required.acks
request.required.acks控制者Producer写请求的什么时候可以确认写成功,默认是0,
0表示即不进行确认即返回。
1表示Leader写成功即返回,此时还没有进行写数据同步到其它Follower Partition中
-1表示根据指定的最少Partition确认后才返回,这个在
Th
- lua统计nginx内部变量数据
ronin47
lua nginx 统计
server {
listen 80;
server_name photo.domain.com;
location /{set $str $uri;
content_by_lua '
local url = ngx.var.uri
local res = ngx.location.capture(
- java-11.二叉树中节点的最大距离
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
public class MaxLenInBinTree {
/*
a. 1
/ \
2 3
/ \ / \
4 5 6 7
max=4 pass "root"
- Netty源码学习-ReadTimeoutHandler
bylijinnan
javanetty
ReadTimeoutHandler的实现思路:
开启一个定时任务,如果在指定时间内没有接收到消息,则抛出ReadTimeoutException
这个异常的捕获,在开发中,交给跟在ReadTimeoutHandler后面的ChannelHandler,例如
private final ChannelHandler timeoutHandler =
new ReadTim
- jquery验证上传文件样式及大小(好用)
cngolon
文件上传jquery验证
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="jquery1.8/jquery-1.8.0.
- 浏览器兼容【转】
cuishikuan
css浏览器IE
浏览器兼容问题一:不同浏览器的标签默认的外补丁和内补丁不同
问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。
碰到频率:100%
解决方案:CSS里 *{margin:0;padding:0;}
备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设
- Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
daizj
shell$#$?特殊变量
前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:
$echo $$
运行结果
29949
特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个
- 程序设计KISS 原则-------KEEP IT SIMPLE, STUPID!
dcj3sjt126com
unix
翻到一本书,讲到编程一般原则是kiss:Keep It Simple, Stupid.对这个原则深有体会,其实不仅编程如此,而且系统架构也是如此。
KEEP IT SIMPLE, STUPID! 编写只做一件事情,并且要做好的程序;编写可以在一起工作的程序,编写处理文本流的程序,因为这是通用的接口。这就是UNIX哲学.所有的哲学真 正的浓缩为一个铁一样的定律,高明的工程师的神圣的“KISS 原
- android Activity间List传值
dcj3sjt126com
Activity
第一个Activity:
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import a
- tomcat 设置java虚拟机内存
eksliang
tomcat 内存设置
转载请出自出处:http://eksliang.iteye.com/blog/2117772
http://eksliang.iteye.com/
常见的内存溢出有以下两种:
java.lang.OutOfMemoryError: PermGen space
java.lang.OutOfMemoryError: Java heap space
------------
- Android 数据库事务处理
gqdy365
android
使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。事
- Java 打开浏览器
hw1287789687
打开网址open浏览器open browser打开url打开浏览器
使用java 语言如何打开浏览器呢?
我们先研究下在cmd窗口中,如何打开网址
使用IE 打开
D:\software\bin>cmd /c start iexplore http://hw1287789687.iteye.com/blog/2153709
使用火狐打开
D:\software\bin>cmd /c start firefox http://hw1287789
- ReplaceGoogleCDN:将 Google CDN 替换为国内的 Chrome 插件
justjavac
chromeGooglegoogle apichrome插件
Chrome Web Store 安装地址: https://chrome.google.com/webstore/detail/replace-google-cdn/kpampjmfiopfpkkepbllemkibefkiice
由于众所周知的原因,只需替换一个域名就可以继续使用Google提供的前端公共库了。 同样,通过script标记引用这些资源,让网站访问速度瞬间提速吧
- 进程VS.线程
m635674608
线程
资料来源:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001397567993007df355a3394da48f0bf14960f0c78753f000 1、Apache最早就是采用多进程模式 2、IIS服务器默认采用多线程模式 3、多进程优缺点 优点:
多进程模式最大
- Linux下安装MemCached
字符串
memcached
前提准备:1. MemCached目前最新版本为:1.4.22,可以从官网下载到。2. MemCached依赖libevent,因此在安装MemCached之前需要先安装libevent。2.1 运行下面命令,查看系统是否已安装libevent。[root@SecurityCheck ~]# rpm -qa|grep libevent libevent-headers-1.4.13-4.el6.n
- java设计模式之--jdk动态代理(实现aop编程)
Supanccy2013
javaDAO设计模式AOP
与静态代理类对照的是动态代理类,动态代理类的字节码在程序运行时由Java反射机制动态生成,无需程序员手工编写它的源代码。动态代理类不仅简化了编程工作,而且提高了软件系统的可扩展性,因为Java 反射机制可以生成任意类型的动态代理类。java.lang.reflect 包中的Proxy类和InvocationHandler 接口提供了生成动态代理类的能力。
&
- Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持
wiselyman
spring 4
2.1 默认方法(default method)
java8引入了一个default medthod;
用来扩展已有的接口,在对已有接口的使用不产生任何影响的情况下,添加扩展
使用default关键字
Spring 4.2支持加载在默认方法里声明的bean
2.2
将要被声明成bean的类
public class DemoService {