- 基于STM32设计的智能马蹄锁
鱼弦
单片机系统合集stm32嵌入式硬件单片机
鱼弦:公众号【红尘灯塔】,CSDN博客专家、内容合伙人、新星导师、全栈领域优质创作者、51CTO(Top红人+专家博主)、github开源爱好者(go-zero源码二次开发、游戏后端架构https://github.com/Peakchen)基于STM32设计的智能马蹄锁介绍基于STM32设计的智能马蹄锁是一种利用STM32单片机、蓝牙模块、传感器等电子元件实现的智能马蹄锁。该智能马蹄锁具有以下特
- 项目十二:智能门禁系统
相醉为友
单片机作业windows
所需功能:硬件设置:使用51单片机连接人体红外传感器、液晶显示器(LCD)、蜂鸣器和电磁锁。人体检测:实时监测门口的人体活动。LCD显示:在LCD上显示门禁状态和欢迎词。门禁控制:通过蜂鸣器和电磁锁实现门禁控制。实现步骤:初始化设备:连接51单片机、人体红外传感器、LCD、蜂鸣器和电磁锁。设置传感器和执行器的驱动和接口。2.人体检测和数据处理:if((mode==0)&&(Series==1)){
- 基于STM32电动车防盗报警GSM定位短信无线传入报警系统
创新电子设计
单片机嵌入式硬件单片机
**单片机设计介绍,基于STM32电动车防盗报警GSM定位短信无线传入报警系统文章目录一概要二、功能设计设计思路三、软件设计原理图五、程序六、文章目录一概要 基于STM32电动车防盗报警GSM定位短信无线传入报警系统是一个集成了多种现代技术的智能防盗系统。以下是该系统的概要:一、系统概述该系统结合STM32单片机、GSM无线通信模块、GPS定位模块以及多种传感器,设计了一套能够实现电动车防盗、实
- 51单片机c语言定义寄存器r,在MCS51单片机中对特殊功能寄存器的C51定义
weixin_39985365
51单片机c语言定义寄存器r
原标题:在MCS51单片机中对特殊功能寄存器的C51定义在开始讲对C51中特殊寄存器(SPR)的定义前,先简单介绍下我们在进行51单片机开发时经常看到的两个关键字"sbit”和"sfr“:sfr用于将一个单片机的(specialfunctionregister)赋值给一个变量,这样在后面的程序中就可以中这个变量指引(referto)该寄存器sbit与sfr用法类似,只是sbit是位操作,用于将某个
- 嵌入式单片机中寄存器开发与实现
嵌入式开发星球
单片机项目实战操作之优秀单片机嵌入式硬件
第一:GPIO寄存器开发流程不管是图形界面还是函数库开发,本质都是对底层寄存器的使用,一般在实时性要求不高的情况,就使用前两种方式,但是对实时性要求比较高的情况下,就需要使用寄存器开发。所以就说明一下使用流程。分析原理图,找到外设连接的芯片的引脚PF9分析原理图,理解硬件的控制原理高电平灭低电平亮分析中文参考手册或者芯片数据手册,了解需要使用的寄存器都有哪些理解寄存器的工作原理参考中文参考手册ST
- 单片机+c语言+运算符,单片机C语言编程常用的运算符介绍
weixin_39760434
单片机+c语言+运算符
在单片机C语言编程中,通常用到30个运算符,如表1,其中算术运算符13个,关系运算符6个,逻辑运算符3个,位操作符7个,指针运算符1个。在C语言中,运算符具有优先级和结合性。算术运算符优先级规定为:先乘除模(模运算又叫求余运算),后加减,括号最优先。结合性规定为:自左至右,即运算对象两侧的算术符优先级相同时,先与左边的运算符号结合。关系运算符的优先级规定为:>、=、a>b内容来自单片机之家www.
- 51单片机寄存器B访问c语言,51单片机C语言学习 6
公子大白0m0
51单片机寄存器B访问c语言
如果省略存储器类型,系统则会按编译模式SMALL,COMPACT或LARGE所规定的默认存储器类型去指定变量的存储区域。无论什么存储模式都可以声明变量在任何的8051存储区范围,然而把最常用的命令如循环计数器和队列索引放在内部数据区可以显著的提高系统性能。还有要指出的就是变量的存储种类与存储器类型是完全无关的。SMALL存储模式把所有函数变量和局部数据段放在8051系统的内部数据存储区这使访问数据
- GPT对话代码库——esp32和单片机实现远程wifi升级代码方案。
玄奕子
嵌入式单片机gptstm32BootloaderOTA远程升级
目录1,问:1,答:方案概述ESP32实现OTA升级的代码方案步骤1:准备OTA固件步骤2:ESP32OTA升级实现代码代码说明:步骤3:设置固件服务器单片机和ESP32的通信与控制单片机通过UART控制ESP32升级单片机发送指令给ESP32ESP32处理单片机发送的指令方案总结提问模型:GPT-4o-mini提问时间:2024.09.211,问:esp32和单片机实现远程wifi升级代码方案1
- FreeRTOS Cortex-M3 核心技术
林楚然
RTOSFreeRTOSRTOSCortex-M3任务切换SVCPendSV
本文是关于FreeRTOS在Cortex-M3上的核心技术,主要涉及任务的创建、任务内存管理和任务切换,展示了系统切换到用户级运行FreeRTOS任务的过程。内存管理基于heap_2,基于DemoFreeRTOS\Demo\CORTEX_STM32F103_Keil。1.概念本文基本包含所有FreeRTOSportCortex-M3的芯片级技术,基本包含FreeRTOS\Source\portab
- 用蓝桥杯单片机实现温度界面与时钟界面转换
安知甜与乐
单片机蓝桥杯单片机职场和发展
1基本功能描述1)通过DS18B20温度传感器,采集环境温度数据,保留小数点后2位有效数字。2)读取DS1302时钟芯片的时、分、秒数据。3)通过数码管显示时间和温度数据,显示界面可以通过按键来回切换。初始化状态说明1)关闭蜂鸣器、继电器。2)数码管处于时间界面。3)实时时钟的初始化时间是00:00:00显示界面状态1)时间界面指示灯L2点亮,其余指示灯熄灭。2)温度界面指示灯L3点亮,其余指示灯
- 用蓝桥杯单片机使用串口通信发送数字与字符串和接收数据
安知甜与乐
单片机单片机蓝桥杯嵌入式硬件
目录1.发送与接收数字1.基本功能2.初始化3.电脑发送数据功能4.代码2.发送与接收字符串1.基本功能2.初始化3.电脑发送数据功能4.代码1.发送与接收数字1.基本功能1)通过串口1发送数据。2)电脑发送数字给单片机,单片机打开LED灯2.初始化1)关闭蜂鸣器、继电器。2)单片机发送内容“openled”。3)使用文本界面接收3.电脑发送数据功能1)发送1打开LED1。2)发送2打开LED2.
- FreeRTOS 任务控制块是如何保留上下文的
来点光吧
FreeRTOSSTM32CortexM3/M4stm32
任务控制块在进行创建任务时,每一个任务会分配一片空间,用来保存任务各种状态、堆栈空间地址、任务优先级、任务名字等。这个任务控制块(TCB_t)最基本的项有,volatileStackType_t*pxTopOfStack;//任务栈顶指针,这个栈是指一个任务所对应的寄存器组最后一项的指针。ListItem_txStateListItem;//任务状态列表项来表示任务所处的状态ListItem_tx
- 详解FreeRTOS:FreeRTOS程序启动流程(基础篇—5)
不脱发的程序猿
详解FreeRTOSFreeRTOS程序启动流程FreeRTOS嵌入式RTOS
裸机系统上电时第一个执行的是启动文件里由汇编编写的复位函数Reset_Handler,复位函数最后会调用C库函数__main,__main函数的主要工作是初始化系统的堆和栈,最后调用C中的main函数。如下图所示:1、创建任务在main()函数中,我们直接可以对FreeRTOS进行创建任务操作,因为FreeRTOS会自动帮我们做初始化事情,比如初始化堆内存。我们在main()函数中直接初始化板级外
- FreeRtos 文件结构
星空小蜗牛
5.freertos
最核心的三个文件1)tasks.c2)list.c3)queue.ctasks.c:任务相关list.c:为一个双向链表queue.c队列,信号量用于任务间通讯4)croutine.c类似task.c,可以进行多任务调度,另一种方式进行调试5)event_groups.c事件标志组,初级理解,对任务管理的一种补充6)time.c内部实现的一个软件定时器与平台架构相关的(直接接硬件的):portab
- STM32F103c8t6驱动DHT11温湿度在串口上打印温湿度(其它f103系列都可以用,直接移植这个库,修改下引脚就行)STM32驱动DHT11的库,可以直接移植
单片机阿伟
stm32嵌入式硬件单片机
一、前言在物联网和嵌入式系统开发中,温湿度监测是常见的基础功能需求。本文将详细介绍如何使用STM32F103c8t6单片机驱动DHT11数字温湿度传感器,并提供完整的代码解析,源码每条都进行了注释。资源链接包含了整个代码工程和DHT11的数据手册,需要自行下载二、DHT11传感器简介2.1基本特性单总线数字信号输出湿度测量范围:20-90%RH(±5%RH)温度测量范围:0-50℃(±2℃)供电电
- 初学51单片机之I2C总线与E2PROM以及UART简单实例应用
firewood2024
51单片机单片机嵌入式硬件
这是I2C的系列的第三篇,这篇主要是写一个简单的程序来实践一下相关的内容。前面博主写过一个电子密码锁的程序初学51单片机之简易电子密码锁及PWM应用扩展_51单片机设计电子密码锁-CSDN博客本篇主要是在此基础上修改下程序,让密码存储在E2PROM中,并且可以通过UART串口通信在线修改E2PROM存储的密码。简单的介绍下程序的功能:1:笔者的开发版在烧录该程序后一上电,除了数字键可以使能外其他按
- FreeRTOS
Zack Zhou
单片机stm32嵌入式硬件
RTOS(RealTimeOperatingSystem),当有外部事件发生时,能够快速响应,调度一切可利用资源,控制实时任务协调一致的运行。裸机开发:一次只能处理一个任务,无法执行并发处理;代码复杂的情况下,中断响应较快,但同时应对多个中断,不定因素较强,精度低;开发效率较差,需要考虑大量因素,代码复杂时可读性差;适用于简单,功能、资源有限的场景实时操作系统:利用时间管理和优先级调度提供多任务支
- STM32单片机学习记录(11.29)
宣宣猪的小花园.
STM32stm32无人机嵌入式硬件单片机
一、STM326.4-PWM驱动程序1.PWM基本结构:运行控制——时基单元——输出比较单元——GPIO。2.PWM程序编写步骤:(1)RCC开启时钟,将要用的TIM外设和GPIO外设的时钟打开;(2)配置时基单元(包括时钟源选择);(3)配置输出比较单元(包括CCR值、输出比较模式、极性选择、输出使能等参数);(4)配置GPIO,将其初始化为复用推挽输出配置;(5)运行控制,启动计数器。3.有关
- STM32单片机学习记录(12.27)
宣宣猪的小花园.
STM32stm32无人机嵌入式硬件单片机
一、STM328.2-DMA数据转运1.关于寄存器汇编(1)寄存器实际地址=起始地址+偏移;(2)可使用结构体访问寄存器(使用结构体依次占用地址,再用函数调取地址)。2.配置DMA:(1)定义DMA转运的源端数组(uint8_tDataA[]:0x0_;uint8_tDataB[]:全局默认为0)和目的数组;(2)初始化DMA,将DataA的数据转运到DataB;(3)配置主函数。3.初始化DMA
- STM32单片机学习记录(11.10)
宣宣猪的小花园.
STM32stm32无人机嵌入式硬件单片机
一、STM323.1-关于GPIO(GeneralPurposeInputOutput)通用输入输出口:1.整体结构:寄存器(特殊存储器,可完成输出电平与读取电平功能)+驱动器;2.输入电压超过高电平阈值,输出高电平,低于低电平阈值,输出高电平(STM32引脚定义中标明FT表示可输入高电平;位于高低电平阈值之间则输入低电平。(高电平为5V,低电平最高3.3V);3.上拉电阻:默认高电平输入模式;下
- STM32单片机学习记录(11.17)
宣宣猪的小花园.
STM32stm32无人机嵌入式硬件单片机
一、STM324.1-OLED调试工具1.常见调试方法:(1)串口调试:通过串口通信,将调试信息发送到电脑端,电脑用串口助手使用调试信息。优势:可自行显示函数、数据、图像等;弊端:需要电脑且只能以信息流的方式显示;(2)显示屏调试:直接将显示屏连接到单片机,将调试信息打印在显示屏上(屏幕太小内容有限);(3)Keil调试模式:借助Keil的调试功能,可使用单步运行、设置断点、查看寄存器及变量等功能
- STM32单片机学习记录(11.3)
宣宣猪的小花园.
STM32stm32无人机嵌入式硬件单片机
目录一、STM32二、无人机系统导论一、STM321.2-了解STM32(ARMCortex-M内核单片机)基础系统结构、启动配置、系统电路以及系统板基础模块与功能;2.1-完成Keil5的安装以及基础设置改动;2.2-完成基础硬件组装适配Keil5软件编程;了解寄存器,库函数头文件,以及Keil5中的基础工程架构;2.2-建立第一个软件工程:步骤如下1.建立工程文件夹,Keil中新建工程,选择型
- freertos中,句柄指向任务控制块,为什么句柄不能直接访问(*Task1_Handle).xStateListItem,那句柄是干嘛的?
LightningJie
freertosstm32单片机嵌入式硬件
在FreeRTOS中,句柄(Handle)通常是一个指向任务控制块(TaskControlBlock,TCB)的指针。任务控制块是FreeRTOS为每个任务维护的一个数据结构,它包含了任务的所有状态信息和控制信息,比如任务的优先级、堆栈指针、任务状态、任务名称等。关于您的问题,为什么不能直接通过解引用句柄来访问任务控制块中的某个成员(例如(*Task1_Handle).xStateListItem
- 基于单片机的智能教室灯光节能控制系统
AI大模型应用之禅
AI大模型与大数据计算科学神经计算深度学习神经网络大数据人工智能大型语言模型AIAGILLMJavaPython架构设计AgentRPA
基于单片机的智能教室灯光节能控制系统1.背景介绍随着能源短缺和环境污染问题日益严重,节能减排已经成为全球关注的热点话题。教室作为学校的主要场所,照明系统的能耗占总能耗的很大一部分。传统的教室照明系统通常采用人工手动开关控制,存在能源浪费、管理困难等问题。因此,开发一种基于单片机的智能教室灯光节能控制系统,可以有效地降低能源消耗,减少温室气体排放,同时也可以提高教学环境质量,为师生创造一个舒适的学习
- 探索未来微控制技术:CH32V003 RISC-V单片机
马冶娆
探索未来微控制技术:CH32V003RISC-V单片机去发现同类优质开源项目:https://gitcode.com/项目介绍CH32V003是一个创新性的32位通用型RISC-V单片机,由青稞(RISC-V2A)内核驱动,专为各种工业级应用而设计。这个微控制器以其高速、高效、灵活性强和低功耗的特点,为硬件开发者提供了全新的解决方案,无论是在嵌入式领域还是在物联网(IoT)项目中,都能发挥出卓越的
- 51单片机 02 独立按键
cherry_rainyyy
MCU51单片机嵌入式硬件单片机
一、独立按键控制LED亮灭轻触按键:相当于是一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开。#includevoidmain(){//P2=0xFE;while(1){if(P31==0){P20=0;}elseP20=1;}}二、独立按键控制LED状态对于机械开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个开关在闭合时不会马上
- FreeRTOS学习 --- 时间管理(相对延时和绝对延时)
end_SJ
学习
延时函数介绍相对延时:指每次延时都是从执行函数vTaskDelay()开始,直到延时指定的时间结束绝对延时:指将整个任务的运行周期看成一个整体,适用于需要按照一定频率运行的任务(1)为任务主体,也就是任务真正要做的工作(2)是任务函数中调用vTaskDelayUntil()对任务进行延时(3)为其他任务在运行
- FreeRTOS学习 --- 任务切换
end_SJ
学习
任务切换的本质:就是CPU寄存器的切换。假设当由任务A切换到任务B时,主要分为两步:第一步:需暂停任务A的执行,并将此时任务A的寄存器保存到任务堆栈,这个过程叫做保存现场;第二步:将任务B的各个寄存器值(被存于任务堆栈中)恢复到CPU寄存器中,这个过程叫做恢复现场;对任务A保存现场,对任务B恢复现场,这个整体的过程称之为:上下文切换注意:任务切换的过程在PendSV中断服务函数里边完成PendSV
- 电控---中断
kyle~
嵌入式stm32
中断1.处理器系统在执行代码的时候,会从存储器依次取出指令和数据,这种能力需要在处理器里保存一个存储器地址,就是所谓的程序计数器(ProgramCounter,PC),也叫程序指针2.当外部中断(ExternInterrupt,EXTI)事件发生的时候,单片机有一定的策略保护好当前执行的状态,将PC跳转到中断服务函数(即回调函数),然后执行相应的用户自定义编写的处理策略3.完成中断后,恢复原有执行
- 电子信息工程专业学习过程中资料分享
莲月唯翼
学习电子信息工程单片机51单片机
①:一周搞定系列之模电链接:https://pan.baidu.com/s/1FGQvXCTbYqGVnsqL7Zb_nw?pwd=8888提取码:8888②:51单片机郭天祥十天学会单片机教学视频链接:https://pan.baidu.com/s/1tym6M-I8LFZa5rtdtH94hA?pwd=8888提取码:8888③:石油大学-《模拟电路》和《数字电路》视频教程各31集链接:htt
- ios内付费
374016526
ios内付费
近年来写了很多IOS的程序,内付费也用到不少,使用IOS的内付费实现起来比较麻烦,这里我写了一个简单的内付费包,希望对大家有帮助。
具体使用如下:
这里的sender其实就是调用者,这里主要是为了回调使用。
[KuroStoreApi kuroStoreProductId:@"产品ID" storeSender:self storeFinishCallBa
- 20 款优秀的 Linux 终端仿真器
brotherlamp
linuxlinux视频linux资料linux自学linux教程
终端仿真器是一款用其它显示架构重现可视终端的计算机程序。换句话说就是终端仿真器能使哑终端看似像一台连接上了服务器的客户机。终端仿真器允许最终用户用文本用户界面和命令行来访问控制台和应用程序。(LCTT 译注:终端仿真器原意指对大型机-哑终端方式的模拟,不过在当今的 Linux 环境中,常指通过远程或本地方式连接的伪终端,俗称“终端”。)
你能从开源世界中找到大量的终端仿真器,它们
- Solr Deep Paging(solr 深分页)
eksliang
solr深分页solr分页性能问题
转载请出自出处:http://eksliang.iteye.com/blog/2148370
作者:eksliang(ickes) blg:http://eksliang.iteye.com/ 概述
长期以来,我们一直有一个深分页问题。如果直接跳到很靠后的页数,查询速度会比较慢。这是因为Solr的需要为查询从开始遍历所有数据。直到Solr的4.7这个问题一直没有一个很好的解决方案。直到solr
- 数据库面试题
18289753290
面试题 数据库
1.union ,union all
网络搜索出的最佳答案:
union和union all的区别是,union会自动压缩多个结果集合中的重复结果,而union all则将所有的结果全部显示出来,不管是不是重复。
Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
Union All:对两个结果集进行并集操作,包括重复行,不进行排序;
2.索引有哪些分类?作用是
- Android TV屏幕适配
酷的飞上天空
android
先说下现在市面上TV分辨率的大概情况
两种分辨率为主
1.720标清,分辨率为1280x720.
屏幕尺寸以32寸为主,部分电视为42寸
2.1080p全高清,分辨率为1920x1080
屏幕尺寸以42寸为主,此分辨率电视屏幕从32寸到50寸都有
适配遇到问题,已1080p尺寸为例:
分辨率固定不变,屏幕尺寸变化较大。
如:效果图尺寸为1920x1080,如果使用d
- Timer定时器与ActionListener联合应用
永夜-极光
java
功能:在控制台每秒输出一次
代码:
package Main;
import javax.swing.Timer;
import java.awt.event.*;
public class T {
private static int count = 0;
public static void main(String[] args){
- Ubuntu14.04系统Tab键不能自动补全问题解决
随便小屋
Ubuntu 14.04
Unbuntu 14.4安装之后就在终端中使用Tab键不能自动补全,解决办法如下:
1、利用vi编辑器打开/etc/bash.bashrc文件(需要root权限)
sudo vi /etc/bash.bashrc
接下来会提示输入密码
2、找到文件中的下列代码
#enable bash completion in interactive shells
#if
- 学会人际关系三招 轻松走职场
aijuans
职场
要想成功,仅有专业能力是不够的,处理好与老板、同事及下属的人际关系也是门大学问。如何才能在职场如鱼得水、游刃有余呢?在此,教您简单实用的三个窍门。
第一,多汇报
最近,管理学又提出了一个新名词“追随力”。它告诉我们,做下属最关键的就是要多请示汇报,让上司随时了解你的工作进度,有了新想法也要及时建议。不知不觉,你就有了“追随力”,上司会越来越了解和信任你。
第二,勤沟通
团队的力
- 《O2O:移动互联网时代的商业革命》读书笔记
aoyouzi
读书笔记
移动互联网的未来:碎片化内容+碎片化渠道=各式精准、互动的新型社会化营销。
O2O:Online to OffLine 线上线下活动
O2O就是在移动互联网时代,生活消费领域通过线上和线下互动的一种新型商业模式。
手机二维码本质:O2O商务行为从线下现实世界到线上虚拟世界的入口。
线上虚拟世界创造的本意是打破信息鸿沟,让不同地域、不同需求的人
- js实现图片随鼠标滚动的效果
百合不是茶
JavaScript滚动属性的获取图片滚动属性获取页面加载
1,获取样式属性值
top 与顶部的距离
left 与左边的距离
right 与右边的距离
bottom 与下边的距离
zIndex 层叠层次
例子:获取左边的宽度,当css写在body标签中时
<div id="adver" style="position:absolute;top:50px;left:1000p
- ajax同步异步参数async
bijian1013
jqueryAjaxasync
开发项目开发过程中,需要将ajax的返回值赋到全局变量中,然后在该页面其他地方引用,因为ajax异步的原因一直无法成功,需将async:false,使其变成同步的。
格式:
$.ajax({ type: 'POST', ur
- Webx3框架(1)
Bill_chen
eclipsespringmaven框架ibatis
Webx是淘宝开发的一套Web开发框架,Webx3是其第三个升级版本;采用Eclipse的开发环境,现在支持java开发;
采用turbine原型的MVC框架,扩展了Spring容器,利用Maven进行项目的构建管理,灵活的ibatis持久层支持,总的来说,还是一套很不错的Web框架。
Webx3遵循turbine风格,velocity的模板被分为layout/screen/control三部
- 【MongoDB学习笔记五】MongoDB概述
bit1129
mongodb
MongoDB是面向文档的NoSQL数据库,尽量业界还对MongoDB存在一些质疑的声音,比如性能尤其是查询性能、数据一致性的支持没有想象的那么好,但是MongoDB用户群确实已经够多。MongoDB的亮点不在于它的性能,而是它处理非结构化数据的能力以及内置对分布式的支持(复制、分片达到的高可用、高可伸缩),同时它提供的近似于SQL的查询能力,也是在做NoSQL技术选型时,考虑的一个重要因素。Mo
- spring/hibernate/struts2常见异常总结
白糖_
Hibernate
Spring
①ClassNotFoundException: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
缺少aspectjweaver.jar,该jar包常用于spring aop中
②java.lang.ClassNotFoundException: org.sprin
- jquery easyui表单重置(reset)扩展思路
bozch
formjquery easyuireset
在jquery easyui表单中 尚未提供表单重置的功能,这就需要自己对其进行扩展。
扩展的时候要考虑的控件有:
combo,combobox,combogrid,combotree,datebox,datetimebox
需要对其添加reset方法,reset方法就是把初始化的值赋值给当前的组件,这就需要在组件的初始化时将值保存下来。
在所有的reset方法添加完毕之后,就需要对fo
- 编程之美-烙饼排序
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
/*
*《编程之美》的思路是:搜索+剪枝。有点像是写下棋程序:当前情况下,把所有可能的下一步都做一遍;在这每一遍操作里面,计算出如果按这一步走的话,能不能赢(得出最优结果)。
*《编程之美》上代码有很多错误,且每个变量的含义令人费解。因此我按我的理解写了以下代码:
*/
- Struts1.X 源码分析之ActionForm赋值原理
chenbowen00
struts
struts1在处理请求参数之前,首先会根据配置文件action节点的name属性创建对应的ActionForm。如果配置了name属性,却找不到对应的ActionForm类也不会报错,只是不会处理本次请求的请求参数。
如果找到了对应的ActionForm类,则先判断是否已经存在ActionForm的实例,如果不存在则创建实例,并将其存放在对应的作用域中。作用域由配置文件action节点的s
- [空天防御与经济]在获得充足的外部资源之前,太空投资需有限度
comsci
资源
这里有一个常识性的问题:
地球的资源,人类的资金是有限的,而太空是无限的.....
就算全人类联合起来,要在太空中修建大型空间站,也不一定能够成功,因为资源和资金,技术有客观的限制....
&
- ORACLE临时表—ON COMMIT PRESERVE ROWS
daizj
oracle临时表
ORACLE临时表 转
临时表:像普通表一样,有结构,但是对数据的管理上不一样,临时表存储事务或会话的中间结果集,临时表中保存的数据只对当前
会话可见,所有会话都看不到其他会话的数据,即使其他会话提交了,也看不到。临时表不存在并发行为,因为他们对于当前会话都是独立的。
创建临时表时,ORACLE只创建了表的结构(在数据字典中定义),并没有初始化内存空间,当某一会话使用临时表时,ORALCE会
- 基于Nginx XSendfile+SpringMVC进行文件下载
denger
应用服务器Webnginx网络应用lighttpd
在平常我们实现文件下载通常是通过普通 read-write方式,如下代码所示。
@RequestMapping("/courseware/{id}")
public void download(@PathVariable("id") String courseID, HttpServletResp
- scanf接受char类型的字符
dcj3sjt126com
c
/*
2013年3月11日22:35:54
目的:学习char只接受一个字符
*/
# include <stdio.h>
int main(void)
{
int i;
char ch;
scanf("%d", &i);
printf("i = %d\n", i);
scanf("%
- 学编程的价值
dcj3sjt126com
编程
发一个人会编程, 想想以后可以教儿女, 是多么美好的事啊, 不管儿女将来从事什么样的职业, 教一教, 对他思维的开拓大有帮助
像这位朋友学习:
http://blog.sina.com.cn/s/articlelist_2584320772_0_1.html
VirtualGS教程 (By @林泰前): 几十年的老程序员,资深的
- 二维数组(矩阵)对角线输出
飞天奔月
二维数组
今天在BBS里面看到这样的面试题目,
1,二维数组(N*N),沿对角线方向,从右上角打印到左下角如N=4: 4*4二维数组
{ 1 2 3 4 }
{ 5 6 7 8 }
{ 9 10 11 12 }
{13 14 15 16 }
打印顺序
4
3 8
2 7 12
1 6 11 16
5 10 15
9 14
13
要
- Ehcache(08)——可阻塞的Cache——BlockingCache
234390216
并发ehcacheBlockingCache阻塞
可阻塞的Cache—BlockingCache
在上一节我们提到了显示使用Ehcache锁的问题,其实我们还可以隐式的来使用Ehcache的锁,那就是通过BlockingCache。BlockingCache是Ehcache的一个封装类,可以让我们对Ehcache进行并发操作。其内部的锁机制是使用的net.
- mysqldiff对数据库间进行差异比较
jackyrong
mysqld
mysqldiff该工具是官方mysql-utilities工具集的一个脚本,可以用来对比不同数据库之间的表结构,或者同个数据库间的表结构
如果在windows下,直接下载mysql-utilities安装就可以了,然后运行后,会跑到命令行下:
1) 基本用法
mysqldiff --server1=admin:12345
- spring data jpa 方法中可用的关键字
lawrence.li
javaspring
spring data jpa 支持以方法名进行查询/删除/统计。
查询的关键字为find
删除的关键字为delete/remove (>=1.7.x)
统计的关键字为count (>=1.7.x)
修改需要使用@Modifying注解
@Modifying
@Query("update User u set u.firstna
- Spring的ModelAndView类
nicegege
spring
项目中controller的方法跳转的到ModelAndView类,一直很好奇spring怎么实现的?
/*
* Copyright 2002-2010 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* yo
- 搭建 CentOS 6 服务器(13) - rsync、Amanda
rensanning
centos
(一)rsync
Server端
# yum install rsync
# vi /etc/xinetd.d/rsync
service rsync
{
disable = no
flags = IPv6
socket_type = stream
wait
- Learn Nodejs 02
toknowme
nodejs
(1)npm是什么
npm is the package manager for node
官方网站:https://www.npmjs.com/
npm上有很多优秀的nodejs包,来解决常见的一些问题,比如用node-mysql,就可以方便通过nodejs链接到mysql,进行数据库的操作
在开发过程往往会需要用到其他的包,使用npm就可以下载这些包来供程序调用
&nb
- Spring MVC 拦截器
xp9802
spring mvc
Controller层的拦截器继承于HandlerInterceptorAdapter
HandlerInterceptorAdapter.java 1 public abstract class HandlerInterceptorAdapter implements HandlerIntercep