- stm32之GPIO寄存器
luofengmacheng
嵌入式stm32嵌入式硬件单片机
文章目录1背景2GPIO寄存器的类型2.1端口配置寄存器2.2设置/清除寄存器和位清除寄存器3总结1背景C51单片机在进行数据的输入输出时,是直接操作与外部引脚关联的内部寄存器,例如,当设置P2_1为0时,就是将外部引脚的P21引脚设置为低电平,当读取P2_1时,就是读取P21的电平。与之类似,stm32芯片内部也有很多用于输入输出的寄存器,这些寄存器也是用于操作外部引脚,但是比C51单片机复杂很
- STM32 消息队列处理串口发送的报文
S安东尼
stm32嵌入式硬件单片机
文章目录概要整体流程具体实现小结概要本文写自正在做的项目,需要使用串口2处理EasyModBus传输的报文,原本采用中断处理的方式,在屏幕,按键,感应器同时传输下,产生了丢包现象,偶发性的死机问题,所以改用消息队列进行缓存,逐条处理。整体流程创建队列串口中断接收报文,简易判别添加入队列解包任务,从队列中取出报文解包做相应处理具体实现创建队列结构体#defineQUEUE_LENGTH20struc
- 【智能家居入门2】(MQTT协议、微信小程序、STM32、ONENET云平台)
geeoni
智能家居微信小程序stm32
此篇智能家居入门与前两篇类似,但是是使用MQTT协议接入ONENET云平台,实现微信小程序与下位机的通信,这里相较于使用http协议的那两篇博客,在主程序中添加了独立看门狗防止程序卡死和服务器掉线问题。后续还有使用MQTT协议连接MQTT服务器的智能家居项目。前言一、硬件模块二、连接服务器测试三、两个协议的对比分析1、代码结构上:2、获取服务器数据上:3、架构上:四、下位机主要代码1、接收并解析云
- STM32 LL库 定时器捕获NEC红外解码
xiaoqi976633690
stm32嵌入式硬件单片机
/*USERCODEBEGINHeader*//*********************************************************************************@filestm32f1xx_it.c*@briefInterruptServiceRoutines.********************************************
- 嵌入式单片机高级篇(一)Stm32F103电容触摸按键
lostlll
嵌入式嵌入式单片机高级篇电容触摸按键单片机stm32电容触摸按键
Stm32F103电容触摸按键一、电容触摸按键原理:1、电容触摸按键电路是如何组成的?回答:电容触摸按键的电路由一个上拉电阻、一个开关以及杂散电容组成,开关断开时,杂散电容充电,开关闭合时,杂散电容放电2、电容触摸按键如何判别按键是否被触摸?回答:根据电容的充电时间,当按键没有触摸时,电源只给杂散电容充电,充电时间较短,记为tcs,当按键被触摸时,相当于与杂散电容并联了一个额外的电容,此时电容充电
- STM32移植SFUD
无聊到发博客的菜鸟
stm32嵌入式硬件单片机
简介项目地址:https://github.com/armink/SFUD.gitSFUD是一款开源的串行SPIFlash通用驱动库。由于现有市面的串行Flash种类居多,各个Flash的规格及命令存在差异,SFUD就是为了解决这些Flash的差异现状而设计,让我们的产品能够支持不同品牌及规格的Flash,提高了涉及到Flash功能的软件的可重用性及可扩展性,同时也可以规避Flash缺货或停产给产
- 不怕没项目做!github上的STM32 优秀开源项目和初学者项目
石头嵌入式
STM32stm32学习嵌入式硬件githubSTM32项目
优秀开源项目TinyGo-Go语言编译器,适用于微控制器、WebAssembly、命令行工具,基于LLVM。语言:Go星标数:14,267+描述:TinyGo带来了Go语言在嵌入式系统的实现,使得STM32等微控制器编程更加多样化。FlipperZeroFirmware-FlipperZero的固件源码。语言:C星标数:10,699+描述:为FlipperZero多功能设备提供固件支持,包含了许多
- 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基础--RCC—使用 HSE/HSI 配置时钟
吟诗六千里
STM32stm32嵌入式硬件单片机
这玩意很重要,就这么给你说吧,这玩意就像是北方吃席的肘子。RCC:resetclockcontrol复位和时钟控制器。本章我们主要讲解时钟部分,特别是要着重理解时钟树,理解了时钟树,STM32的一切时钟的来龙去脉都会了如指掌。RCC主要作用—时钟部分设置系统时钟SYSCLK、设置AHB分频因子(决定HCLK等于多少)、设置APB2分频因子(决定PCLK2等于多少)、设置APB1分频因子(决定PCL
- 新手入门stm32F407用寄存器点亮一个led灯过程分享
uint64
学习stm32单片机嵌入式硬件
纪录一下自己的学习stm32寄存器点灯的过程看完这个过程可能不会让你点灯成功但是会让大家对寄存器点灯更加透彻1.我觉得寄存器点灯是stm32中非常需要学习的东西2.直接上手库函数的话可能就不知道自己用的东西是怎么回事(底层一点的知识)3.库函数是建立在寄存器的基础上的先来类比一下:大家试想一家酒店有很多家房间,房间都有门牌号,我们可以将这个门牌号看成c语言中的指针。房间这个实体看成寄存器,我们就可
- GPT对话代码库——基于STM32F103 1,标志位切换模式 & 2,串口的接受和发送
玄奕子
单片机stm32嵌入式硬件GPT
目录1,问:1,答:2,问:2,答:1.初始化LED灯相应的GPIO口2.初始化USART33.实现发送功能4.实现接收字符串功能5.主函数3,问:3,答:1.配置NVIC以使能USART3中断2.在USART3初始化函数中开启接收中断3.编写USART3的中断服务函数来处理接收到的字节提问模型:GPT-4-TURBO-PREVIEW提问时间:2024.03.091,问:使用stm32f103C8
- STM32采用串口DMA方式向上位机连续发送数据
亚大贼
stm32arm嵌入式硬件
目录前言一、DMA简介1.1DMA功能框图1.1.1DMA请求1.1.2通道1.1.3仲裁器1.2DMA数据配置1.2.1数据传输方向:1.2.2数据传输大小和单位1.2.3什么时候传输完成1.3DMA库函数配置过程二、串口DMA方式向上位机发送数据2.1新建工程2.2设置RCC2.3打开USART1及DMA模式
- 【智能家居入门1之环境信息监测】(STM32、ONENET云平台、微信小程序、HTTP协议)
geeoni
智能家居stm32微信小程序
作为入门本篇只实现微信小程序接收下位机上传的数据,之后会持续发布如下项目:①可以实现微信小程序控制下位机动作,真正意义上的智能家居;②将网络通讯协议换成MQTT协议再实现上述功能,此时的服务器也不再是ONENET,可以是公用的MQTT服务器也可以自己搭建或者租最终效果一、下位机模块测试与分析1、MQ系列传感器2、DHT11温湿度传感器3、Esp8266-01s4、oled液晶屏二、微信小程序三、项
- ATmega328P、STM32F103C8T6和nRF52832三款微控制器的比较
知行好事
可穿戴电子stm32单片机嵌入式硬件
以下是从嵌入式系统设计的角度,对ATmega328P、STM32F103C8T6、和nRF52832三款微控制器的比较。这份比较覆盖了核心性能参数、外设功能、封装尺寸等,特性/参数ATmega328PSTM32F103C8T6nRF52832核心AVR8位ARMCortex-M332位ARMCortex-M4F32位最大时钟频率20MHz72MHz64MHz程序存储空间32KBFlash64KBF
- 初学者学习51还是STM32
达西西66
学习stm32嵌入式硬件
初学者学习51还是STM32在嵌入式系统领域,51和STM32是两种常见的单片机架构。对于初学者来说,选择学习哪种架构可能会成为一个难题。本文将对初学者学习51和STM32进行比较,以帮助读者做出明智的选择。1.51架构51架构是指Intel8051系列单片机。由于其历史悠久,许多教材和示例代码都基于51架构。以下是51架构的一些特点:简单易懂:51架构拥有简单的指令集和寄存器结构,因此适合初学者
- 基于STM32的人体感应灯设计制作
科创工作室li
STM32stm32嵌入式硬件单片机
基于STM32的人体感应灯设计制作摘要:随着物联网和智能家居的快速发展,人体感应灯作为一种智能照明设备,逐渐受到人们的青睐。本文首先介绍了人体感应灯的背景和意义,随后详细阐述了基于STM32的人体感应灯的设计与制作过程,包括硬件选择、软件编程和整体系统测试。最后,对制作的人体感应灯进行了性能评估,并展望了其未来的应用前景。关键词:STM32;人体感应;智能照明;智能家居一、引言人体感应灯是一种能够
- FreeRTOS学习笔记-基于STM32(1)基础知识
芊寻(嵌入式)
FreeRTOS学习笔记stm32
一、裸机与RTOS我们使用的32板子是裸机,又称前后台系统。裸机有如下缺点:1、实时性差。只能一步一步执行任务,比如在一个while循环中,要想执行上一个任务,就必须把下面的任务执行完,循环一遍后才能执行这个任务;2、浪费资源。在程序delay延时的时候会进入空等待,此时CPU不执行其他代码;3、结构臃肿。实现的功能都放在无限循环中。但RTOS(RealTimeOS),实时操作系统就可以解决这些问
- STM32使用PB3, PB4引脚的注意事项
潇洒的电磁波
嵌入式软硬件设计stm32PB3PB4
STM32的PB3,PB4引脚作为GPIO引脚需要注意,因为他们默认分别是JTDO和NJTRST引脚。 笔者在设计可调增益增益放大器(VGA)的时候,使用4个GPIO读取外部控制电压,根据约定的编码格式设定DAC的输出电压,从而设置VGA的增益,然而在测试发现,DAC的输出电压不稳定,并不是设想的数值。经过多次实验、代码分析,发现并不是DAC的问题,而是GPIO的问题,4个GPIO中使用了P
- Linux第64步_编译移植好的虚拟机文件
LaoZhangGong123
产品研发linux服务器STM32MP157经验分享根文件系统编译挂载
最好还是认真了解linux系统移植的整个过程,否则,可能会让你误入歧途。1、编译移植好的tf-a1)、编译生成“tf-a-stm32mp157d-atk-trusted.stm32”输入“cd/home/zgq/linux/atk-mp1/tfa/my-tfa/tf-a-stm32mp-2.2.r1/回车”,切换到“/home/zgq/linux/atk-mp1/tfa/my-tfa/tf-a-s
- 有方机器人 STM32智能小车 项目学习笔记1
枫-琳
stm32学习有方机器人单片机笔记Keil
今天开始学习有方机器人--智能小车项目,正点原子部分的学习先放一放,还是小车更有吸引力哈哈。新建工程及工程模板搭建新建工程须知目前常用的STM32的开发方式主要有基于寄存器编程、基于标准库函数编程、基于HAL库编程这三种。寄存器版本---最高效,最直接,需要对STM32内部结构十分了解,难度系数大,新手学习不推荐。标准库函数版本--直接使用ST官方提供的封装好的库函数进行编程,库函数把配置寄存器的
- TinyUSB 基本使用
czy8787475
DDM单片机
由于早期时候我们产品基于STM32开发,自然而然的用了STM32的USB库,这个本身没什么问题,库也很完善,而且有官方在完善,这本来是个不错的东西,但是随着ST的缺货,问题就越来越多,比如别人的芯片可不会兼容ST的库,如果是标准设备那还好,如果像我们还做HOTPKey这样的,移植起来就相当的麻烦.一开始他们推荐我使用RL-USB,但是RL-USB始终是挂载RTX上的,至于哪一天RTX也出毛病,这就
- STM32H7 系列 MCU 内部 SRAM
MCU_wb
单片机stm32
通过参看《STM32H7参考手册》“2.4EmbeddedSRAM”章节知道TheSTM32H743/53xxandSTM32H750xB内存特性:Upto864KbytesofSystemSRAM128KbytesofdataTCMRAM64KbytesofinstructionTCMRAM4KbytesofbackupSRAM1.1TCMSRAMTCM:Tightly-CoupledMemor
- (十)STM32——Systick滴答定时器
花园宝宝小点点
STM32笔记stm32单片机嵌入式硬件
目录Systick定时器基础知识Systick寄存器库函数CTRLLOADVALCALIBSysTick_CLKSourceConfig()SysTick_Config()delay延时函数voiddelay_init()delay_us()delay_ms()delay_xms()Systick定时器基础知识Systick定时器常用来做延时,或者实时系统的心跳时钟。这样可以节省MCU资源,不用浪
- 【STM32】用SysTick滴答定时器定时1s实现LED亮灭循环
进击中的鱼
笔记学习STM32学习笔记stm32单片机嵌入式硬件
SysTick定时器被捆绑在NVIC中,用于产生SYSTICK异常(异常号:15)。在以前,大多操作系统需要一个硬件定时器来产生操作系统需要的滴答中断,作为整个系统的时基。例如,为多个任务许以不同数目的时间片,确保没有一个任务能霸占系统;或者把每个定时器周期的某个时间范围赐予特定的任务等,还有操作系统提供的各种定时功能,都与这个滴答定时器有关。因此,需要一个定时器来产生周期性的中断,而且最好还让用
- 16、STM32F103C8T6 Systick(滴答定时器)中断
维年
stm32单片机学习
一、systick配置//每经过1ms就会进入一次中断函数//注:该重装寄存器是一个24位的,//1s需要计数72000000次//1ms需要计数72000000/1000次,定时1ms;SysTick_Config(SystemCoreClock/1000);二、systick中断处理函数voidSysTick_Handler(void){}按自己需求写例如voidSysTick_Handler
- STM32 寄存器操作 systick 滴答定时器 与中断
余生皆假期-
单片机嵌入式硬件
一、什么是SysTickSysTick—系统定时器是属于CM3内核中的一个外设,内嵌在NVIC中。系统定时器是一个24bit的向下递减的计数器,计数器每计数一次的时间为1/SYSCLK,一般我们设置系统时钟SYSCLK等于72M。当重装载数值寄存器的值递减到0的时候,系统定时器就产生一次中断,以此循环往复。因为SysTick是属于CM3内核的外设,所以所有基于CM3内核的单片机都具有这个系统定时器
- keil MDK报错显示error: #20: identifier “inline“ is undefined
Lulifer。
单片机stm32嵌入式硬件keilMDKinline
用keilMDK编译STM32代码,报错为:..\LCD\atk_md0430.c(72):error:#20:identifier"inline"isundefinedstaticinlineuint16_tatk_md0430_get_chip_id(void)之所以产生这样的原因,是因为MDK的inline函数和stm32的不一样,在MDK中,应该是__inline,修改后编译正确:
- 【单片机毕业设计】【mcuclub-jj-053】基于单片机的宠物喂食器的设计
单片机俱乐部--官方
毕业设计单片机stm32嵌入式硬件
最近设计了一个项目基于单片机的宠物喂食器系统,与大家分享一下:一、基本介绍项目名:宠物喂食器项目编号:mcuclub-jj-053单片机类型:STC89C52、STM32F103C8T6具体功能:1、通过DS1302获取时间2、通过AT24C02存储设定的投喂时间3、通过按键可修正实时时间、添加或删除投喂时间、查看投喂时间4、当投喂时间到达时,蜂鸣器报警提醒(2s),并开启两个继电器(喂食、喂水)
- Linux驱动分析——I2C子系统
放羊娃
Linux
stm32mp157盘古开发板Linux内核版本4.19目录1、朱有鹏老师视频笔记2、I2C子系统的4个关键结构体3、关键文件4、i2c-core.c初步分析4.1、smbus代码略过4.2、模块加载和卸载:bus_register(&i2c_bus_type);在i2c-core-base.c中4.3、I2C总线的匹配机制4.3.1、match函数4.3.2、probe函数4.4、核心层开放给其
- 【嵌入式系统设计与实现】4 十字路口交通灯控制(简易版)
jennie佳妮
嵌入式设计设计与分析stm32STM32CubeMXproteus交通灯嵌入式
机考在前不想弄啊啊啊老师给个确定的截止时间吧!!!!大作业超级极限,老师要pre,最后极限3小时赶出来笑死,只局限他所教的。目录环境(软硬件)方案设计与论证软件方案设计阶段1:通行(5s)阶段2:绿灯闪烁(5次,每次150ms)阶段3:变黄灯(1s)硬件仿真方案设计项目(软硬件)详细实现过程分析说明利用STM32CubeMX生成工程芯片选型配置引脚时钟配置生成工程文件并打开(图表5)软件详细实现过
- 深入浅出Java Annotation(元注解和自定义注解)
Josh_Persistence
Java Annotation元注解自定义注解
一、基本概述
Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。
更通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或
- mysql优化特定类型的查询
annan211
java工作mysql
本节所介绍的查询优化的技巧都是和特定版本相关的,所以对于未来mysql的版本未必适用。
1 优化count查询
对于count这个函数的网上的大部分资料都是错误的或者是理解的都是一知半解的。在做优化之前我们先来看看
真正的count()函数的作用到底是什么。
count()是一个特殊的函数,有两种非常不同的作用,他可以统计某个列值的数量,也可以统计行数。
在统
- MAC下安装多版本JDK和切换几种方式
棋子chessman
jdk
环境:
MAC AIR,OS X 10.10,64位
历史:
过去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,并且OS X 10.7 开始系统并不自带(而是可选安装)(原自带的是1.6)。
后来 Apple 加入 OpenJDK 继续支持 Java 6,而 Java 7 将由 Oracle 负责提供。
在终端中输入jav
- javaScript (1)
Array_06
JavaScriptjava浏览器
JavaScript
1、运算符
运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位
- 国内顶级代码分享网站
袁潇含
javajdkoracle.netPHP
现在国内很多开源网站感觉都是为了利益而做的
当然利益是肯定的,否则谁也不会免费的去做网站
&
- Elasticsearch、MongoDB和Hadoop比较
随意而生
mongodbhadoop搜索引擎
IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配
- mac os 系统科研软件总结
张亚雄
mac os
1.1 Microsoft Office for Mac 2011
大客户版,自行搜索。
1.2 Latex (MacTex):
系统环境:https://tug.org/mactex/
&nb
- Maven实战(四)生命周期
AdyZhang
maven
1. 三套生命周期 Maven拥有三套相互独立的生命周期,它们分别为clean,default和site。 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和Maven最直接的交互方式就是调用这些生命周期阶段。 以clean生命周期为例,它包含的阶段有pre-clean, clean 和 post
- Linux下Jenkins迁移
aijuans
Jenkins
1. 将Jenkins程序目录copy过去 源程序在/export/data/tomcatRoot/ofctest-jenkins.jd.com下面 tar -cvzf jenkins.tar.gz ofctest-jenkins.jd.com &
- request.getInputStream()只能获取一次的问题
ayaoxinchao
requestInputstream
问题:在使用HTTP协议实现应用间接口通信时,服务端读取客户端请求过来的数据,会用到request.getInputStream(),第一次读取的时候可以读取到数据,但是接下来的读取操作都读取不到数据
原因: 1. 一个InputStream对象在被读取完成后,将无法被再次读取,始终返回-1; 2. InputStream并没有实现reset方法(可以重
- 数据库SQL优化大总结之 百万级数据库优化方案
BigBird2012
SQL优化
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。
这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where
- jsonObject的使用
bijian1013
javajson
在项目中难免会用java处理json格式的数据,因此封装了一个JSONUtil工具类。
JSONUtil.java
package com.bijian.json.study;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
- [Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration
bit1129
zookeeper
Zookeeper类是Zookeeper提供给用户访问Zookeeper service的主要API,它包含了如下几个内部类
首先分析它的内部类,从WatchRegistration开始,为指定的znode path注册一个Watcher,
/**
* Register a watcher for a particular p
- 【Scala十三】Scala核心七:部分应用函数
bit1129
scala
何为部分应用函数?
Partially applied function: A function that’s used in an expression and that misses some of its arguments.For instance, if function f has type Int => Int => Int, then f and f(1) are p
- Tomcat Error listenerStart 终极大法
ronin47
tomcat
Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下
Java代码
handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHa
- 不用加减符号实现加减法
BrokenDreams
实现
今天有群友发了一个问题,要求不用加减符号(包括负号)来实现加减法。
分析一下,先看最简单的情况,假设1+1,按二进制算的话结果是10,可以看到从右往左的第一位变为0,第二位由于进位变为1。
 
- 读《研磨设计模式》-代码笔记-状态模式-State
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况
把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化
如果在
- CUDA程序block和thread超出硬件允许值时的异常
cherishLC
CUDA
调用CUDA的核函数时指定block 和 thread大小,该大小可以是dim3类型的(三维数组),只用一维时可以是usigned int型的。
以下程序验证了当block或thread大小超出硬件允许值时会产生异常!!!GPU根本不会执行运算!!!
所以验证结果的正确性很重要!!!
在VS中创建CUDA项目会有一个模板,里面有更详细的状态验证。
以下程序在K5000GPU上跑的。
- 诡异的超长时间GC问题定位
chenchao051
jvmcmsGChbaseswap
HBase的GC策略采用PawNew+CMS, 这是大众化的配置,ParNew经常会出现停顿时间特别长的情况,有时候甚至长到令人发指的地步,例如请看如下日志:
2012-10-17T05:54:54.293+0800: 739594.224: [GC 739606.508: [ParNew: 996800K->110720K(996800K), 178.8826900 secs] 3700
- maven环境快速搭建
daizj
安装mavne环境配置
一 下载maven
安装maven之前,要先安装jdk及配置JAVA_HOME环境变量。这个安装和配置java环境不用多说。
maven下载地址:http://maven.apache.org/download.html,目前最新的是这个apache-maven-3.2.5-bin.zip,然后解压在任意位置,最好地址中不要带中文字符,这个做java 的都知道,地址中出现中文会出现很多
- PHP网站安全,避免PHP网站受到攻击的方法
dcj3sjt126com
PHP
对于PHP网站安全主要存在这样几种攻击方式:1、命令注入(Command Injection)2、eval注入(Eval Injection)3、客户端脚本攻击(Script Insertion)4、跨网站脚本攻击(Cross Site Scripting, XSS)5、SQL注入攻击(SQL injection)6、跨网站请求伪造攻击(Cross Site Request Forgerie
- yii中给CGridView设置默认的排序根据时间倒序的方法
dcj3sjt126com
GridView
public function searchWithRelated() {
$criteria = new CDbCriteria;
$criteria->together = true; //without th
- Java集合对象和数组对象的转换
dyy_gusi
java集合
在开发中,我们经常需要将集合对象(List,Set)转换为数组对象,或者将数组对象转换为集合对象。Java提供了相互转换的工具,但是我们使用的时候需要注意,不能乱用滥用。
1、数组对象转换为集合对象
最暴力的方式是new一个集合对象,然后遍历数组,依次将数组中的元素放入到新的集合中,但是这样做显然过
- nginx同一主机部署多个应用
geeksun
nginx
近日有一需求,需要在一台主机上用nginx部署2个php应用,分别是wordpress和wiki,探索了半天,终于部署好了,下面把过程记录下来。
1. 在nginx下创建vhosts目录,用以放置vhost文件。
mkdir vhosts
2. 修改nginx.conf的配置, 在http节点增加下面内容设置,用来包含vhosts里的配置文件
#
- ubuntu添加admin权限的用户账号
hongtoushizi
ubuntuuseradd
ubuntu创建账号的方式通常用到两种:useradd 和adduser . 本人尝试了useradd方法,步骤如下:
1:useradd
使用useradd时,如果后面不加任何参数的话,如:sudo useradd sysadm 创建出来的用户将是默认的三无用户:无home directory ,无密码,无系统shell。
顾应该如下操作:
- 第五章 常用Lua开发库2-JSON库、编码转换、字符串处理
jinnianshilongnian
nginxlua
JSON库
在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成
- Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
yaerfeng1989
timerquartz定时器
原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
代码下载地址:http://www.zuidaima.com/share/1772648445103104.htm
有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。
1.Java Timer定时
首先继承jav
- Linux下df与du两个命令的差别?
pda158
linux
一、df显示文件系统的使用情况,与du比較,就是更全盘化。 最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型。 举比例如以下: [root@localhost ~]# df -T Filesystem Type &n
- [转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象
ctfzh
VOandroidsqlite反射Cursor
在写DAO层时,觉得从Cursor里一个一个的取出字段值再装到VO(值对象)里太麻烦了,就写了一个工具类,用到了反射,可以把查询记录的值装到对应的VO里,也可以生成该VO的List。
使用时需要注意:
考虑到Android的性能问题,VO没有使用Setter和Getter,而是直接用public的属性。
表中的字段名需要和VO的属性名一样,要是不一样就得在查询的SQL中
- 该学习笔记用到的Employee表
vipbooks
oraclesql工作
这是我在学习Oracle是用到的Employee表,在该笔记中用到的就是这张表,大家可以用它来学习和练习。
drop table Employee;
-- 员工信息表
create table Employee(
-- 员工编号
EmpNo number(3) primary key,
-- 姓