- 基于STM32的简易RTOS分析-预备知识
騏威
嵌入式
写下这篇文章的主要目的是对自己学习RTOS的历程做一个记录和总结,方便以后回忆翻看。以下内容主要来自宋岩先生翻译的《Cortex-M3权威指南》。目录一、Cortex-M3寄存器简介二、堆栈操作简介三、汇编指令简介LDR和STR指令STMDB和LDMIA指令B、BX、BL、BLX指令MRS和MSR指令四、中断简介中断响应过程简介SVC和PensSV中断简介软件中断五、汇编基础一、Cortex-M3
- Cortex-M3/M4——指令集(一)
akari水无灯里
cortexM3/M4单片机
简介所有的ARMCortex-M都是基于Thumb-2技术(允许混合使用16位和32位指令)。早期的ARM处理器是支持ARM的32位指令集,功能强大,但是随着移动电话等应用不断发展,功耗和成本变得十分关键,因此16位指令集Thumb也应运而生。1995年ARM发布了ARM7TDMI处理器,可以在ARM和Thumb状态之间进行切换,与等价的ARM代码相比,减小了代码密度。然而Thumb仍然有一些局限
- Cortex-M3基础
guanjianhe
stm32Cortex-M3stm32f1
Cortex-M3有15个通用寄存器R0-R15,其中R0-R7所有指令都能访问它们。R8-R12这5个寄存器32位的所有指令都能访问,16位指令只有少部分能访问。R13是堆栈指针,又可分为两种:MSP(主堆栈指针)和PSP(进程堆栈指针)。R14是连接寄存器,用于在调用子程序时存储返回地址。R15时程序计数器。控制寄存器(CONTROL)是Cortex-M3内核的特殊功能寄存器之一。bit3-b
- Cortex-M3(2) 汇编启动文件分析
keven-wang
Cortex-M3Cortex-M3启动文件STM32F429汇编
1、汇编文件理解与分析参考:https://blog.csdn.net/cacti_one/article/details/72811281由于启动代码是用汇编语言写的,并且启动代码中有大量的伪指令(Directives),所以,在正式介绍启动代码前,先来介绍下相关的伪指令。一、伪指令(Directives)由于MDK中的汇编器(汇编编译器)用的是ARM的汇编器,所以可以从ARM官网下载汇编器的用
- 中断与DMA
贾明恣
STM32嵌入式
中断Cortex-M3256个优先级和128个抢占级悬起pending中断中断的类型中断结构DMA通道映射源传输和目标传输寄存器中断状态寄存器和中断标志清除寄存器通道x配置DMAstreamxconfigurationregister(DMA_SxCR)(x=0..7)Cortex-M3《ARMCortex-M3权威指南》中定义:编号为1-15的对应系统异常,大于等于16的则全是外部中断。除了个别
- Cortex-M3寄存器组、汇编语言与C语言的接口介绍
Chenxr32
MCUc语言linuxc++
学uCOS的任务切换时涉及到汇编代码。为了能理解汇编代码,我在网上了解了Cortex-M3寄存器组、C与汇编的接口的知识,在这里分享给大家。先来介绍Cortex-M3寄存器组:Cortex-M3拥有16个通用寄存器R0-R15。R0-R12都是32位通用寄存器,用于数据操作。R13是堆栈指针。在CM3处理器内核中共有两个堆栈指针,于是也就支持两个堆栈。当引用R13(SP)时,你引用到的是当前正在使
- stm32的SysTick外设介绍——学习笔记
Linux嵌入式木子
学习笔记stm32学习笔记
简介:SysTick即系统定时器是一个内核外设,而不是片上外设,寄存器手册说明需要查看《Cortex-M3编程手册》,具体是哪一款内核就查哪一款内核的手册,我用的stm32f103所以我查的Cortex-M3。其实就是个24位递减计数器,计一个数时间是1/SYSCLK,stm32f103里面SYSCLK=72MHZ,所以其计数周期是1/72*10^6s=1/72us。(1s=10^6us),当从初
- 基于STM32通过RTC唤醒低功耗模式
丨东隅已逝丨
STM32相关stm32单片机arm
一、低功耗模式1.简介通俗的来讲低功耗模式就是降低单片机的运行功耗STM32F10xxx有三种低功耗模式:(1)睡眠模式(Cortex™-M3内核停止,所有外设包括Cortex-M3核心的外设,如NVIC、系统时钟(SysTick)等仍在运行)(2)停止模式(所有的时钟都已停止)(3)待机模式(1.8V电源关闭)此外,在运行模式下,可以通过以下方式中的一种降低功耗:(1)降低系统时钟(2)关闭AP
- STM32常见面试题
Kashine
#通讯协议stm32嵌入式硬件单片机
一、STM32F1和F4的区别?内核不同:F1是Cortex-M3内核,F4是Cortex-M4内核;主频不同:F1主频72MHz,F4主频168MHz;浮点运算:F1无浮点运算单位,F4有;功能性能:F4外设比F1丰富且功能更强大,比如GPIO翻转速率、上下拉电阻配置、ADC精度等;内存大小:F1内部SRAM最大64K,F4有192K(112+64+16)。二、介绍一下GPIO模式1.GPIO_
- STM32学习笔记--寄存器映射和存储器映射
qq_55191714
stm32单片机arm
系列文章目录第一章:stm32f1系列内部介绍一、stm32内部框图是什么?我们对这个系统框图做一个简要说明左上角部分是Cortex-M3的内核,内核引出了3条总线,分别是ICode指令总线DCode数据总线System系统总线,这三根总线又和总线矩阵与之相连接起来。ICode总线即指令总线,它主要用于连接到FLASH接口访问FLASH闪存,我们所写的程序就存储在flash闪存内(程序在flash
- STM32F1 - 概述STM32F103ZET6
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
STM32F103ZET61>长啥样?2>引脚图3>内部框图4>硬件资源5>命名规范6>Cortex-M3内部结构N>资料链接1>长啥样?内部功能模块:2>引脚图3>内部框图5大系统:1>CPU:Cortex-M3;2>系统时钟;3>总线系统:AHB,APB1,APB2;4>存储器:Flash(512KB);SRAM(64KB);5>外设:GPIO,TIM,UART,SPI,I2C,CAN,USB
- cortex-m3/m0汇编启动代码分析
catshit322
gcccortex汇编代码分析编译器chpuser
来自toney2010启动代码文件名是STM32F10X.S,它的作用先总结下,然后再分析。启动代码作用一般是:1)堆和栈的初始化;2)向量表定义;3)地址重映射及中断向量表的转移;4)设置系统时钟频率;5)中断寄存器的初始化;6)进入C应用程序。(1)按启动代码的次序,先看堆和栈的初始化:Stack_SizeEQU0x00000200;定义Stack_Size为0x00000200AREASTA
- STM32通用定时器
青铜皇弟
STM32学习笔记stm32单片机
STM32通用定时器一、通用定时器简介(一)通用定时器TIM2~TIM5的特性(二)计数器模式(三)通用计时器框图1.时钟源2.CK_PSC时钟和CK_CNT时钟3.时基单元4.输入捕获5.输出比较一、通用定时器简介对于Cortex-M3内核的STM32F1系列通常有8个16位定时器、0个32位定时器;而Cortex-M4内核的STM32F4系列通常拥有12个16位定时器;2个32位定时器。在此,
- STM32学习笔记1(初识STM32)
Gratified_
stm32
一、命名方法图1STM32F103ZET6命名解释二、芯片架构图2STM32芯片架构简图STM32F103采用的是Cortex-M3内核,内核即CPU,由ARM公司设计。ARM公司并不生产芯片,而是出售其芯片技术授权。芯片生产厂商(SOC)如ST、TI、Freescale,负责在内核之外设计部件并生产整个芯片,这些内核之外的部件被称为核外外设或片上外设。如GPIO、USART(串口)、I2C、SP
- ARM Cortex-M0内核动态切换中断优先级
Lxwang233
ARMCortex-M0STM32F0中断优先级
ARMCortex-M0内核动态切换中断优先级STM32F0使用整个字传输时,可以动态切换中断优先级。ARMCortex-M0权威指南第9章节,9.4中断优先级部分描述如下:中断优先级寄存器的编程应该在中断使能之前,其通常是在程序开始时完成的。应该避免在中断使能之后改变中断优先级,因为这种情况的结果在ARMv6-M系统结构是不可预知的,并且不被Cortex-M0处理器支持。Cortex-M3/M4
- Cortex-M3与M4权威指南
饼干饼干圆又圆
stm32stm32嵌入式硬件单片机学习系统架构
处理器类型所有的ARMCortex-M处理器是32位的精简指令集处理器。它们有:32位寄存器32位内部数据路径32位总线接口除了32位数据,Cortex-M处理器也可以有效地处理器8位和16位数据以及支持许多涉及64位数据的操作(例如,乘法、累加)。Cortex-M3和Cortex-M4处理器都有一个三阶段的流水线设计(指令获取、解码和执行),都有一个哈佛总线架构,允许同时获取指令和数据访问。AR
- Cortex-M3与M4权威指南
饼干饼干圆又圆
stm32stm32学习嵌入式硬件系统架构单片机
前言嵌入式市场正在发生一场大革命:现在大多数新的微控制器都基于ARM架构,特别是流行的Cortex-M3和Cortex-M4处理器。许多设备都将基于Cortex-M3和Cortex-M4微控制器,可能只使用一个小电池甚至能量收集作为电源。今天使用基于ARMCortex-M3和Cortex-M4处理器的设备是很简单的,因为有大量的开发工具、调试实用程序和许多示例项目可用。然而,编写高效的应用程序可能
- RTOS系列文章(2):PendSV功能,为什么需要PendSV
猪哥-嵌入式
RTOS操作系统嵌入式单片机嵌入式硬件
背景大多数嵌入式RTOS在Cortex-M3/M4上的移植都需要PendSV,比如uCOS、RT-Thread、FreeRTOS等,本文就对PendSV的功能作用,以及为什么需要PendSV进行详细的分析。PendSV是什么?我们先引用《Cortex-M3权威指南》对PendSV的介绍:PendSV(可悬起的系统调用),它是一种CPU系统级别的异常,它可以像普通外设中断一样被悬起,而不会像SVC服
- HAL库配置FreeRTOS
m0_61973119
STM32HAL库stm32操作系统
1、CMSIS_V1和CMSIS_V2版本主要的区别在于,CMSIS_V2兼容支持的硬件更多,内存耗费更多;对于常见的Cortex-M3、M4、M7芯片,选择V1即可。2、创建任务TaskandQuenes:任务与队列的创建。TimersandSemaphores:定时器和信号量的创建。Mutexes:互斥量的创建。FreeRTOSHeapUsage:用于查看堆使用情况。configparamet
- 物联网中最简单的Wifi模组
码龙一号
物联网设备接入手机常用方法是Wifi/BT和NFC,这里介绍一款极简单实用的Wifi模块接入。EEL-WifiM600,非常方便的通过手机配置,就可以接入您的物联网系统,而无需嵌入式的开发经验,感兴趣的朋友敬请持续关注我的物联网系列应用文章。模块的引脚图如下:这个Wifi模块的主芯片Cortex-M3内核,288K的SRAM,有最大2M的Flash空间,是一款性价比不错的Wifi芯片。只要提供VC
- STM32F103C8T6核心板
打气排的程序员
STM32单片机嵌入式STM32F103C8T6
目录一、简介二、最小系统板三.系统结构四、命名规则五、引脚排布、引脚复用六、程序下载第一步安装编译软件:第二部新建工程的步骤:第三步ST-LINK下载程序:七、小结一、简介STM32F103C8T6是一款由意法半导体公司(ST)推出的基于Cortex-M3内核的32位微控制器,硬件采用LQFP48封装,属于ST公司微控制器中的STM32系列。除了被我们熟知的STM32,ST公司还有SPC5X系列、
- keil出现 Error - Flash Download failed - “Cortex-M3”解决办法
Y472277609
日常笔记stm32单片机
调试国产MCU时,仿真时出现Error-FlashDownloadfailed-“Cortex-M3”,无法进行仿真,但是,点开Target,Jlink是找的到硬件的。使用J-Flash可以正常连接断开MCU,可见硬件是正常的第一次仿真成功后,后来试了几次都报错。后来干脆整片擦除Flash,再次仿真可以了。然后发现是Flash的算法选错了。芯片是128K,选的512K的Flash,修改后可以正常下
- stm32启动过程、cortex-m3架构、堆栈代码位置、编译汇编链接分析
GK小卜
stm32Cstm32c语言架构
分析一、寄存器、架构、工作流程1、寄存器架构二、总线与各个部件之间的关系(主要是I-CodeBus、D-CodeBus、SystemBus)体系结构:哈佛结构与冯诺依曼结构的区别复位有三种启动方式,从哪里开始启动、启动代码的所在的位置三、从存储器映射来看stm32架构(内存与外设)四、从CM3内核架构来看CPU流水线--分析Cortex-M3内核架构五、stm32(ARMCPU)与x86CPU架构
- STM 32 芯片选型与挂载
一周又七天
嵌入式STM32stm32mcu芯片gpio
stm32芯片的选型,分类,挂载及GPIO口的分析(本文章程序均为样例,仅限于理解,如有错误还望指正)1.嵌入式芯片的选型STM32-F1系列:基础型,主频为72M(内核为cortex-M3),CPU位数=32。我们所用的芯片是STM32F103vet6STM32:表示产品的类型,以STM32F103VET6为例F:表示通用系列的子系列103:代表增强型系列V:代表的引脚数100引脚E:代表内嵌f
- stm32内存分配博客笔记
hugo33
stm32笔记嵌入式硬件
原文:stm32内存分配笔记:1、向量表与代码段;根据Cortex-M3权威指南描述,系统复位后,在向量表异常0处保存的是堆栈起始地址,而后紧跟中断向量表2、可以从链接脚本.ld文件中看到终端向量表第一个被链接进FLASH里,其后紧跟代码段.text;3、FLASH和RAM的内存分配4、在STM32中堆和栈没有明显的界限,他们共用._user_heap_stack段起始地址到RAM最大地址这个范围
- 国产智多晶FPGA 带Cortex-M3硬核CPU的FPGA器件简介
小梅哥爱漂流
国产智多晶FPGA智多晶FPGA小梅哥国产fpgaCortex-M3
大家好,我是小梅哥,这里给大家介绍国产FPGA厂家“西安智多晶”微电子带Cortex-M3硬核CPU的FPGA芯片的相关资源。本博客将陆续发表更多国产FPGA的开发和使用方法。正文开始FPGA芯片厂家:西安智多晶(www.isilicontech.com)--FPGA开发软件:HqFpga(北京飘石科技有限公司),免安装,无需LicenseFPGA芯片型号:SA5Z-30D1-8U213CFPGA
- Cortex-M3/M4内核中断及HAL库函数详解(1):中断相关寄存器
时光飞逝的日子
ARM内核单片机开发stm32ARM中断HAL库
0工具准备KeiluVision5CortexM3权威指南(中文)CortexM3与M4权威指南stm32f407的HAL库工程STM32F4xx中文参考手册1NVIC相关寄存器介绍在Cortex-M3/M4内核上搭载了一个异常响应系统,支持为数众多的系统异常和外部中断。其中,Cortex-M3/M4内核包括15个系统异常,大部分系统异常的中断优先级都可以设置。外部中断由厂商定义,以stm32f4
- Cortex-M3/M4内核NVIC及HAL库函数详解(5):__disable_irq和HAL_NVIC_DisableIRQ、__enable_irq和HAL_NVIC_EnableIRQ的区别
时光飞逝的日子
单片机开发ARM内核stm32ARM中断HAL库
0工具准备KeiluVision5CortexM3权威指南(中文)CortexM3与M4权威指南stm32f407的HAL库工程STM32F4xx中文参考手册1__disable_irq和HAL_NVIC_DisableIRQ、__enable_irq和HAL_NVIC_EnableIRQ的区别1.1函数分析我们在执行某些语句时不希望被中断打断,往往会使用__disable_irq失能全局中断,在
- Cortex-M3/M4内核NVIC及HAL库函数详解(4):使用HAL库配置外部中断
时光飞逝的日子
单片机开发ARM内核stm32ARM中断HAL库
0工具准备KeiluVision5CortexM3权威指南(中文)CortexM3与M4权威指南stm32f407的HAL库工程STM32F4xx中文参考手册1使用HAL库配置外部中断前面我们已经熟悉了有关内核部分的寄存器配置,接下来我们结合stm32f407的GPIO外设,从实战角度进一步加深对这些寄存器的认识。1.1原理图分析我们这里使用PA0作为输入引脚,可以看到SW1未按下时为低电平,按下
- Cortex-M3/M4内核NVIC及HAL库函数详解(3):HAL库中断应用层函数实现
时光飞逝的日子
单片机开发ARM内核stm32ARM中断HAL库
0工具准备KeiluVision5CortexM3权威指南(中文)CortexM3与M4权威指南stm32f407的HAL库工程STM32F4xx中文参考手册1HAL库中断应用层函数实现在完成了HAL库中断底层函数后,应用层的封装可以做得千变万化。打开Librarier->STM32F4xx_HAL_Driver->Inc->stm32f4xx_hal_cortex.h,可以看到有关中断的应用层函
- 设计模式介绍
tntxia
设计模式
设计模式来源于土木工程师 克里斯托弗 亚历山大(http://en.wikipedia.org/wiki/Christopher_Alexander)的早期作品。他经常发表一些作品,内容是总结他在解决设计问题方面的经验,以及这些知识与城市和建筑模式之间有何关联。有一天,亚历山大突然发现,重复使用这些模式可以让某些设计构造取得我们期望的最佳效果。
亚历山大与萨拉-石川佳纯和穆雷 西乐弗斯坦合作
- android高级组件使用(一)
百合不是茶
androidRatingBarSpinner
1、自动完成文本框(AutoCompleteTextView)
AutoCompleteTextView从EditText派生出来,实际上也是一个文本编辑框,但它比普通编辑框多一个功能:当用户输入一个字符后,自动完成文本框会显示一个下拉菜单,供用户从中选择,当用户选择某个菜单项之后,AutoCompleteTextView按用户选择自动填写该文本框。
使用AutoCompleteTex
- [网络与通讯]路由器市场大有潜力可挖掘
comsci
网络
如果国内的电子厂商和计算机设备厂商觉得手机市场已经有点饱和了,那么可以考虑一下交换机和路由器市场的进入问题.....
这方面的技术和知识,目前处在一个开放型的状态,有利于各类小型电子企业进入
&nbs
- 自写简单Redis内存统计shell
商人shang
Linux shell统计Redis内存
#!/bin/bash
address="192.168.150.128:6666,192.168.150.128:6666"
hosts=(${address//,/ })
sfile="staticts.log"
for hostitem in ${hosts[@]}
do
ipport=(${hostitem
- 单例模式(饿汉 vs懒汉)
oloz
单例模式
package 单例模式;
/*
* 应用场景:保证在整个应用之中某个对象的实例只有一个
* 单例模式种的《 懒汉模式》
* */
public class Singleton {
//01 将构造方法私有化,外界就无法用new Singleton()的方式获得实例
private Singleton(){};
//02 申明类得唯一实例
priva
- springMvc json支持
杨白白
json springmvc
1.Spring mvc处理json需要使用jackson的类库,因此需要先引入jackson包
2在spring mvc中解析输入为json格式的数据:使用@RequestBody来设置输入
@RequestMapping("helloJson")
public @ResponseBody
JsonTest helloJson() {
- android播放,掃描添加本地音頻文件
小桔子
最近幾乎沒有什麽事情,繼續鼓搗我的小東西。想在項目中加入一個簡易的音樂播放器功能,就像華為p6桌面上那麼大小的音樂播放器。用過天天動聽或者QQ音樂播放器的人都知道,可已通過本地掃描添加歌曲。不知道他們是怎麼實現的,我覺得應該掃描設備上的所有文件,過濾出音頻文件,每個文件實例化為一個實體,記錄文件名、路徑、歌手、類型、大小等信息。具體算法思想,
- oracle常用命令
aichenglong
oracledba常用命令
1 创建临时表空间
create temporary tablespace user_temp
tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local
- 25个Eclipse插件
AILIKES
eclipse插件
提高代码质量的插件1. FindBugsFindBugs可以帮你找到Java代码中的bug,它使用Lesser GNU Public License的自由软件许可。2. CheckstyleCheckstyle插件可以集成到Eclipse IDE中去,能确保Java代码遵循标准代码样式。3. ECLemmaECLemma是一款拥有Eclipse Public License许可的免费工具,它提供了
- Spring MVC拦截器+注解方式实现防止表单重复提交
baalwolf
spring mvc
原理:在新建页面中Session保存token随机码,当保存时验证,通过后删除,当再次点击保存时由于服务器端的Session中已经不存在了,所有无法验证通过。
1.新建注解:
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
- 《Javascript高级程序设计(第3版)》闭包理解
bijian1013
JavaScript
“闭包是指有权访问另一个函数作用域中的变量的函数。”--《Javascript高级程序设计(第3版)》
看以下代码:
<script type="text/javascript">
function outer() {
var i = 10;
return f
- AngularJS Module类的方法
bijian1013
JavaScriptAngularJSModule
AngularJS中的Module类负责定义应用如何启动,它还可以通过声明的方式定义应用中的各个片段。我们来看看它是如何实现这些功能的。
一.Main方法在哪里
如果你是从Java或者Python编程语言转过来的,那么你可能很想知道AngularJS里面的main方法在哪里?这个把所
- [Maven学习笔记七]Maven插件和目标
bit1129
maven插件
插件(plugin)和目标(goal)
Maven,就其本质而言,是一个插件执行框架,Maven的每个目标的执行逻辑都是由插件来完成的,一个插件可以有1个或者几个目标,比如maven-compiler-plugin插件包含compile和testCompile,即maven-compiler-plugin提供了源代码编译和测试源代码编译的两个目标
使用插件和目标使得我们可以干预
- 【Hadoop八】Yarn的资源调度策略
bit1129
hadoop
1. Hadoop的三种调度策略
Hadoop提供了3中作业调用的策略,
FIFO Scheduler
Fair Scheduler
Capacity Scheduler
以上三种调度算法,在Hadoop MR1中就引入了,在Yarn中对它们进行了改进和完善.Fair和Capacity Scheduler用于多用户共享的资源调度
2. 多用户资源共享的调度
- Nginx使用Linux内存加速静态文件访问
ronin47
Nginx是一个非常出色的静态资源web服务器。如果你嫌它还不够快,可以把放在磁盘中的文件,映射到内存中,减少高并发下的磁盘IO。
先做几个假设。nginx.conf中所配置站点的路径是/home/wwwroot/res,站点所对应文件原始存储路径:/opt/web/res
shell脚本非常简单,思路就是拷贝资源文件到内存中,然后在把网站的静态文件链接指向到内存中即可。具体如下:
- 关于Unity3D中的Shader的知识
brotherlamp
unityunity资料unity教程unity视频unity自学
首先先解释下Unity3D的Shader,Unity里面的Shaders是使用一种叫ShaderLab的语言编写的,它同微软的FX文件或者NVIDIA的CgFX有些类似。传统意义上的vertex shader和pixel shader还是使用标准的Cg/HLSL 编程语言编写的。因此Unity文档里面的Shader,都是指用ShaderLab编写的代码,然后我们来看下Unity3D自带的60多个S
- CopyOnWriteArrayList vs ArrayList
bylijinnan
java
package com.ljn.base;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
/**
* 总述:
* 1.ArrayListi不是线程安全的,CopyO
- 内存中栈和堆的区别
chicony
内存
1、内存分配方面:
堆:一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式是类似于链表。可能用到的关键字如下:new、malloc、delete、free等等。
栈:由编译器(Compiler)自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中
- 回答一位网友对Scala的提问
chenchao051
scalamap
本来准备在私信里直接回复了,但是发现不太方便,就简要回答在这里。 问题 写道 对于scala的简洁十分佩服,但又觉得比较晦涩,例如一例,Map("a" -> List(11,111)).flatMap(_._2),可否说下最后那个函数做了什么,真正在开发的时候也会如此简洁?谢谢
先回答一点,在实际使用中,Scala毫无疑问就是这么简单。
- mysql 取每组前几条记录
daizj
mysql分组最大值最小值每组三条记录
一、对分组的记录取前N条记录:例如:取每组的前3条最大的记录 1.用子查询: SELECT * FROM tableName a WHERE 3> (SELECT COUNT(*) FROM tableName b WHERE b.id=a.id AND b.cnt>a. cnt) ORDER BY a.id,a.account DE
- HTTP深入浅出 http请求
dcj3sjt126com
http
HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则。计算机专家设计出HTTP,使HTTP客户(如Web浏览器)能够从HTTP服务器(Web服务器)请求信息和服务,HTTP目前协议的版本是1.1.HTTP是一种无状态的协议,无状态是指Web浏览器和Web服务器之间不需要建立持久的连接,这意味着当一个客户端向服务器端发出请求,然后We
- 判断MySQL记录是否存在方法比较
dcj3sjt126com
mysql
把数据写入到数据库的时,常常会碰到先要检测要插入的记录是否存在,然后决定是否要写入。
我这里总结了判断记录是否存在的常用方法:
sql语句: select count ( * ) from tablename;
然后读取count(*)的值判断记录是否存在。对于这种方法性能上有些浪费,我们只是想判断记录记录是否存在,没有必要全部都查出来。
- 对HTML XML的一点认识
e200702084
htmlxml
感谢http://www.w3school.com.cn提供的资料
HTML 文档中的每个成分都是一个节点。
节点
根据 DOM,HTML 文档中的每个成分都是一个节点。
DOM 是这样规定的:
整个文档是一个文档节点
每个 HTML 标签是一个元素节点
包含在 HTML 元素中的文本是文本节点
每一个 HTML 属性是一个属性节点
注释属于注释节点
Node 层次
- jquery分页插件
genaiwei
jqueryWeb前端分页插件
//jquery页码控件// 创建一个闭包 (function($) { // 插件的定义 $.fn.pageTool = function(options) { var totalPa
- Mybatis与Ibatis对照入门于学习
Josh_Persistence
mybatisibatis区别联系
一、为什么使用IBatis/Mybatis
对于从事 Java EE 的开发人员来说,iBatis 是一个再熟悉不过的持久层框架了,在 Hibernate、JPA 这样的一站式对象 / 关系映射(O/R Mapping)解决方案盛行之前,iBaits 基本是持久层框架的不二选择。即使在持久层框架层出不穷的今天,iBatis 凭借着易学易用、
- C中怎样合理决定使用那种整数类型?
秋风扫落叶
c数据类型
如果需要大数值(大于32767或小于32767), 使用long 型。 否则, 如果空间很重要 (如有大数组或很多结构), 使用 short 型。 除此之外, 就使用 int 型。 如果严格定义的溢出特征很重要而负值无关紧要, 或者你希望在操作二进制位和字节时避免符号扩展的问题, 请使用对应的无符号类型。 但是, 要注意在表达式中混用有符号和无符号值的情况。
&nbs
- maven问题
zhb8015
maven问题
问题1:
Eclipse 中 新建maven项目 无法添加src/main/java 问题
eclipse创建maevn web项目,在选择maven_archetype_web原型后,默认只有src/main/resources这个Source Floder。
按照maven目录结构,添加src/main/ja
- (二)androidpn-server tomcat版源码解析之--push消息处理
spjich
javaandrodipn推送
在 (一)androidpn-server tomcat版源码解析之--项目启动这篇中,已经描述了整个推送服务器的启动过程,并且把握到了消息的入口即XmppIoHandler这个类,今天我将继续往下分析下面的核心代码,主要分为3大块,链接创建,消息的发送,链接关闭。
先贴一段XmppIoHandler的部分代码
/**
* Invoked from an I/O proc
- 用js中的formData类型解决ajax提交表单时文件不能被serialize方法序列化的问题
中华好儿孙
JavaScriptAjaxWeb上传文件FormData
var formData = new FormData($("#inputFileForm")[0]);
$.ajax({
type:'post',
url:webRoot+"/electronicContractUrl/webapp/uploadfile",
data:formData,
async: false,
ca
- mybatis常用jdbcType数据类型
ysj5125094
mybatismapperjdbcType
MyBatis 通过包含的jdbcType
类型
BIT FLOAT CHAR