- Linux——搭建嵌入式Linux开发环境步骤总结(虚拟机、Ubuntu、JDK、库文件、GCC)
Winter_world
搭建嵌入式Linux开发环境虚拟机Ubuntu安装JDK安装库文件GCC版本更新
目录0前言1主机软件环境2Linux系统下安装编译组件3Linux系统下安装库文件和JDK0前言回顾一直以来做的嵌入式项目方向,从如ST的单片机裸机开发,SOC开发,到STM32裸机开发,基于uCOSII的开发,基于freeRTOS的开发等,在实时操作系统层面的应用开发停留了一段时间了,一直想再突破下自我,去年做了一个基于工控机方案的Linux系统应用开发项目,对于Linux一直没有系统性的学习整
- ZLG嵌入式笔记 | rootfs镜像制作其实没那么难
ZLG 致远电子
边缘计算ZLG嵌入式开发应用笔记个人开发物联网
在嵌入式Linux开发中,文件系统的打包和镜像制作是关键步骤。本文介绍了Linux核心板文件系统的打包与镜像制作方法,适合嵌入式开发人员快速上手。 前言致远电子Linux核心板提供的系统固件里,除了镜像文件之外,通常还会提供文件系统压缩包。镜像文件可以直接用于烧写到目标板,而文件系统压缩包则可以进行部分修改,修改后重新制作镜像文件烧写。这里只讲直接用编译好的二进制文件对文件系
- 嵌入式linux下基于boa cgic sqlite3的ajax web服务器搭建
モザイクカケラ
嵌入式linux-web嵌入式系统开发boacgicsqlite3嵌入式linuxajax
先上大家的资源全部亲测可用sqlite3数据库c语言常用接口应用实例sqlite3数据库交叉编译并移植到嵌入式开发环境步骤fprintf与stderr、stdout的使用Windows中IIS服务器被防火墙阻止导致外网无法访问sqlite3.OperationalError:unabletoopendatabasefileSQLiteDelete语句SQLite数据库中rowid使用基本操作交叉编
- Linux 设备树详解:从概念到实战
Jay_515
Linux学习嵌入式linux设备树
关键词:设备树(DeviceTree)、DTS、DTC、DTB、嵌入式Linux驱动开发为什么需要设备树?在旧版Linux内核中,硬件信息(如内存映射、外设地址、中断号等)直接硬编码在内核源码中。这导致:内核臃肿,需为不同硬件编译不同版本硬件变动需重新编译内核代码冗余严重(一个board-*.c文件对应一块开发板)设备树(DeviceTree)的引入彻底解决了这一问题!它通过描述硬件拓扑结构的文本
- 工业4.0技术PLC远程控制模块的升级处理
huajiezhikong
PLC远程数据传输模块PLC数据上下载PLC远程控制模块多点组网蓝牙远程控制工业产品PLC远程控制无线通讯西门子
工业4.0是实体物理世界与虚拟网络世界融合的时代,产品全生命周期、全制造流程数字化以及基于信息通信技术,升级版PLC远程控制器带你轻松进入工业4.0技术文档:HJ8900是深圳市华杰智控技术有限公司开发的一款远程控制模块,采用嵌入式LINUX系统,工业级低功耗处理器和工业级通信模块,支持1个WAN口和3个LAN口,2路USB接口,2路RS232和2路RS485,支持4G全网通和2.4GWi-Fi。
- 【嵌入式】鲁班猫玩法大全
CodeWithMe
Embedded嵌入式硬件单片机
文章目录鲁班猫玩法大全一、开发平台概况二、开发路线总览(学习+项目实践)三、项目实战模块划分(学习建议)M1.嵌入式Linux基础与设备树入门M2.驱动开发实践M3.多媒体与图形系统M4.边缘AI推理模块(重点推荐)M5.中间件与协议栈实践M6.安全与系统管理四、工具链与开发方式五、推荐开发环境与资源六、从入门到进阶建议路径鲁班猫玩法大全基于鲁班猫3568(RockchipRK3568)平台,可以
- 01-驱动开发开篇
A-花开堪折
ARMLinux驱动linux嵌入式硬件
概述这个主题已经构思了很久,也犹豫了很久,网上讲述linux驱动开发的博主非常多,我在想,我能给我读者带来什么呢。现在嵌入式Linux的开发难度比以前降低了很多,特别是ai的出现,几乎不需要掌握很多的基础知识,也能完成日常工作。特别是从linux-3.10开始使用设备树开始,现在的嵌入式Linux驱动开发几乎就剩下了复制粘贴和调试一些GPIO引脚。这也是我很困惑地方,如果我讲述驱动开发的步骤,对于
- 毕业设计竞赛选题推荐 | 嵌入式Linux应用之智慧医疗行业解决方案:健康检测仪
华清远见IT开放实验室
stm32嵌入式
第七届(2024)全国大学生嵌入式芯片与系统设计竞赛报名活动正在如火如荼地进行中,众多高校学生非常关注的ST赛道已公布7个选题方向:嵌入式人工智能、数字电源、汽车-车规MCU(含额外奖励)、工业4.0、智能可穿戴设备、MPU应用方向、IOT。其中MPU应用方向明确规定该选题只能使用MPU开发,即选用STM32MP1系列或者STM32MP2系列开发板。为了更好助力赛前的准备和学习,推荐一款华清远见研
- 项目实战:valgrind与kmemleak——内存泄漏的终极“体检神器”
嵌入式Jerry
内核+内存管理网络服务器运维
作者:嵌入式Jerry推荐阅读:《Yocto项目实战教程:高效定制嵌入式Linux系统》京东正版促销,支持作者:https://item.jd.com/15020438.html一、前言:内存泄漏,是每个系统工程师都要面对的“世界难题”无论是嵌入式Linux、服务器软件,还是复杂的设备驱动与内核模块,内存泄漏都是导致“系统越跑越慢”“莫名其妙崩溃”“内存不够用”的核心隐患。但不同层次、不同类型的内
- # 内存管理中的缓存分类与分页机制关系 —— 实战代码与现象解读
嵌入式Jerry
内核+内存管理缓存linux运维服务器算法架构
推荐阅读《Yocto项目实战教程:高效定制嵌入式Linux系统》京东购买链接内存管理中的缓存分类与分页机制关系——实战代码与现象解读一、Linux系统中常见的“缓存”类型1.CPUCache(L1/L2/L3)作用:CPU内部缓存,非操作系统可控。理解时可跳过,不归OS内存管理范畴。2.PageCache(页缓存)用途:文件/块设备I/O加速,占用大量物理内存。现象:读/写大文件,free命令bu
- 初学者指南:如何选择嵌入式Linux和单片机(MCU)
不会倒的鸡蛋
单片机嵌入式硬件arm开发
前言在嵌入式系统开发领域,选择合适的平台是项目成功的关键之一。对于初学者来说,如何在嵌入式Linux和单片机(MCU)之间做出选择可能是一项艰巨的任务。本文将详细解释这两种平台的特点、优缺点,以及在不同应用场景中的适用性,帮助初学者做出明智的选择。嵌入式Linux简介概述嵌入式Linux是指运行在嵌入式设备上的Linux操作系统。它为嵌入式系统带来了强大的处理能力和丰富的软件生态系统。常见的嵌入式
- 嵌入式 Linux 主控芯片选择
前进的程序员
嵌入式Linux开发linux运维处理器主控芯片
在嵌入式Linux系统开发中,选择合适的主控芯片至关重要。当需要ARM9以上的处理器时,市场上有众多品牌可供选择,这些品牌的处理器在性能、功耗、功能特性等方面各有千秋,能够满足不同应用场景的需求。以下为您详细介绍一些常见的品牌及其相关处理器。恩智浦(NXP)恩智浦在嵌入式处理器领域久负盛名。其i.MX系列应用处理器表现卓越。以i.MX6系列为例,该系列包含基于Cortex-A9、Cortex-A9
- 嵌入式linux和图像处理,基于嵌入式Linux系统的图像处理研究
weixin_39812186
嵌入式linux和图像处理
摘要:嵌入式图像处理系统的完成将为图像处理开辟新的实现途径,并且为嵌入式系统的应用打开一片新的领域。基于嵌入式平台的图像处理系统是未来图像处理系统的发展趋势,研究如何将嵌入式平台和图像处理结合起来,对于进一步拓展图像处理应用领域摘要:嵌入式图像处理系统的完成将为图像处理开辟新的实现途径,并且为嵌入式系统的应用打开一片新的领域。基于嵌入式平台的图像处理系统是未来图像处理系统的发展趋势,研究如何将嵌入
- 【开源推荐】嵌入式软件开发学习路线全景图:从裸机到 RTOS,再到嵌入式 Linux(附涵超全电子书资源以及面经资料)
Natsume1710
开源学习linux
本文将系统介绍一个适合初学者&进阶者的嵌入式开发学习开源项目,涵盖C语言、驱动开发、RTOS、嵌入式Linux、物联网通信等核心内容,特别适合电赛、毕设、面试准备和入行工程师使用。一、为什么推荐这个项目?嵌入式学习门槛高、知识零散,这是大多数学习者面临的第一大难题。GitHub项目0voice/EmbeddedSoftwareLearn是由国内技术社区整理并维护的开源仓库,它将整个嵌入式学习路径从
- 嵌入式Linux搭建物联网网关,基于嵌入式Linux的物联网网关研究与实现
Jusper Lee
嵌入式Linux搭建物联网网关
摘要:随着物联网发展速度日益加快,作为连接感知网络和传统通信网络的物联网网关正在其中扮演着重要角色。然而,目前针对物联网网关的统一标准尚未制定,物联网网关的设备类型千差万别。人们往往针对某一具体应用场景来研发特定物联网网关设备,一旦应用场景发生变化,从上层应用协议到下层接口模块都需要重新开发,大大增加工程成本,严重阻碍物联网的发展。本文基于上述问题,同时结合嵌入式系统技术,设计并实现了一种基于嵌入
- 【性能优化硬核实战】一行代码让你的嵌入式系统提速数十倍:从缓存友好访问到极致初始化的全流程揭秘
嵌入式Jerry
Linux+内核性能优化缓存linux面试算法数据库
【《Yocto项目实战教程:高效定制嵌入式Linux系统》京东618正版促销,46元支持作者,点击抢购>>【性能优化硬核实战】一行代码让你的嵌入式系统提速数十倍:从缓存友好访问到极致初始化的全流程揭秘作者:嵌入式Jerry原创首发CSDN,转载请注明出处关键词:Cache、缓存未命中、内存优化、嵌入式、性能分析、valgrind、perf、DMA、显示刷新一、前言:为什么要关心“访问顺序”?在嵌入
- 解锁嵌入式Linux开发:从入门到精通的通关秘籍
前进的程序员
职场心得linux运维服务器
一、引言在科技飞速发展的今天,嵌入式Linux开发已成为众多领域的核心技术,深刻影响着我们的日常生活。从智能家居中的智能音箱、智能摄像头,到工业自动化中的机器人、数控机床,再到智能交通中的车载导航、自动驾驶系统,嵌入式设备无处不在,而嵌入式Linux作为这些设备的关键支撑技术,正发挥着越来越重要的作用。想象一下,当你清晨醒来,通过智能音箱播放喜欢的音乐,用手机远程控制智能窗帘缓缓拉开,让阳光洒进房
- ARM9嵌入式Linux中UART技术深入解析与应用
亿风行
本文还有配套的精品资源,点击获取简介:ARM9处理器广泛应用于嵌入式系统开发中,与Linux操作系统结合提供丰富的软件支持。UART作为重要的通信接口,在ARM9嵌入式Linux系统中用于实现数据传输。本文深入探讨了UART的技术细节,包括其在ARM9处理器上的集成、配置,以及在实际编程和调试中的应用。1.ARM9处理器在嵌入式系统中的应用嵌入式系统作为现代科技的核心组成部分,其性能和功能的实现往
- 嵌入式linux项目开发流程
星寂樱易李
技术问答linux运维服务器
嵌入式Linux项目开发流程是一个系统化的过程,涵盖了从需求分析到产品发布的各个阶段。以下是一个典型的嵌入式Linux项目开发流程,包括各个阶段的关键任务和目标:1.需求分析目标:明确项目需求,确定功能和性能指标。任务:与客户和相关利益相关者沟通,收集需求。编写需求规格说明书,详细描述功能需求、性能需求、接口需求等。进行需求评审,确保需求的完整性和可行性。2.系统设计目标:设计系统的整体架构,确定
- 嵌入式linux系统中守护进程实现
嵌入式开发星球
javalinux开发语言
一、进程组与会话1.进程组进程组,也叫做作业。BSD于1980年前后向Unix中增加的一个新特性,代表一个或者多个进程的集合,每个进程都属于一个进程组。操作系统设计进程组的概念主要就是为了简化对多个进程的管理。当父进程创建子进程的时候,默认父进程和子进程同属于同一个进程组,进程组的ID等于第一个进程的ID,也就是组长进程的ID。我们在使用kill杀死进程的时候,可以通过kill-SIGKILL-进
- qt添加鸿蒙设备,使用 CMake 将 Qt 项目部署到嵌入式设备
牟云峰
qt添加鸿蒙设备
运行Qt项目时,QtCreator首先通过ssh将项目部署到远程嵌入式Linux设备上,然后在远程设备上运行可执行文件。这个特性几乎可以即时反馈Qt应用程序如何在嵌入式设备上工作。部署工作可以很好地使用qmake的INSTALLS变量来实现。不过CMake不具备类似qmake的INSTALLS变量的功能。幸运的是,Qt提供了一个解决方案。下面将通过一个示例CMakeLists.txt文件来演示这个
- Linux系统移植——系统移植初步介绍
物联网设计-妄北y
深耕Linux系统下的应用开发linux运维服务器嵌入式嵌入式硬件
目录:目录目录:一、嵌入式Linux系统软件组成及分布1.1内核(Kernel)1.2根文件系统(RootFilesystem)1.3系统库(Libraries)1.4应用程序(Applications)1.5驱动程序(Drivers)1.6启动程序(Bootloader)1.7配置文件(ConfigurationFiles)1.8中间件(Middleware)1.9开发工具(Developmen
- 嵌入式linux线程栈空间,堆、栈及静态数据区详解
weixin_39611937
嵌入式linux线程栈空间
内存分为代码区、全局数据区、堆区和栈区。堆一般存放动态数据,栈里一般存放局部成员。关于堆栈和堆的概念[问题]C++中创建本地(或者说局域)变量是在堆栈(stack)中分配内存地址,而创建全局变量则是在堆(heap)中分配内存地址。我想知道什么是堆(heap)?为什么全局变量和本地变量在分配内存地址时要分别对待,堆和堆栈哪一个更有效率?[回答]在Window中执行的每一个应用程序都有其自己的内存地址
- 嵌入式linux编程学习笔记
游园子
嵌入式软件linux
**Ubuntu系统基础**1.系统更新sudoapt-getupdatesudoapt-getupgrade2.跨版本升级sudoaptinstallupdate-manager-coresudodo-release-upgrade-mdesktop-d3.文件操作tar-vcjfrootfs.tar.bz2*tar-vcjftest.tar.bz2testtar-vczftest.tar.gz
- 嵌入式Linux系统中的启动分区架构
硬核科技
软件开发linux架构运维stm32单片机软件
在嵌入式Linux系统架构中,Linux内核、设备树(DeviceTree)与引导配置文件构成了系统启动的基础核心。如何安全、高效地管理这些关键文件,直接影响到系统的稳定性与可维护性。近年来,越来越多的嵌入式Linux开发者选择将启动相关文件从传统的“混合存放”方式,转向采用独立/boot分区的架构设计。这一趋势不仅反映了系统架构理念的演进,更是对实际应用场景中可靠性、安全性与维护性的深刻回应。一
- ARM Linux 移植 tslib
LNN2022
嵌入式学习arm开发linux驱动开发qt
一、移植背景及意义随着嵌入式技术的快速发展,越来越多的ARM架构设备需要支持触摸屏操作。tslib是一款轻量级的触摸屏校准和数据处理库,广泛应用于嵌入式Linux系统中。通过移植tslib,可以为嵌入式设备提供稳定、准确的触摸屏支持,提升用户交互体验。二、移植准备开发环境搭建:在PC主机上安装Ubuntu系统,并配置好ARMLinux交叉编译环境,安装交叉编译工具链(如arm-himix200-l
- 嵌入式Linux开发10——RTC时钟
贾贾乾杯
Linux驱动开发嵌入式linuxI.MX6ULLCRTC
背景知识 如果学习过STM32的话应该知道,STM32内部有一个RTC外设模块,这个模块需要一个32.768KHz的晶振,对这个RTC模块进行初始化就可以得到一个实时时钟。I.MX6U内部也有个RTC模块,但是不叫作“RTC”,而是叫做“SNVS”。 SNVS直译过来就是安全的非易性存储,SNVS里面主要是一些低功耗的外设,包括一个安全的实时计数器(RTC)、一个单调计数器(monotonic
- pkg-config的功能与作用说明
froxy
工具服务器linux
一、pkg-config的核心作用统一编译/链接参数通过读取.pc文件自动获取第三方库的元信息,包括头文件路径(-I)、库文件路径(-L)、库名称(-l)及版本等,解决不同系统或安装路径导致的编译参数不一致问题。依赖版本管理检查库的版本兼容性(如>=1.1.0),确保编译时链接到正确版本的库,避免因版本冲突导致的运行时错误。嵌入式开发关键角色在嵌入式Linux中,通过设置PKG_CONFIG_PA
- Linux学习笔记——文件系统基础与根文件系统详解
tt555555555555
学习笔记嵌入式Linuxlinux学习笔记
文件系统基础与根文件系统详解什么是文件系统?什么是根文件系统(RootFileSystem)?一句话理解:更详细地说:根文件系统为什么重要?1.启动依赖2.提供根目录`/`3.支持挂载其他文件系统4.提供运行环境嵌入式Linux中,根文件系统的作用更突出根文件系统的组成结构可执行映像文件的结构什么是可执行映像文件?可执行文件的组成部分1.代码段(.text)2.数据段(.data)3.BSS段(.
- Linux 的OTA升级学习1:Linux OTA升级方案_SWupdate
NULL指向我
OTA升级技术linux学习运维
嵌入式Linux系统通常基于Linux内核进行定制和优化,包括引导程序(Bootloader)、内核、文件系统和应用程序等多个层次。这种分层架构使得OTA升级需要同时考虑多个组件的更新和兼容性。LinuxOTA升级方案:核心组件:SWUpdate+U-Boot引导程序+升级包生成工具+固件镜像+lua脚本语言+存储分区+校验机制+远程下载+协议一、核心组件1.SWUpdate工具链功能:负责升级包
- 安装数据库首次应用
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 {