- stm32基于HAL库的串口UART中断接收不定长数据代码实现
ls20010901
stm32单片机mcu
总体分析:代码使用的串口USART1,GPIO的复用引脚分别是:PA9复用为RX引脚;PA10复用为TX引脚。数据接收标志符为"\r\n"即回车按键按下,当接收到\r\n时接收停止。接收数据缓冲区只能容纳一个字节数据,设置的接收一个字节数据产生一次接收中断,在中断回调函数中进行串口接收协议的编写。代码现象:将接受的数据重新发送至串口进行回显。代码实现uart.h#ifndef__USART_H#d
- 关于HAL库STM32中断接收丢失第一个字节的问题
隔夜秀才
STM32stm32
被HAL库中断接收丢失首字节的这个问题折磨了四天了,今天终于解决了,觉得有必要记录一下。问题是这样的:刚开始上电后,用串口助手给串口1发送一帧数据(有帧头帧尾的),正常接收,继续发送,也正常接收,之后当串口4中断接收数据完成后,再用串口助手给串口1发送一帧数据的时候,发现首字节会丢失无法接收到,如果不让串口4进中断接收,就不会这样。网上搜罗查阅了很多资料,什么RXNE、ORE、TC问题都试过了,一
- STM32HAL库,解决串口UART中断接收到的第一个字节数据丢失
IT.小航
STM32-—hal库stm32单片机嵌入式硬件
1.问题描述:只有上电后第一次接收到的第一字节数据会丢失,往后再接收也不会存在问题了。2.先贴出来重写UART中断回调函数我在接收到第一字节数据后开启定时器中断的,做一个超时处理,每次接收到数据会对定时器计数值清零,如果超过6ms则认为一帧数据接收完毕。voidHAL_UART_RxCpltCallback(UART_HandleTypeDef*huart){if(huart->Instance=
- 关于STM32如何选择:HAL与标准库的抉择及初学者建议
笑靥藏情.
stm32嵌入式硬件单片机
STM32是意法半导体(STMicroelectronics)推出的一系列基于ARMCortex-M内核的32位微控制器,因其高性能、多功能性和成本效益而广受嵌入式系统开发者的欢迎。对于初学者而言,学习STM32编程时面临的第一个重要抉择往往是如何选择编程方式:是使用硬件抽象层(HAL),还是选择标准外设库(StandardPeripheralLibrary)?本文将围绕这一问题展开,详细比较HA
- Ubuntu下编译OpenWrt的详细教程
艾丽丝的爱情
ubuntulinux运维编程
OpenWrt是一个基于Linux的嵌入式操作系统,常用于路由器等网络设备。本文将为您提供在Ubuntu操作系统下编译OpenWrt的完整教程。步骤1:安装必要的软件包首先,我们需要安装一些必要的软件包来支持OpenWrt的编译过程。在终端中运行以下命令来安装这些软件包:sudoaptupdatesudoaptinstallbuild-essentiallibncurses5-devzlib1g-
- 嵌入式硬件篇---Keil51中的关键字
Ronin-Lotus
嵌入式硬件篇程序代码篇上位机知识篇嵌入式硬件cKeil单片机关键字
文章目录前言1.存储类型关键字1.1code作用地址范围用途示例1.2data作用地址范围用途示例1.3idata作用地址范围用途示例1.4xdata作用地址范围用途示例1.5pdata作用地址范围用途示例1.6volatile作用用途示例2.其他常用关键字2.1bit作用示例2.2sbit作用示例2.3sfr/sfr16作用示例2.4reentrant作用示例2.5interrupt作用示例2.
- 零基础怎么开始学网络安全(非常详细)零基础入门到精通,收藏这一篇就够了
程序员羊羊
web安全安全网络php学习
一、学习建议1.了解基础概念:开始之前,了解网络安全的基本概念和术语是很重要的。你可以查找网络安全入门教程或在线课程,了解网络安全领域的基本概念,如黑客、漏洞、攻击类型等。2.网络基础知识:学习计算机网络基础知识,了解网络通信原理,不同网络协议(如TCP/IP)的工作方式,以及网络拓扑结构等。3.操作系统知识:了解常见的操作系统,特别是Windows和Linux。掌握基本的命令行操作和系统管理技能
- 网络安全入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
白帽黑客坤哥
web安全网络安全pythonwindows
href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/kdoc_html_views-1a98987dfd.css"rel="stylesheet"/>href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_v
- Deno入门教程:Node.js 的替代品
xiaoweids
编程语言JavaScriptnode.jsjavascript开发语言
转自:微点阅读https://www.weidianyuedu.com这几天假期,我学习了一下Deno[1]。它是Node.js的替代品。有了它,将来可能就不需要Node.js了。这篇文章就是Deno的一个初步介绍,尝试回答为什么Node.js不能满足需要,以及Deno能够带给我们什么?以下内容主要基于BertBelder[2]和RyanDahl[3]的最新演讲。0、进入主题之前,先说一下Deno
- 一键秒连WiFi智能设备,uni-app全栈式物联开发指南。
豆豆(前端开发+ui设计)
前端
如何使用uni-app框架实现通过WiFi连接设备并进行命令交互的硬件开发。为了方便理解和实践,我们将提供相应的源代码示例,帮助开发者快速上手。1.硬件准备在开始之前,请确保你已经准备好以下硬件设备:支持WiFi连接的设备:如ESP8266、ESP32等。控制端设备:手机或电脑,安装有支持uni-app开发的开发环境(如HBuilderX)。网络环境:确保设备和控制端在同一个局域网内。2.uni-
- C++协程入门教程
ox0080
#北漂+滴滴出行C++协程VIP激励c++开发语言
一、环境搭建(Docker+双编译系统)1.全能Docker环境配置FROMubuntu:22.04#基础工具链RUNapt-getupdate&&DEBIAN_FRONTEND=noninteractiveapt-getinstall-y\build-essentialcmakebazelgitg++-12libcppcoro-dev\openssh-serverrsyslogcurlgnupg
- 宇树科技纯技能要求总结
极梦网络无忧
杂谈科技
一、嵌入式开发与硬件设计核心技能嵌入式开发:精通C/C++,熟悉STM32、ARM开发熟悉LinuxBSP开发及驱动框架(SPI/UART/USB/FLASH/Camera/GPS/LCD)掌握主流平台(英伟达、全志、瑞芯微等)硬件设计:精通数字/模拟电路设计,熟悉PCB绘制工具(Altium等)掌握MOS驱动电路、变压器设计及EMC优化熟悉制板/贴片流程及焊接扩展技能电机控制:熟悉有感FOC算法
- 单片机中断系统的关键作用
weGuru
单片机嵌入式硬件
单片机中断系统的关键作用单片机中断系统在嵌入式系统中扮演着至关重要的角色。它是一种机制,允许单片机在执行正常程序时,根据特定事件的发生而中断当前任务的执行,转而执行与该事件相关的处理程序。中断系统的设计和实现可以极大地提高系统的可靠性、响应性和灵活性。下面将详细介绍单片机中断系统的重要性,并提供一些相关的源代码示例。提高系统的可靠性:中断系统允许单片机根据外部事件的发生立即中断当前任务的执行。这对
- 嵌入式C语言学习笔记(2)
愿抬头有阳光
c语言学习笔记
1.数组指针数组指针本质上就是一个指针,它里面存放的是数组的首地址。#includevoidshow(int(*p)[4],intn){for(inti=0;i4*4=16;3.命令行传递参数,main函数的标准格式intmain(intargc,constchar*argv[]){return0;}//argc:参数的个数包括./a.out//argv:参数的值列表argv[0]="./a.ou
- 汇川EASY系列之以太网通讯(MODBUS_TCP做从站)
Amos_ FAT
汇川EASY网络服务器经验分享
汇川easy系列PLC做MODBUS_TCP从站,不需要任何操作,但是有一些需要知道的东西。具体如下:1、汇川easy系列PLC做MODBUS_TCP从站,,ModbusTCP服务器默认开启,无需设置通信协议(即不需要配置),端口号为“502”。ModbusTCP从站最多支持31个ModbusTCP客户端(ModbusTCP主站)同时连接。2、做为串口通讯的衍生,功能码是应知应会的。具体如下:关于
- 嵌入式知识笔记1——C++面试复习(3)
Yuanyingbian
嵌入式学习资料笔记c++算法
四、关键字库函数4.1sizeof和strlen的区别strlen是头文件中的函数,sizeof是C++中的运算符。strlen测量的是字符串的实际长度(其源代码如下),以\0结束。而sizeof测量的是字符数组的分配大小。strlen本身是库函数,因此在程序运行过程中,计算长度;而sizeof在编译时,计算长度;sizeof的参数可以是类型,也可以是变量;strlen的参数必须是char*类型的
- 嵌入式程序软件架构
zhuimeng_1234
编程语言
1.线性架构:一种最简单的程序设计结构;2.模块化架构:模块化架构是一种将程序分解为独立模块的设计方法,每个模块执行特定的任务。3.层次化架构:层次化架构是一种将系统分解为多个层次的设计方法,每个层次负责不同的功能。4.事件驱动架构:事件驱动架构是一种编程范式,其中程序的执行流程由事件触发。5.状态机架构:在单片机开发中,状态机常用于处理复杂的逻辑和事件序列,如用户界面管理、协议解析等。6.面向对
- 嵌入式软件开发常用的3种架构
an520_
stm32智能家居嵌入式开发stm32单片机arm学习嵌入式硬件
摘要:对于单片机程序来说,大家都不陌生,但是真正使用架构,考虑架构的恐怕并不多,随着程序开发的不断增多,架构是非常必要的。应用程序的架构大致有三种:1、简单的前后台顺序执行程序,这类写法是大多数人使用的方法,不需用思考程序的具体架构,直接通过执行顺序编写应用程序即可。2、时间片轮询法,此方法是介于顺序执行与操作系统之间的一种方法。3、操作系统,此法应该是应用程序编写的最高境界。一、程序框架设计1、
- Nacos部署模式介绍、应用场景和示例
小猿、
服务器相关技术栈微服务技术栈docker后端微服务
概述Nacos支持多种部署模式,主要包括单机模式、集群模式和多集群模式。1.单机模式特点:只有一个Nacos节点。数据存储在本地嵌入式数据库(如Derby)。配置简单,启动快速。应用场景:开发环境:开发者可以在本地快速启动Nacos进行开发和调试。测试环境:用于功能测试和集成测试,无需复杂的集群配置。Docker部署示例:1、拉取Nacos镜像:dockerpullnacos/nacos-serv
- WebRTC、WebSocket、EasyRTC嵌入式音视频SDK:技术差异与应用场景详细对比
EasyCVR
RTCwebrtcwebsocket音视频javascript网络开发语言
WebRTC和WebSocket是两种常用于实时通信的技术,尽管它们都支持实时数据传输,但在设计目标、技术实现和应用场景上存在显著差异。一、概述1)WebRTCWebRTC是一个开源项目,旨在通过简单的API实现浏览器之间的实时音视频通信和数据传输。它支持点对点(P2P)通信,主要应用于音视频通话、屏幕共享、文件传输等场景。2)WebSocketWebSocket是一种基于TCP的通信协议,提供了
- python orm框架sqlalchemy_Python的ORM框架SQLAlchemy入门教程
weixin_39758041
pythonorm框架sqlalchemy
SQLAlchemy的核心理念是,SQL数据库查询的数量级和特性关键于目标结合;而目标结合的抽象性又关键于表和行。一安裝SQLAlchemy编码以下:pipinstallsqlalchemy导进要是没有出错则安裝取得成功编码以下:importsqlalchemysqlalchemy.__version__‘0.9.1’二应用sqlalchemy对数据库操作1.界定元信息内容,关联到模块编码以下:(
- riscv linux 汇编,RISC-V汇编快速入门
勤小墨
riscvlinux汇编
当今,强大的编译器将C或者更高级的语言编译成机器码后,其效能损失已经很小了,再加上芯片的性能越来越强,让汇编语言显得可有可无。但对于嵌入式来说至少在下面两种情况还需要汇编:1是启动代码,2是OS的上下文切换。另外在极端情况下使用汇编提高效率也是有必要的,例如芯片内核非常新编译器优化不够好可以在非常清楚CPU的微结构下进行指令集编码提高性能。因此学习一种新的体系结构,了解其汇编语言是非常有必要的。实
- Python的ORM框架SQLAlchemy入门教程
searchwang
SQLAlchemy是python操作数据库的一个库。能够进行orm映射,SQLAlchemy“采用简单的Python语言,为高效和高性能的数据库访问设计,实现了完整的企业级持久模型”SQLAlchemy的理念是,SQL数据库的量级和性能重要于对象集合;而对象集合的抽象又重要于表和行。一安装SQLAlchemy复制代码代码如下:pipinstallsqlalchemy导入如果没有报错则安装成功复制
- 嵌入式八股,为什么单片机中不使用malloc函数
skeete
单片机嵌入式硬件
1.资源限制单片机的内存资源通常非常有限,尤其是RAM的大小可能只有几KB到几十KB。在这种情况下,使用malloc进行动态内存分配可能会导致内存碎片化,使得程序在运行过程中逐渐耗尽可用内存。2.内存碎片问题malloc函数在分配和释放内存时容易产生内存碎片。内存碎片分为外部碎片和内部碎片:外部碎片:即使总空闲空间足够,但由于碎片化,无法分配足够大的连续内存块。内部碎片:分配的内存块可能比实际需求
- “烂大街”的Modbus
电气外传
自动化电气自动化程序人生
今天的主角-Modbus通讯协议(以下简称此协议),“烂大街”的一种工业标准通讯协议。其实这种叫法也恰恰体现了它在工业场合的广泛认可性。它横行通讯界40余年已然成为了一个业界标准。各位看官肯定都用过这个通讯协议,让我们来简单聊一聊吧。此协议完全公开且没有任何版权限制(就是不要钱)。所以各大设备商都内置此协议以提高自己的兼容性。此协议目前可在串口和以太网上应用,分别是RTU,ACCII和TCP,原理
- PHP入门教程3:数组和字符串操作
Evaporator Core
#php程序设计经验phpandroid开发语言
PHP入门教程3:数组和字符串操作在前两篇文章中,我们学习了PHP的基础语法、控制结构和函数的使用。本文将重点介绍数组和字符串的高级操作,这些是PHP编程中非常常见且重要的内容。本文将包含以下几个部分:数组的类型和操作多维数组数组函数字符串操作字符串函数1.数组的类型和操作数组是一种可以存储多个值的数据结构。PHP中有三种类型的数组:索引数组、关联数组和多维数组。索引数组索引数组是用数字索引的数组
- 网络安全入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
白帽黑客坤哥
web安全安全网络网络安全物联网
href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/kdoc_html_views-1a98987dfd.css"rel="stylesheet"/>href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_v
- 【Bug】串口重定义未勾选MicroLIB导致程序跑飞
学不下去的废狗
Bugbug
办法来自博客:https://blog.csdn.net/dongdong_csdn/article/details/123756095Bug:简单的使用STM32F103串口1通过重写fputc函数使用printf发送串口数据,发现程序无法正常运行,程序好像无法进入main,在通过Debug查看时发现,按一次运行就会停一次,然后也没进入main函数,发现按三次运行Run才能正常进行main函数R
- 无线数据网关 自动化测控的LoRa-4G混合网络 串口升级、信号扩展 高效物联传输网络
河北稳控科技
自动化网络运维
DLS11无线数据网关自动化测控的LoRa-4G混合网络串口升级、信号扩展高效物联传输网络DLS11是一款专为VSxxx系列采发仪设计的内置电池低功耗数据转发器,支持LoRA和LTE(4G)无线通信。该设备通过“实时在线”的LoRA收发器,能够收集并存储来自其他LoRA设备的数据。随后,DLS11会定时启动,将这些存储的数据重新打包为标准数据包,并通过LTE网络发送至远端服务器。数据发送方式灵活多
- 一文读懂stm32和51单片机的区别
对error说不
stm3251单片机嵌入式硬件
一、引言在嵌入式系统开发领域,STM32和51单片机是两款被广泛使用的微控制器。51单片机以其简单易学、成本低廉的特点,在早期的电子开发中占据了主导地位;而STM32作为后起之秀,凭借其高性能、丰富的外设和强大的处理能力,逐渐成为了中高端应用的首选。本文将从多个方面详细阐述STM32和51单片机的区别,并给出相应的代码示例进行对比。二、硬件架构2.1内核51单片机:采用8位的8051内核,数据处理
- [黑洞与暗粒子]没有光的世界
comsci
无论是相对论还是其它现代物理学,都显然有个缺陷,那就是必须有光才能够计算
但是,我相信,在我们的世界和宇宙平面中,肯定存在没有光的世界....
那么,在没有光的世界,光子和其它粒子的规律无法被应用和考察,那么以光速为核心的
&nbs
- jQuery Lazy Load 图片延迟加载
aijuans
jquery
基于 jQuery 的图片延迟加载插件,在用户滚动页面到图片之后才进行加载。
对于有较多的图片的网页,使用图片延迟加载,能有效的提高页面加载速度。
版本:
jQuery v1.4.4+
jQuery Lazy Load v1.7.2
注意事项:
需要真正实现图片延迟加载,必须将真实图片地址写在 data-original 属性中。若 src
- 使用Jodd的优点
Kai_Ge
jodd
1. 简化和统一 controller ,抛弃 extends SimpleFormController ,统一使用 implements Controller 的方式。
2. 简化 JSP 页面的 bind, 不需要一个字段一个字段的绑定。
3. 对 bean 没有任何要求,可以使用任意的 bean 做为 formBean。
使用方法简介
- jpa Query转hibernate Query
120153216
Hibernate
public List<Map> getMapList(String hql,
Map map) {
org.hibernate.Query jpaQuery = entityManager.createQuery(hql);
if (null != map) {
for (String parameter : map.keySet()) {
jp
- Django_Python3添加MySQL/MariaDB支持
2002wmj
mariaDB
现状
首先,
[email protected] 中默认的引擎为 django.db.backends.mysql 。但是在Python3中如果这样写的话,会发现 django.db.backends.mysql 依赖 MySQLdb[5] ,而 MySQLdb 又不兼容 Python3 于是要找一种新的方式来继续使用MySQL。 MySQL官方的方案
首先据MySQL文档[3]说,自从MySQL
- 在SQLSERVER中查找消耗IO最多的SQL
357029540
SQL Server
返回做IO数目最多的50条语句以及它们的执行计划。
select top 50
(total_logical_reads/execution_count) as avg_logical_reads,
(total_logical_writes/execution_count) as avg_logical_writes,
(tot
- spring UnChecked 异常 官方定义!
7454103
spring
如果你接触过spring的 事物管理!那么你必须明白 spring的 非捕获异常! 即 unchecked 异常! 因为 spring 默认这类异常事物自动回滚!!
public static boolean isCheckedException(Throwable ex)
{
return !(ex instanceof RuntimeExcep
- mongoDB 入门指南、示例
adminjun
javamongodb操作
一、准备工作
1、 下载mongoDB
下载地址:http://www.mongodb.org/downloads
选择合适你的版本
相关文档:http://www.mongodb.org/display/DOCS/Tutorial
2、 安装mongoDB
A、 不解压模式:
将下载下来的mongoDB-xxx.zip打开,找到bin目录,运行mongod.exe就可以启动服务,默
- CUDA 5 Release Candidate Now Available
aijuans
CUDA
The CUDA 5 Release Candidate is now available at http://developer.nvidia.com/<wbr></wbr>cuda/cuda-pre-production. Now applicable to a broader set of algorithms, CUDA 5 has advanced fe
- Essential Studio for WinRT网格控件测评
Axiba
JavaScripthtml5
Essential Studio for WinRT界面控件包含了商业平板应用程序开发中所需的所有控件,如市场上运行速度最快的grid 和chart、地图、RDL报表查看器、丰富的文本查看器及图表等等。同时,该控件还包含了一组独特的库,用于从WinRT应用程序中生成Excel、Word以及PDF格式的文件。此文将对其另外一个强大的控件——网格控件进行专门的测评详述。
网格控件功能
1、
- java 获取windows系统安装的证书或证书链
bewithme
windows
有时需要获取windows系统安装的证书或证书链,比如说你要通过证书来创建java的密钥库 。
有关证书链的解释可以查看此处 。
public static void main(String[] args) {
SunMSCAPI providerMSCAPI = new SunMSCAPI();
S
- NoSQL数据库之Redis数据库管理(set类型和zset类型)
bijian1013
redis数据库NoSQL
4.sets类型
Set是集合,它是string类型的无序集合。set是通过hash table实现的,添加、删除和查找的复杂度都是O(1)。对集合我们可以取并集、交集、差集。通过这些操作我们可以实现sns中的好友推荐和blog的tag功能。
sadd:向名称为key的set中添加元
- 异常捕获何时用Exception,何时用Throwable
bingyingao
用Exception的情况
try {
//可能发生空指针、数组溢出等异常
} catch (Exception e) {
 
- 【Kafka四】Kakfa伪分布式安装
bit1129
kafka
在http://bit1129.iteye.com/blog/2174791一文中,实现了单Kafka服务器的安装,在Kafka中,每个Kafka服务器称为一个broker。本文简单介绍下,在单机环境下Kafka的伪分布式安装和测试验证 1. 安装步骤
Kafka伪分布式安装的思路跟Zookeeper的伪分布式安装思路完全一样,不过比Zookeeper稍微简单些(不
- Project Euler
bookjovi
haskell
Project Euler是个数学问题求解网站,网站设计的很有意思,有很多problem,在未提交正确答案前不能查看problem的overview,也不能查看关于problem的discussion thread,只能看到现在problem已经被多少人解决了,人数越多往往代表问题越容易。
看看problem 1吧:
Add all the natural num
- Java-Collections Framework学习与总结-ArrayDeque
BrokenDreams
Collections
表、栈和队列是三种基本的数据结构,前面总结的ArrayList和LinkedList可以作为任意一种数据结构来使用,当然由于实现方式的不同,操作的效率也会不同。
这篇要看一下java.util.ArrayDeque。从命名上看
- 读《研磨设计模式》-代码笔记-装饰模式-Decorator
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.io.BufferedOutputStream;
import java.io.DataOutputStream;
import java.io.FileOutputStream;
import java.io.Fi
- Maven学习(一)
chenyu19891124
Maven私服
学习一门技术和工具总得花费一段时间,5月底6月初自己学习了一些工具,maven+Hudson+nexus的搭建,对于maven以前只是听说,顺便再自己的电脑上搭建了一个maven环境,但是完全不了解maven这一强大的构建工具,还有ant也是一个构建工具,但ant就没有maven那么的简单方便,其实简单点说maven是一个运用命令行就能完成构建,测试,打包,发布一系列功
- [原创]JWFD工作流引擎设计----节点匹配搜索算法(用于初步解决条件异步汇聚问题) 补充
comsci
算法工作PHP搜索引擎嵌入式
本文主要介绍在JWFD工作流引擎设计中遇到的一个实际问题的解决方案,请参考我的博文"带条件选择的并行汇聚路由问题"中图例A2描述的情况(http://comsci.iteye.com/blog/339756),我现在把我对图例A2的一个解决方案公布出来,请大家多指点
节点匹配搜索算法(用于解决标准对称流程图条件汇聚点运行控制参数的算法)
需要解决的问题:已知分支
- Linux中用shell获取昨天、明天或多天前的日期
daizj
linuxshell上几年昨天获取上几个月
在Linux中可以通过date命令获取昨天、明天、上个月、下个月、上一年和下一年
# 获取昨天
date -d 'yesterday' # 或 date -d 'last day'
# 获取明天
date -d 'tomorrow' # 或 date -d 'next day'
# 获取上个月
date -d 'last month'
#
- 我所理解的云计算
dongwei_6688
云计算
在刚开始接触到一个概念时,人们往往都会去探寻这个概念的含义,以达到对其有一个感性的认知,在Wikipedia上关于“云计算”是这么定义的,它说:
Cloud computing is a phrase used to describe a variety of computing co
- YII CMenu配置
dcj3sjt126com
yii
Adding id and class names to CMenu
We use the id and htmlOptions to accomplish this. Watch.
//in your view
$this->widget('zii.widgets.CMenu', array(
'id'=>'myMenu',
'items'=>$this-&g
- 设计模式之静态代理与动态代理
come_for_dream
设计模式
静态代理与动态代理
代理模式是java开发中用到的相对比较多的设计模式,其中的思想就是主业务和相关业务分离。所谓的代理设计就是指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其他相关业务的处理。比如我们在进行删除操作的时候需要检验一下用户是否登陆,我们可以删除看成主业务,而把检验用户是否登陆看成其相关业务
- 【转】理解Javascript 系列
gcc2ge
JavaScript
理解Javascript_13_执行模型详解
摘要: 在《理解Javascript_12_执行模型浅析》一文中,我们初步的了解了执行上下文与作用域的概念,那么这一篇将深入分析执行上下文的构建过程,了解执行上下文、函数对象、作用域三者之间的关系。函数执行环境简单的代码:当调用say方法时,第一步是创建其执行环境,在创建执行环境的过程中,会按照定义的先后顺序完成一系列操作:1.首先会创建一个
- Subsets II
hcx2013
set
Given a collection of integers that might contain duplicates, nums, return all possible subsets.
Note:
Elements in a subset must be in non-descending order.
The solution set must not conta
- Spring4.1新特性——Spring缓存框架增强
jinnianshilongnian
spring4
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- shell嵌套expect执行命令
liyonghui160com
一直都想把expect的操作写到bash脚本里,这样就不用我再写两个脚本来执行了,搞了一下午终于有点小成就,给大家看看吧.
系统:centos 5.x
1.先安装expect
yum -y install expect
2.脚本内容:
cat auto_svn.sh
#!/bin/bash
- Linux实用命令整理
pda158
linux
0. 基本命令 linux 基本命令整理
1. 压缩 解压 tar -zcvf a.tar.gz a #把a压缩成a.tar.gz tar -zxvf a.tar.gz #把a.tar.gz解压成a
2. vim小结 2.1 vim替换 :m,ns/word_1/word_2/gc  
- 独立开发人员通向成功的29个小贴士
shoothao
独立开发
概述:本文收集了关于独立开发人员通向成功需要注意的一些东西,对于具体的每个贴士的注解有兴趣的朋友可以查看下面标注的原文地址。
明白你从事独立开发的原因和目的。
保持坚持制定计划的好习惯。
万事开头难,第一份订单是关键。
培养多元化业务技能。
提供卓越的服务和品质。
谨小慎微。
营销是必备技能。
学会组织,有条理的工作才是最有效率的。
“独立
- JAVA中堆栈和内存分配原理
uule
java
1、栈、堆
1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域:存放静态成员(static定义的)5. 常量池:存放字符串常量和基本类型常量(public static f