- 树莓派学习专题<8>:使用V4L2驱动获取摄像头数据--获取摄像头支持的分辨率
宁建利
树莓派学习学习算法人工智能
树莓派学习专题<8>:使用V4L2驱动获取摄像头数据--获取摄像头支持的分辨率0.项目代码1.获取摄像头支持的分辨率2.代码分析3.树莓派实测0.项目代码可以从下面获取到项目中的代码。https://github.com/cdsmakc/h264_codec_base_rpi4b_rpi5_rv1106_visual_studio.git1.获取摄像头支持的分辨率使用如下代码获取摄像头支持的输出分
- 随笔录-1
知与行!实践是掌握知识的唯一方法
随笔-专栏音视频
1:阅读源码:源码面前,了无困难。通过选中函数转到定义如:FFmpeg的源码=结构体+函数结构体是内部参数函数是括号内的参数:自动显示+转到定义显示PS:以后绝不买盗版书,质量太差2:把数学学好教宝宝3:需要提前学好的:DS学好------>>>>>>再刷LCQT学好------>>>>>>做夏的项目4:熟练掌握FFmpeg的一些功能函数YUVMP4RGBMP4H264MP45:开始学习FFmpe
- Qt/C++音视频开发05-保存视频文件(yuv/h264/mp4)
feiyangqingyun
Qt/C++音视频开发qtffmpegQt视频监控
一、前言和音频存储类似,视频的存储也对应三种格式,视频最原始的数据是yuv(音频对应pcm),视频压缩后的数据是h264(音频对应aac),由于很多播放器或者早期的播放器不支持直接播放h264文件,所以需要用编码器编码成mp4格式,这块就需要用到ffmpeg里面一整套的编码流程,对yuv数据进行编码成MP4格式存储。在经过对各种视频文件或者视频流保存的过程中,发现rtsp这类的视频流可以直接编码打
- ffmpeg 调用gpu进行转码
wcy10086
ffmpeg
ffmpeg-hwaccelcuvid-irtsp://admin:
[email protected]/h264/ch1/main/av_stream-c:vh264_nvencD://nginx-1.20.2//nginx-1.20.2//html//m3u8//136.m3u8
- 关于使用FFmpeg进行视频拼接
关于使用FFmpeg进行视频拼接方案使用concatdemuxer使用concat协议更多支持其他方案使用concat滤镜失败其他工具MP4BoxMKVMergeMEncoder额外知识管道h264_mp4toannexb&aac_adtstoasc参考资料修改历史方案http://trac.ffmpeg.org/wiki/Concatenate使用concatdemuxerFFmpeg读取不同格
- 【bug】 jetson上opencv无法录制h264本地视频
lxmyzzs
bugopencv音视频
在JetsonOrinNX上无法使用opencv直接录制h264/h265视频流(h264格式的视频流才能在浏览器播放)解决:软件编码:需要源码编译opencv1.环境准备pipuninstallopencv-pythonsudoaptinstallbuild-essentialcmakegitpython3-devpython3-numpy\libavcodec-devlibavformat-d
- Android音视频通话
Android音视频通话前言一、准备工作1、编写Jni接口2、通过javah工具生成头文件3、集成speex、webrtc二、初始化工作三、开启socketudp服务四、判断socket是否可读五、发送数据到远端1、视频数据1.1、初始化MediaCodec1.2、通过MediaCodec进行H264编码2、音频数据2.1、webrtc消回声2.2、speex编码压缩六、断开连接前言Android
- RTSP系列三:RTP协议介绍
BreakingY
网络音视频
我的音视频/流媒体开源项目(github)RTSP系列:RTSP系列一:RTSP协议介绍-CSDN博客RTSP系列二:RTSP协议鉴权-CSDN博客RTSP系列三:RTP协议介绍-CSDN博客RTSP系列四:RTSPServer/Client实战项目-CSDN博客目录一、基本概念二、RTP报文格式三、RTP封装视频3.1、RTP封装H2643.1.1、单一封包模式3.1.2、组合封包模式3.1.3
- HTML5里video标签支持哪些格式的视频文件
Lucky_chengzi
video标签支持的视频格式:Ogg、MPEG4、WebMMP4=MPEG4文件使用H264视频编解码器和AAC音频编解码器WebM=WebM文件使用VP8视频编解码器和Vorbis音频编解码器Ogg=Ogg文件使用Theora视频编解码器和Vorbis音频编解码器
- ffmpeg 视频编码流程及主要API
melonbo
FFMPEGffmpeg音视频
一、编码流程初始化组件配置编码器参数打开编码器处理输入帧编码循环写入输出数据收尾释放资源二、核心步骤与API详解1.初始化与参数配置注册组件(旧版本需手动注册,新版本自动处理)avformat_network_init();//网络相关初始化(可选)查找编码器AVCodec*codec=avcodec_find_encoder(AV_CODEC_ID_H264);//支持H.264/HEVC等创建
- 基于Live555实现RTSP服务器来推送H264实时码流
静止了 所有的花开
音视频h.264
实现了一个单播的rtsp服务器来推送实时的h264码流,参考了官方的testProgs目录下的testOnDemandRTSPServer例程和liveMedia目录下的DeviceSource.cpp文件。我这边是把编码出来的h264码流放入了一个缓冲队列,然后从缓冲队列里取出来进行推流。rtsp.h:#ifndef_RTSP_H_#define_RTSP_H_#include"liveMedi
- H264码流介绍 及 FFmpeg解封装得到H264码流方法
冰冰的coco
音视频ffmpeg
参考文章音视频H264编解码协议-知乎视频H264编码详解(上)-知乎H.264媒体流AnnexB和AVCC格式分析-CSDNH264之NALU解析-知乎H264帧,SPS,PPS概念-知乎H.264流媒体协议格式中的AnnexB格式和AVCC格式深度解析-CSDNH264简介H.264从1999年开始,到2003年形成草案,最后在2007年定稿有待核实。在ITU的标准⾥称为H.264,在MPEG
- 轻松掌握视频格式转换:利用FFmpeg将H264裸流封装为MP4
霍梦含Jessie
轻松掌握视频格式转换:利用FFmpeg将H264裸流封装为MP4【下载地址】利用FFmpeg将H264裸流文件封装为MP4文件并保存利用FFmpeg将H264裸流文件封装为MP4文件并保存本仓库提供了一个资源文件,详细介绍了如何利用FFmpeg库将H264裸流文件读取到内存中,并将其封装为MP4文件并保存到本地项目地址:https://gitcode.com/open-source-toolkit
- Ubuntu下使用ffmpeg封装h264裸流为MP4文件
最近在研究ffmpeg封装h264裸流为MP4相关问题,这里需要解释下为什么要封装h264视频,通过编码器得到的h264视频流仅仅是裸流,只包含一些流的头信息和视频数据,没有时间戳的概念,所以使用播放器播放h264视频时,会出现播放速度不正常的现象(我遇到的是快进现象),所以将h264封装成MP4格式可以添加时间戳的信息进去,即可使用播放器正常播放视频。参考网上的代码(https://blog.c
- 将h.264视频流封装成flv格式文件(二.开始动手)
darkdragonking
flv264flvh.264rtmpc++windows
前面写了flv文件的解析,有h264裸流的话就开始封装吧。网上大多数都是用ffmeg库来做这个工作的,哎,学习资料少学不会,还是自己动手吧。封装前要先了解下h.264格式,只需要知道一点点就可以了,我看了h.264官方文档,我靠,3百多页,还全是中文,什么,是中文?既然是中文的我就勉强看下吧,我靠,看起来还很复杂的,果断不看了,不需要,也没时间,我又不做解码,这东西具体步骤资料又少,基本都是那一两
- RK3288解码视频时遇到的奇葩问题
melonbo
百问-音视频音视频
1、亮线问题用rk3288做视频显示,qt界面是1024x768,在切换视频源时,屏幕偶尔会出现亮线,位置在屏幕的正中间。解决方法是将qt的界面设置为1023x767,完美解决。2、亮点rk3288在解码显示h264视频时,界面的图像会出现斑驳的亮点,不仔细看还看不出来,出现的亮点有的在视频图像上,有的在qt界面上。解决方法是在现实图像界面前,先用ffplay播放一个全屏的画面,然后再显示程序的界
- 音视频及H264/H256编码相关原理
Everbrilliant89
音视频开发音视频视频编解码H264编码H265编码音视频编解码
一、音视频封装格式原理:我们播放的视频文件一般都是用一种封装格式封装起来的,封装格式的作用是什么呢?一般视频文件里不光有视频,还有音频,封装格式的作用就是把视频和音频打包起来。所以我们先要解封装格式,看有哪些视频流和哪些音频流,此时的音频流和视频流都还是压缩数据,不能直接用于显示的,这就需要解码。如FFmpeg视频文件就是一个容器(视频流(H264)音频流(aac))。1、视频文件封装格式:封装格
- 音视频基础概念扫盲
Charlotte_jc
音视频
音视频概念相关参考地址ffmpeg视频压缩视频尺寸(视频分辨率/帧大小)视频分辨率,常见的分辨率有4096×2160,2560x1440,1920*1080,1280*720视频编码视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。常见的编码格式有:H264,VP8,AVS,RMVB,WMV,QuickTime音频编码音频编码方式指通过特定的压缩技术对音频数
- 【TroubleShoot】Windows10视频文件没有预览图的解决办法
tealcwu
windows音视频h.264vp9
【问题描述】Windows文件夹中,有一部分的MP4视频在文件以图标显示的时候,是可以直接看到预览图的,但有一部分没法预览,只能显示为统一的文件类型图标。【解决方法】检查发现,两类MP4都是使用H264格式,用VLCMediaPlayer等专门的播放器都能播放,但使用Windows自带的WindowsMediaPlayer,可以预览的就可以正常播放,不能预览的就不能播放,而且播放器会停止响应。由此
- 某腾X视频下载器2.1
摆渡搜不到你
音视频python
importreimportosimporttimefrombs4importBeautifulSoupfromDrissionPageimportChromiumPage,ChromiumOptionsimportsubprocess#编码和清晰度映射表codec_mapping={'f321004':('H264','1080'),'f321003':('H264','720'),'f3210
- 利用WireShark分析H264码流
阿基米东
wiresharkh264
背景:最近在参与一个ARM平台的音视频传输的项目,同事说已经是高清视频了,但是显示模糊,显然不能达到高清要求,于是就想抓包分析一下。Step1:执行如下命令,在ARM平台上用tcpdump抓包并保存为test.cap。tcpdump–ieth0–nn–wtest.cap然后启动我们的多媒体通信程序,抓取几秒的数据即可。Step2:用WireShark工具打开test.cap文件。Step3:右键点
- Wireshark使用教程(含安装包和安装教程)
光电的一只菜鸡
嵌入式wireshark测试工具网络
Wireshark使用入门教程0.资源下载以及软件安装1.Wireshark中无法显示网卡列表2.Wireshark抓取H264过程0.资源下载以及软件安装 参考blog:抓包神器wireshark安装保姆级教程 压缩包下载:Wireshark安装包1.Wireshark中无法显示网卡列表 Wireshark中无法显示网卡列表的解决方法:Wireshark中无法显示网卡列表的解决方法2.Wi
- FFmpeg 解码视频流实现yuv播放
书弋江山
ffmpegcC++IOSffmpegh264codecyuv解码
参考文章雷神文章FFMPEG–裸码流解码AVCodec最简单的基于FFmpeg的libswscale的示例(YUV转RGB)视频流测试端口初始化解码器相关变量-(void)initDecoder{if(decodeFrame){return;}intcodec_id=AV_CODEC_ID_H264;pCodec=avcodec_find_decoder(codec_id);if(!pCodec)
- USB虚拟化工具之:虚拟UVC摄像头,提供下载测试链接(支持win7,win10等系统)
驱动开发007
驱动开发计算机外设云计算数码相机usb虚拟化usb重定向
//6.UVC帧格式comboFrameFormat=newQComboBox(this);comboFrameFormat->addItems({"MJPEG","YUV420P","NV12","H264","H265"});支持"MJPEG","YUV420P","NV12","H264","H265"5种帧格式。MJPEG兼容性较好,支持4K,支持windows自带相机,微信,抖音直播伴侣
- 录制mp4
AI算法网奇
python基础opencvpython计算机视觉
目录单线程保存mp4多线程保存mp4rtspffmpeg录制mp4单线程保存mp4importcv2importimageiocv2.namedWindow('photo',0)#0窗口大小可以任意拖动,1自适应cv2.resizeWindow('photo',1280,720)url="rtsp://admin:
[email protected]/h264/ch1/main/av_str
- 视频编码实战
生椰_李点点
ffmpeg音视频
FFmpeg流程从本地读取YUV数据编码为h264格式的数据,然后再存⼊到本地,编码后的数据有带startcode。与FFmpeg示例⾳频编码的流程基本⼀致。函数说明:avcodec_find_encoder_by_name:根据指定的编码器名称查找注册的编码器。avcodec_alloc_context3:为AVCodecContext分配内存。avcodec_open2:打开编解码器。avco
- 编解码器不支持OpenCV:FFmpeg:tag 0x34363268/‘;h264‘;
潮易
opencvffmpeg人工智能
在Python中处理视频时,我们经常会遇到解码器不支持OpenCV的问题。这通常是由于你的系统上没有安装或配置正确的FFmpeg版本导致的。解决这个问题的一种方法是检查你的系统中是否已经安装了FFmpeg,以及它是否位于系统的PATH环境变量中。如果FFmpeg未正确安装,或者不在PATH中,那么Python的cv2库可能无法找到它。如果你的系统上已安装了FFmpeg,但是仍然出现上述错误,那么可
- 编译opencv,及其依赖ffmpeg, 以支持h264,h265
northeastsqure
opencvffmpegh265h264
ubuntu,更改自:https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu警告:ffmpeg一定要编译为动态库,非静态库1.编译ffmpegsudoapt-getupdate-qq&&sudoapt-get-yinstall\autoconf\automake\build-essential\cmake\git-core\libass-dev\l
- 蝌蚪窝html5 video not,html - HTML5 Video does not play in any browser - Stack Overflow
远方之巅
蝌蚪窝html5videonot
IhaveavideowiththefollowinginformationItisMP4videowithH264codecHowever,usingthefollowingcode:Yourbrowserdoesnotsupportthevideotag.ThevideodoesnotplayandlookslikethiswhenIrenderitRenderedVideoIhavechec
- Error! DLL amfrt64.dll failed to open
wangzhpwang
pythonffmpeg
Intel集显,win10下ffmpeg报DLLamfrt64.dllfailedtoopen解决办法创建:C:\Users\用户1\.matplotlib\matplotlibrc设置:animation.codec:h264_qsv#Codectouseforwritingmoviefigure.dpi:300figure.figsize:7,4.5axes.labelsize:18legen
- java数字签名三种方式
知了ing
javajdk
以下3钟数字签名都是基于jdk7的
1,RSA
String password="test";
// 1.初始化密钥
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(51
- Hibernate学习笔记
caoyong
Hibernate
1>、Hibernate是数据访问层框架,是一个ORM(Object Relation Mapping)框架,作者为:Gavin King
2>、搭建Hibernate的开发环境
a>、添加jar包:
aa>、hibernatte开发包中/lib/required/所
- 设计模式之装饰器模式Decorator(结构型)
漂泊一剑客
Decorator
1. 概述
若你从事过面向对象开发,实现给一个类或对象增加行为,使用继承机制,这是所有面向对象语言的一个基本特性。如果已经存在的一个类缺少某些方法,或者须要给方法添加更多的功能(魅力),你也许会仅仅继承这个类来产生一个新类—这建立在额外的代码上。
- 读取磁盘文件txt,并输入String
一炮送你回车库
String
public static void main(String[] args) throws IOException {
String fileContent = readFileContent("d:/aaa.txt");
System.out.println(fileContent);
- js三级联动下拉框
3213213333332132
三级联动
//三级联动
省/直辖市<select id="province"></select>
市/省直辖<select id="city"></select>
县/区 <select id="area"></select>
- erlang之parse_transform编译选项的应用
616050468
parse_transform游戏服务器属性同步abstract_code
最近使用erlang重构了游戏服务器的所有代码,之前看过C++/lua写的服务器引擎代码,引擎实现了玩家属性自动同步给前端和增量更新玩家数据到数据库的功能,这也是现在很多游戏服务器的优化方向,在引擎层面去解决数据同步和数据持久化,数据发生变化了业务层不需要关心怎么去同步给前端。由于游戏过程中玩家每个业务中玩家数据更改的量其实是很少
- JAVA JSON的解析
darkranger
java
// {
// “Total”:“条数”,
// Code: 1,
//
// “PaymentItems”:[
// {
// “PaymentItemID”:”支款单ID”,
// “PaymentCode”:”支款单编号”,
// “PaymentTime”:”支款日期”,
// ”ContractNo”:”合同号”,
//
- POJ-1273-Drainage Ditches
aijuans
ACM_POJ
POJ-1273-Drainage Ditches
http://poj.org/problem?id=1273
基本的最大流,按LRJ的白书写的
#include<iostream>
#include<cstring>
#include<queue>
using namespace std;
#define INF 0x7fffffff
int ma
- 工作流Activiti5表的命名及含义
atongyeye
工作流Activiti
activiti5 - http://activiti.org/designer/update在线插件安装
activiti5一共23张表
Activiti的表都以ACT_开头。 第二部分是表示表的用途的两个字母标识。 用途也和服务的API对应。
ACT_RE_*: 'RE'表示repository。 这个前缀的表包含了流程定义和流程静态资源 (图片,规则,等等)。
A
- android的广播机制和广播的简单使用
百合不是茶
android广播机制广播的注册
Android广播机制简介 在Android中,有一些操作完成以后,会发送广播,比如说发出一条短信,或打出一个电话,如果某个程序接收了这个广播,就会做相应的处理。这个广播跟我们传统意义中的电台广播有些相似之处。之所以叫做广播,就是因为它只负责“说”而不管你“听不听”,也就是不管你接收方如何处理。另外,广播可以被不只一个应用程序所接收,当然也可能不被任何应
- Spring事务传播行为详解
bijian1013
javaspring事务传播行为
在service类前加上@Transactional,声明这个service所有方法需要事务管理。每一个业务方法开始时都会打开一个事务。
Spring默认情况下会对运行期例外(RunTimeException)进行事务回滚。这
- eidtplus operate
征客丶
eidtplus
开启列模式: Alt+C 鼠标选择 OR Alt+鼠标左键拖动
列模式替换或复制内容(多行):
右键-->格式-->填充所选内容-->选择相应操作
OR
Ctrl+Shift+V(复制多行数据,必须行数一致)
-------------------------------------------------------
- 【Kafka一】Kafka入门
bit1129
kafka
这篇文章来自Spark集成Kafka(http://bit1129.iteye.com/blog/2174765),这里把它单独取出来,作为Kafka的入门吧
下载Kafka
http://mirror.bit.edu.cn/apache/kafka/0.8.1.1/kafka_2.10-0.8.1.1.tgz
2.10表示Scala的版本,而0.8.1.1表示Kafka
- Spring 事务实现机制
BlueSkator
spring代理事务
Spring是以代理的方式实现对事务的管理。我们在Action中所使用的Service对象,其实是代理对象的实例,并不是我们所写的Service对象实例。既然是两个不同的对象,那为什么我们在Action中可以象使用Service对象一样的使用代理对象呢?为了说明问题,假设有个Service类叫AService,它的Spring事务代理类为AProxyService,AService实现了一个接口
- bootstrap源码学习与示例:bootstrap-dropdown(转帖)
BreakingBad
bootstrapdropdown
bootstrap-dropdown组件是个烂东西,我读后的整体感觉。
一个下拉开菜单的设计:
<ul class="nav pull-right">
<li id="fat-menu" class="dropdown">
- 读《研磨设计模式》-代码笔记-中介者模式-Mediator
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
* 中介者模式(Mediator):用一个中介对象来封装一系列的对象交互。
* 中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
*
* 在我看来,Mediator模式是把多个对象(
- 常用代码记录
chenjunt3
UIExcelJ#
1、单据设置某行或某字段不能修改
//i是行号,"cash"是字段名称
getBillCardPanelWrapper().getBillCardPanel().getBillModel().setCellEditable(i, "cash", false);
//取得单据表体所有项用以上语句做循环就能设置整行了
getBillC
- 搜索引擎与工作流引擎
comsci
算法工作搜索引擎网络应用
最近在公司做和搜索有关的工作,(只是简单的应用开源工具集成到自己的产品中)工作流系统的进一步设计暂时放在一边了,偶然看到谷歌的研究员吴军写的数学之美系列中的搜索引擎与图论这篇文章中的介绍,我发现这样一个关系(仅仅是猜想)
-----搜索引擎和流程引擎的基础--都是图论,至少像在我在JWFD中引擎算法中用到的是自定义的广度优先
- oracle Health Monitor
daizj
oracleHealth Monitor
About Health Monitor
Beginning with Release 11g, Oracle Database includes a framework called Health Monitor for running diagnostic checks on the database.
About Health Monitor Checks
Health M
- JSON字符串转换为对象
dieslrae
javajson
作为前言,首先是要吐槽一下公司的脑残编译部署方式,web和core分开部署本来没什么问题,但是这丫居然不把json的包作为基础包而作为web的包,导致了core端不能使用,而且我们的core是可以当web来用的(不要在意这些细节),所以在core中处理json串就是个问题.没办法,跟编译那帮人也扯不清楚,只有自己写json的解析了.
- C语言学习八结构体,综合应用,学生管理系统
dcj3sjt126com
C语言
实现功能的代码:
# include <stdio.h>
# include <malloc.h>
struct Student
{
int age;
float score;
char name[100];
};
int main(void)
{
int len;
struct Student * pArr;
int i,
- vagrant学习笔记
dcj3sjt126com
vagrant
想了解多主机是如何定义和使用的, 所以又学习了一遍vagrant
1. vagrant virtualbox 下载安装
https://www.vagrantup.com/downloads.html
https://www.virtualbox.org/wiki/Downloads
查看安装在命令行输入vagrant
2.
- 14.性能优化-优化-软件配置优化
frank1234
软件配置性能优化
1.Tomcat线程池
修改tomcat的server.xml文件:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxThreads="1200" m
- 一个不错的shell 脚本教程 入门级
HarborChung
linuxshell
一个不错的shell 脚本教程 入门级
建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在 bash的大姐,bourne shell中运行)。 如同其他语言一样
- Spring4新特性——核心容器的其他改进
jinnianshilongnian
spring动态代理spring4依赖注入
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- Linux设置tomcat开机启动
liuxingguome
tomcatlinux开机自启动
执行命令sudo gedit /etc/init.d/tomcat6
然后把以下英文部分复制过去。(注意第一句#!/bin/sh如果不写,就不是一个shell文件。然后将对应的jdk和tomcat换成你自己的目录就行了。
#!/bin/bash
#
# /etc/rc.d/init.d/tomcat
# init script for tomcat precesses
- 第13章 Ajax进阶(下)
onestopweb
Ajax
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- Troubleshooting Crystal Reports off BW
blueoxygen
BO
http://wiki.sdn.sap.com/wiki/display/BOBJ/Troubleshooting+Crystal+Reports+off+BW#TroubleshootingCrystalReportsoffBW-TracingBOE
Quite useful, especially this part:
SAP BW connectivity
For t
- Java开发熟手该当心的11个错误
tomcat_oracle
javajvm多线程单元测试
#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收
测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为
- 正则表达式大全
yang852220741
html编程正则表达式
今天向大家分享正则表达式大全,它可以大提高你的工作效率
正则表达式也可以被当作是一门语言,当你学习一门新的编程语言的时候,他们是一个小的子语言。初看时觉得它没有任何的意义,但是很多时候,你不得不阅读一些教程,或文章来理解这些简单的描述模式。
一、校验数字的表达式
数字:^[0-9]*$
n位的数字:^\d{n}$
至少n位的数字:^\d{n,}$
m-n位的数字:^\d{m,n}$