- Linux I/O 文件操作详解:从系统调用到实际工程应用
平凡灵感码头
linux学习linux运维服务器
一、写在前面在Linux或任何类Unix操作系统中,文件是一切的核心——无论是硬盘上的文本文件,还是串口设备、GPIO寄存器、甚至网络接口,几乎都被抽象为“文件”。理解Linux下的I/O文件操作机制,不仅是嵌入式开发的基础,也是进行系统编程与底层控制的关键。二、I/O的本质:一切皆文件Linux将外设抽象成文件的方式,统一了对各种资源的操作模型。你可以用open打开串口设备/dev/ttyS0,
- Memfault 简介及在Nordic nRF91 系列 DK的应用
1:Memfault是一个云平台,它允许您和您的团队持续监控设备、调试固件问题,并将OTA更新部署到您的设备群,从而以软件的速度交付硬件产品。Memfault以嵌入式优先:支持运行在任何实时操作系统(RTOS)或Android、Linux等操作系统上的嵌入式系统和设备它适用于任何设备:从功能强大的SoC一直到功能受限的MCU,Memfault都能适配您设备的可用闪存、RAM和带宽我们的SDK是专为
- Linux 设备树详解:从概念到实战
Jay_515
Linux学习嵌入式linux设备树
关键词:设备树(DeviceTree)、DTS、DTC、DTB、嵌入式Linux驱动开发为什么需要设备树?在旧版Linux内核中,硬件信息(如内存映射、外设地址、中断号等)直接硬编码在内核源码中。这导致:内核臃肿,需为不同硬件编译不同版本硬件变动需重新编译内核代码冗余严重(一个board-*.c文件对应一块开发板)设备树(DeviceTree)的引入彻底解决了这一问题!它通过描述硬件拓扑结构的文本
- 嵌入式开发中.su文件的作用
小米人儿
我的博客嵌入式
reference:https://interrupt.memfault.com/blog/measuring-stack-usagehttps://github.com/ttsiodras/checkStackUsage测试代码#includeintfoo_2(intc){intarray[4];array[1]=c;array[3]=c*c;returnarray[3]-array[1];}i
- 基于GD32F4XX的CAN总线消息处理系统
森焱森
c语言架构驱动开发单片机算法
基于GD32F4XX的CAN总线消息处理系统在嵌入式系统开发中,CAN总线广泛应用于汽车、工业自动化等领域。高效处理CAN总线数据对于系统性能至关重要。本文介绍基于GD32F4XX的CAN总线消息接收和解析系统,利用环形缓冲区和函数指针实现高效、灵活的数据处理。核心实现-环形缓冲区环形缓冲区用于暂存接收到的CAN消息,防止数据丢失。支持两种模式:正常模式(缓冲区满则丢弃新数据)和覆盖模式(缓冲区满
- 嵌入式八股文
NAccept
c语言
对一个寄存器某个位进行改变,用位操作怎么做new对象时,怎么知道内存是否分配成功浮点数在计算机中怎么存储模板使用和多态左值和右值的区别静态链接,动态链接引用传递define宏lambda表达式和变量捕获C++面向对象多态实现,模板算不算多态?C++类的组合虚拟内存(为了解决什么问题)线程与进程的区别?进程间的通信方式进程的虚拟地址空间划分线程安全和线程不安全内存分段和分页new对象时,怎么知道内存
- 基于51单片机开发多功能菜单系统项目介绍(开源)
菜鸟—历险记
51单片机嵌入式硬件单片机
51单片机多功能菜单系统一、项目介绍基于51单片机开发的多功能菜单系统是一种集成多种功能的嵌入式系统,广泛应用于电子产品中,该系统的核心是AT89C52芯片,其强大的处理能力和丰富的外设接口使其成为许多项目的理想选择。这是一个有趣且实用的项目,可以帮助用户实现多种功能,我设计了的功能有:矩阵键盘输入密码、PWM直流电机驱动风扇调速、DS18B20温度监控、光敏电阻检测模块、加减乘除计算器、人的BM
- 第 1 章 嵌入式C语言概述
KPing.
嵌入式C语言编程入门c语言stm32
嵌入式C语言是一种用于编写嵌入式系统软件的编程语言。嵌入式系统是指嵌入在其他设备或系统中的计算机系统,通常用于控制和监控硬件设备的操作。嵌入式C语言是一种高级语言,它提供了一种结构化的编程方法,并且具有适应嵌入式系统特性的特定语法和功能。嵌入式C语言主要用于开发嵌入式系统的底层软件,包括驱动程序、操作系统、实时系统和应用程序等。与传统的桌面应用程序相比,嵌入式系统通常具有资源有限、实时性要求高、对
- 【软件系统架构】系列四:嵌入式软件-M2M 与 NPU 技术对比及协同设计方案
目录一、基本定义二、技术目标差异三、架构组成对比四、功能能力对比五、应用场景对比六、综合对比总结表七、协同场景建议八、M2M+NPU协同系统设计方案1.系统架构图(简化逻辑)2.模块划分与功能说明三、通信时序图(关键路径)四、数据协议定义(JSON)上报事件(推理结果)云端控制命令五、协同机制设计建议六、典型应用示例(如:AI门锁、边缘安防)一、基本定义项目M2M(MachinetoMachine
- 【软件系统架构】系列四:嵌入式软件-CMMI 安全认证标准及认证所需资源模板
34号树洞
自学软件系统架构嵌入式硬件系统架构CMMI
目录CMMI能力成熟度模型集成详解一、什么是CMMI?二、核心价值三、五个成熟度等级(MaturityLevels)四、CMMI模型结构(V2.0为例)1.领域(Domains)2.能力域(PracticeAreas,PAs)3.实践(Practices)4.能力等级(CapabilityLevels)五、CMMI认证流程六、常见输出物(过程资产模板)七、CMMIvsDO-178B对比(典型对比)
- 【软件系统架构】系列四:嵌入式软件开发流程全解析(包含示例)
34号树洞
自学软件系统架构大数据系统架构嵌入式
目录一、需求分析阶段二、系统架构设计阶段:三、开发准备阶段四、底层驱动开发阶段(HAL/BSP)五、操作系统集成阶段(RTOS/OS)六、中间件与协议栈集成阶段七、应用逻辑开发阶段八、调试与测试阶段:九、集成与联调阶段十、发布与维护阶段总结:完整开发流程图附:ESP32智能锁完整开发流程(含源码结构与文档模板)1.项目概述项目名称:功能特性:2.项目源码结构(推荐)3.开发流程分解(与上文流程对齐
- 系统架构设计综合知识(1.2)嵌入式系统
Curtain_0216
系统架构设计师系统架构架构
前言这里主要内容为系统架构设计师教程(第二版)上对应2.4,嵌入式系统,教材中对于嵌入式描述十分简略只介绍了基本概念,虽然偶尔会考到,但考的时候就一直超纲这里内容较少,后续会逐步进行补充。文档内容是看了视频后整理,如有遗漏,欢迎评论补充。刷题使用51CTO小程序如果大家有更好的可以分享一下。文章目录前言嵌入式技术嵌入式系统嵌入式微处理器嵌入式微处理器体系结构嵌入式微处理器分类多核处理器结构嵌入式软
- 【软件系统架构】系列四:嵌入式软件-NPU(神经网络处理器)系统及模板
目录一、什么是NPU?二、NPU与CPU/GPU/DSP对比三、NPU的工作原理核心结构:数据流架构:四、NPU芯片架构(简化图)五、NPU的优势六、NPU应用场景视觉识别语音识别自动驾驶智能监控AIoT设备七、主流NPU芯片/架构实例八、开发者工具生态(通用)九、NPU集成建议(嵌入式开发场景)十、NPU芯片选型对比+模型部署流程+嵌入式工程模板1.主流NPU芯片选型对比表2.模型部署流程(以T
- 一些针对FOC算法的 Clark/Park变换 和 SVPWM生成 的案例代码
鹿屿二向箔
算法
以下是一些针对FOC算法的Clark/Park变换和SVPWM生成的案例代码,涵盖Python仿真、C语言嵌入式实现和ArduinoSimpleFOC库的示例。代码将保持简洁,并附带关键注释。1.Python仿真示例(1)Clark/Park变换实现importnumpyasnpdefclark_transform(ia,ib,ic):"""Clark变换(幅值不变,k=2/3)"""i_alph
- FPGA与Verilog实现的Cordic算法测试项目
weixin_42668301
本文还有配套的精品资源,点击获取简介:Cordic算法是一种在FPGA和Verilog硬件描述语言中实现高效的数值计算技术,它简化了硬件资源需求,特别适合资源有限的嵌入式系统。通过模块化设计,Cordic算法可以拆分为多个子模块来实现,包括旋转步骤、误差校正和控制逻辑等。该算法通过迭代过程逼近目标值,无需乘法器,从而减少了硬件资源消耗并提高了效率。在实现时需要考虑位宽、迭代次数和误差处理等因素,以
- 特斯拉及新能源车企笔试面试题型解析上-21期
启芯硬件笔记
经验分享PCBEMI硬件工程面试职场和发展
本专栏预计更新90期左右。当前第21期-特斯拉硬件.特斯拉作为全球领先的电动汽车、能源存储和人工智能公司,其硬件工程师岗位的招聘通常包括笔试和多轮技术面试,考察领域涵盖数字电路设计、模拟电路、嵌入式系统、电动车技术和自动驾驶等。由于特斯拉的创新性和技术领先地位,其面试问题可能更加注重实际应用和问题解决能力。笔试通常旨在考察候选人的基础理论知识、问题分析能力、电路设计与调试经验、以及对相关工具和方法
- ARM嵌入式核心板赋能体外诊断POCT、超声、AED设备解决方案
学海无涯_come on
医疗器械单片机ARM开发arm开发
一、ARM嵌入式核心板赋能体外诊断POCT设备解决方案近年,POCT(即时检验)作为IVD(体外诊断)的细分领域,市场规模持续增加。POCT(point-of-caretesting)即时检验,指在病人旁边进行的临床检测及床边检测(bedsidetesting),是利用便携式分析仪器以及配套试剂快速得到检测结果的一种检测方式。常见的POCT设备有生化分析仪、免疫分析仪、PCR仪等,采用干化学、免疫
- 深入解析 SSD FW 顶层架构之 OS 元素:挑战与应对
Richard_Lynn
SSD架构SSDFTLOSIO
在SSD(固态硬盘)固件(FW)的复杂顶层架构中,OS(操作系统)元素扮演着至关重要的角色,它参考嵌入式操作系统,承担着启动、任务调度、内存管理、调试手段提供等关键功能,同时也面临着一系列棘手的挑战。下面我们就来深入剖析这一架构元素,聊聊它在SSD开发过程中带来的难题与应对思路。一、OS元素的核心功能与价值(一)基础支撑功能OS在SSDFW架构里,是整个系统的“大管家”。它负责启动流程,有序初始化
- 【OpenHarmony】二维码生成器:qr-code-generator
mn_xiaona666
鸿蒙开发移动开发OpenHarmonyharmonyosOpenHarmony移动开发鸿蒙开发三方库
往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)✏️鸿蒙应用开发与鸿蒙系统开发哪个更有前景?✏️嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~✏️对于大前端开发来说,转鸿蒙开发究竟是福还是祸?✏️鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?✏️市场巨变,移动开发行业即将迎来“第二春”?✏️记录一场鸿蒙开发岗位面试经历~✏️持续更新中……简介用于生成符合国际标准的高质量QR码
- 【OpenHarmony】轻便易用的JSON模式验证器:jsonschema
mn_xiaona666
移动开发OpenHarmony鸿蒙开发jsonharmonyosopenharmony鸿蒙开发移动开发Json
往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)✏️鸿蒙应用开发与鸿蒙系统开发哪个更有前景?✏️嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~✏️对于大前端开发来说,转鸿蒙开发究竟是福还是祸?✏️鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?✏️市场巨变,移动开发行业即将迎来“第二春”?✏️记录一场鸿蒙开发岗位面试经历~✏️持续更新中……简介jsonschema是一个轻便易用
- 结合 STM32CubeMX 使用 FreeRTOS 实时操作系统
麻辣长颈鹿Sir
FreeRTOS嵌入式开发C/C++stm32单片机FreeRTOSSTM32CubeMX实时操作系统C/C++
前言在STM32CubeMX软件出现以后,创建嵌入式项目变得简洁了许多,开发者无需重复编写MCU的外设初始化配置,只需在STM32CubeMX软件中动动鼠标配置完毕,就可以自动生成基于HAL/LL库的Keil项目文件,提高了开发效率。最近想要学习一下FreeRTOS操作系统,发现在STM32CubeMX中可以直接在项目中生成FreeRTOS系统源码,非常方便,而目前网上有关使用STM32CubeM
- 鸿蒙开发5.0案例分析:TaskPool数据库操作实战
程东升6
HarmonyOS移动开发鸿蒙开发harmonyos数据库鸿蒙开发移动开发ArkUITaskPool多线程
往期推文全新看点(文中附带最新·鸿蒙全栈学习笔记)市场巨变,移动开发行业即将迎来“第二春”?鸿蒙应用开发与鸿蒙系统开发哪个更有前景?嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~对于大前端开发来说,转鸿蒙开发究竟是福还是祸?鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?记录一场鸿蒙开发岗位面试经历~持续更新中……介绍本实例通过列表场景实例讲解,介绍在TaskPool线程中操作关系型
- AUTOSAR汽车电子嵌入式编程精讲300篇-基于CAN总线的气动控制(中)
格图素书
汽车
目录2.2CAN总线技术及TTCAN协议2.2.1CAN总线技术2.2.2TTCAN协议3气动系统的定位控制研究3.1滑模控制原理3.1.1滑模控制概念和特性3.1.2滑模控制的抖振问题3.1.3非奇异终端滑模控制3.2气动系统定位控制策略设计3.2.1跟踪微分器的设计3.2.2非奇异终端滑模控制器的设计3.2.3滑模变结构扩张状态观测器的设计3.2.4基于扩张状态观测器的非奇异终端滑模控制器3.
- 67、故障注入:提升嵌入式系统可靠性的关键技术
职场老油条170
嵌入式系统设计:从理论到实践故障注入嵌入式系统可靠性
故障注入:提升嵌入式系统可靠性的关键技术1.故障注入的意义在嵌入式系统的设计和验证过程中,确保系统在出现故障时依然能够正常运行或安全地进入故障状态至关重要。故障模拟虽然是验证系统行为的一种方法,但对于真实系统而言,它可能过于耗时且难以实现。因此,故障注入作为一种替代方法,越来越受到重视。故障注入通过修改实际系统中的某些组件或环境条件,来检查系统在故障情况下的反应,从而验证系统的容错能力和可靠性。故
- 大模型·知识蒸馏·学习笔记
小先生00101
笔记人工智能神经网络机器学习自然语言处理深度学习语言模型
第一部分:核心概念入门1.1什么是知识蒸馏?核心问题:深度学习模型(如大型神经网络)虽然性能强大,但其巨大的参数量和计算需求使其难以部署到手机、嵌入式设备等资源受限的平台。核心思想:知识蒸馏是一种模型压缩和优化的技术,其灵感来源于“教师-学生”范式。我们先训练一个复杂但性能强大的“教师模型”,然后利用这个教师模型来指导一个轻量级的“学生模型”进行学习。生动的比喻(Hinton,2015):这个过程
- 工业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。
- rust做嵌入式开发_用Rust重写Linux内核模块体验
weixin_39614060
rust做嵌入式开发
最近,我用Rust重写了一个2W+行C代码的linux内核模块。在此记录一点经验。我此前没写过内核模块,认识比较疏浅,有错误欢迎指正。为什么要重写?这个模块2W+行代码量看起来不多,却在线上时常故障,永远改不完。十多年的老代码,经手了无数程序员,没人能解决其中的内存安全问题。拿过来一看,代码中的确有不少会产生UB的写法,线上的故障从core来看都飘得太远,难以定位根本原因在哪里。所以我没有把握(没
- STM32[笔记]--4.嵌入式硬件基础
wind_one1
STM32入门教程stm32嵌入式硬件笔记
4.嵌入式硬件基础4.1认识上官二号开发板主控芯片:STM32F103C8T6高速晶振:8M低速晶振:32.768kLED:5颗KEY:3个主控芯片内部的资源如下项目介绍内核Cortex-M3Flsah64K*8bitSRAM20K*8bitGPIO37个GPIO,分别为PA0-PB15,PC13-PC15,PD0-PD1ADC2个12bitADC合计12了通道,外部通道:PA0到PA7+PB0到
- SPI NOR FLASH是什么,与SPI NAND Flash的区别
义嘉泰IC烧录服务
前端javascript网络
SPINORFLASH是什么?SPINORFLASH是一种非易失性存储器,它通过串行接口进行数据传输,具有读写速度快、可靠性高、体积小等优点。它采用类似SRAM的存储方式,每个存储单元存储一位数据(0或1),可以直接寻址,寻址速度非常快。SPINORFLASH支持全双工、单工以及半双工传输方式,被广泛应用于嵌入式系统中,如Bootloader、操作系统内核等程序的存储。由于它的读写速度和寻址方式类
- 一个轻量级、可移植、支持层级状态的 C 语言状态机框架,适用于嵌入式和Linux应用
橘色的喵
Linux嵌入式性能优化功能优化c语言linux驱动开发状态机HSMFSMstate_machine
一个轻量级、可移植、支持层级状态的C语言状态机框架,适用于嵌入式和Linux应用1.介绍一个轻量级、可移植、支持层级状态的C语言状态机框架,适用于嵌入式和Linux应用。本框架采用数据驱动方式,支持父子状态、入口/出口动作、守卫条件、外部/内部转换、未处理事件钩子等特性。本文修改后的版本:https://gitee.com/liudegui/state_machineRT-Thread社区维护的版
- Dom
周华华
JavaScripthtml
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
- 【Spark九十六】RDD API之combineByKey
bit1129
spark
1. combineByKey函数的运行机制
RDD提供了很多针对元素类型为(K,V)的API,这些API封装在PairRDDFunctions类中,通过Scala隐式转换使用。这些API实现上是借助于combineByKey实现的。combineByKey函数本身也是RDD开放给Spark开发人员使用的API之一
首先看一下combineByKey的方法说明:
- msyql设置密码报错:ERROR 1372 (HY000): 解决方法详解
daizj
mysql设置密码
MySql给用户设置权限同时指定访问密码时,会提示如下错误:
ERROR 1372 (HY000): Password hash should be a 41-digit hexadecimal number;
问题原因:你输入的密码是明文。不允许这么输入。
解决办法:用select password('你想输入的密码');查询出你的密码对应的字符串,
然后
- 路漫漫其修远兮 吾将上下而求索
周凡杨
学习 思索
王国维在他的《人间词话》中曾经概括了为学的三种境界古今之成大事业、大学问者,罔不经过三种之境界。“昨夜西风凋碧树。独上高楼,望尽天涯路。”此第一境界也。“衣带渐宽终不悔,为伊消得人憔悴。”此第二境界也。“众里寻他千百度,蓦然回首,那人却在灯火阑珊处。”此第三境界也。学习技术,这也是你必须经历的三种境界。第一层境界是说,学习的路是漫漫的,你必须做好充分的思想准备,如果半途而废还不如不要开始。这里,注
- Hadoop(二)对话单的操作
朱辉辉33
hadoop
Debug:
1、
A = LOAD '/user/hue/task.txt' USING PigStorage(' ')
AS (col1,col2,col3);
DUMP A;
//输出结果前几行示例:
(>ggsnPDPRecord(21),,)
(-->recordType(0),,)
(-->networkInitiation(1),,)
- web报表工具FineReport常用函数的用法总结(日期和时间函数)
老A不折腾
finereport报表工具web开发
web报表工具FineReport常用函数的用法总结(日期和时间函数)
说明:凡函数中以日期作为参数因子的,其中日期的形式都必须是yy/mm/dd。而且必须用英文环境下双引号(" ")引用。
DATE
DATE(year,month,day):返回一个表示某一特定日期的系列数。
Year:代表年,可为一到四位数。
Month:代表月份。
- c++ 宏定义中的##操作符
墙头上一根草
C++
#与##在宏定义中的--宏展开 #include <stdio.h> #define f(a,b) a##b #define g(a) #a #define h(a) g(a) int main() { &nbs
- 分析Spring源代码之,DI的实现
aijuans
springDI现源代码
(转)
分析Spring源代码之,DI的实现
2012/1/3 by tony
接着上次的讲,以下这个sample
[java]
view plain
copy
print
- for循环的进化
alxw4616
JavaScript
// for循环的进化
// 菜鸟
for (var i = 0; i < Things.length ; i++) {
// Things[i]
}
// 老鸟
for (var i = 0, len = Things.length; i < len; i++) {
// Things[i]
}
// 大师
for (var i = Things.le
- 网络编程Socket和ServerSocket简单的使用
百合不是茶
网络编程基础IP地址端口
网络编程;TCP/IP协议
网络:实现计算机之间的信息共享,数据资源的交换
协议:数据交换需要遵守的一种协议,按照约定的数据格式等写出去
端口:用于计算机之间的通信
每运行一个程序,系统会分配一个编号给该程序,作为和外界交换数据的唯一标识
0~65535
查看被使用的
- JDK1.5 生产消费者
bijian1013
javathread生产消费者java多线程
ArrayBlockingQueue:
一个由数组支持的有界阻塞队列。此队列按 FIFO(先进先出)原则对元素进行排序。队列的头部 是在队列中存在时间最长的元素。队列的尾部 是在队列中存在时间最短的元素。新元素插入到队列的尾部,队列检索操作则是从队列头部开始获得元素。
ArrayBlockingQueue的常用方法:
- JAVA版身份证获取性别、出生日期及年龄
bijian1013
java性别出生日期年龄
工作中需要根据身份证获取性别、出生日期及年龄,且要还要支持15位长度的身份证号码,网上搜索了一下,经过测试好像多少存在点问题,干脆自已写一个。
CertificateNo.java
package com.bijian.study;
import java.util.Calendar;
import
- 【Java范型六】范型与枚举
bit1129
java
首先,枚举类型的定义不能带有类型参数,所以,不能把枚举类型定义为范型枚举类,例如下面的枚举类定义是有编译错的
public enum EnumGenerics<T> { //编译错,提示枚举不能带有范型参数
OK, ERROR;
public <T> T get(T type) {
return null;
- 【Nginx五】Nginx常用日志格式含义
bit1129
nginx
1. log_format
1.1 log_format指令用于指定日志的格式,格式:
log_format name(格式名称) type(格式样式)
1.2 如下是一个常用的Nginx日志格式:
log_format main '[$time_local]|$request_time|$status|$body_bytes
- Lua 语言 15 分钟快速入门
ronin47
lua 基础
-
-
单行注释
-
-
[[
[多行注释]
-
-
]]
-
-
-
-
-
-
-
-
-
-
-
1.
变量 & 控制流
-
-
-
-
-
-
-
-
-
-
num
=
23
-
-
数字都是双精度
str
=
'aspythonstring'
- java-35.求一个矩阵中最大的二维矩阵 ( 元素和最大 )
bylijinnan
java
the idea is from:
http://blog.csdn.net/zhanxinhang/article/details/6731134
public class MaxSubMatrix {
/**see http://blog.csdn.net/zhanxinhang/article/details/6731134
* Q35
求一个矩阵中最大的二维
- mongoDB文档型数据库特点
开窍的石头
mongoDB文档型数据库特点
MongoDD: 文档型数据库存储的是Bson文档-->json的二进制
特点:内部是执行引擎是js解释器,把文档转成Bson结构,在查询时转换成js对象。
mongoDB传统型数据库对比
传统类型数据库:结构化数据,定好了表结构后每一个内容符合表结构的。也就是说每一行每一列的数据都是一样的
文档型数据库:不用定好数据结构,
- [毕业季节]欢迎广大毕业生加入JAVA程序员的行列
comsci
java
一年一度的毕业季来临了。。。。。。。。
正在投简历的学弟学妹们。。。如果觉得学校推荐的单位和公司不适合自己的兴趣和专业,可以考虑来我们软件行业,做一名职业程序员。。。
软件行业的开发工具中,对初学者最友好的就是JAVA语言了,网络上不仅仅有大量的
- PHP操作Excel – PHPExcel 基本用法详解
cuiyadll
PHPExcel
导出excel属性设置//Include classrequire_once('Classes/PHPExcel.php');require_once('Classes/PHPExcel/Writer/Excel2007.php');$objPHPExcel = new PHPExcel();//Set properties 设置文件属性$objPHPExcel->getProperties
- IBM Webshpere MQ Client User Issue (MCAUSER)
darrenzhu
IBMjmsuserMQMCAUSER
IBM MQ JMS Client去连接远端MQ Server的时候,需要提供User和Password吗?
答案是根据情况而定,取决于所定义的Channel里面的属性Message channel agent user identifier (MCAUSER)的设置。
http://stackoverflow.com/questions/20209429/how-mca-user-i
- 网线的接法
dcj3sjt126com
一、PC连HUB (直连线)A端:(标准568B):白橙,橙,白绿,蓝,白蓝,绿,白棕,棕。 B端:(标准568B):白橙,橙,白绿,蓝,白蓝,绿,白棕,棕。 二、PC连PC (交叉线)A端:(568A): 白绿,绿,白橙,蓝,白蓝,橙,白棕,棕; B端:(标准568B):白橙,橙,白绿,蓝,白蓝,绿,白棕,棕。 三、HUB连HUB&nb
- Vimium插件让键盘党像操作Vim一样操作Chrome
dcj3sjt126com
chromevim
什么是键盘党?
键盘党是指尽可能将所有电脑操作用键盘来完成,而不去动鼠标的人。鼠标应该说是新手们的最爱,很直观,指哪点哪,很听话!不过常常使用电脑的人,如果一直使用鼠标的话,手会发酸,因为操作鼠标的时候,手臂不是在一个自然的状态,臂肌会处于绷紧状态。而使用键盘则双手是放松状态,只有手指在动。而且尽量少的从鼠标移动到键盘来回操作,也省不少事。
在chrome里安装 vimium 插件
- MongoDB查询(2)——数组查询[六]
eksliang
mongodbMongoDB查询数组
MongoDB查询数组
转载请出自出处:http://eksliang.iteye.com/blog/2177292 一、概述
MongoDB查询数组与查询标量值是一样的,例如,有一个水果列表,如下所示:
> db.food.find()
{ "_id" : "001", "fruits" : [ "苹
- cordova读写文件(1)
gundumw100
JavaScriptCordova
使用cordova可以很方便的在手机sdcard中读写文件。
首先需要安装cordova插件:file
命令为:
cordova plugin add org.apache.cordova.file
然后就可以读写文件了,这里我先是写入一个文件,具体的JS代码为:
var datas=null;//datas need write
var directory=&
- HTML5 FormData 进行文件jquery ajax 上传 到又拍云
ileson
jqueryAjaxhtml5FormData
html5 新东西:FormData 可以提交二进制数据。
页面test.html
<!DOCTYPE>
<html>
<head>
<title> formdata file jquery ajax upload</title>
</head>
<body>
<
- swift appearanceWhenContainedIn:(version1.2 xcode6.4)
啸笑天
version
swift1.2中没有oc中对应的方法:
+ (instancetype)appearanceWhenContainedIn:(Class <UIAppearanceContainer>)ContainerClass, ... NS_REQUIRES_NIL_TERMINATION;
解决方法:
在swift项目中新建oc类如下:
#import &
- java实现SMTP邮件服务器
macroli
java编程
电子邮件传递可以由多种协议来实现。目前,在Internet 网上最流行的三种电子邮件协议是SMTP、POP3 和 IMAP,下面分别简单介绍。
◆ SMTP 协议
简单邮件传输协议(Simple Mail Transfer Protocol,SMTP)是一个运行在TCP/IP之上的协议,用它发送和接收电子邮件。SMTP 服务器在默认端口25上监听。SMTP客户使用一组简单的、基于文本的
- mongodb group by having where 查询sql
qiaolevip
每天进步一点点学习永无止境mongo纵观千象
SELECT cust_id,
SUM(price) as total
FROM orders
WHERE status = 'A'
GROUP BY cust_id
HAVING total > 250
db.orders.aggregate( [
{ $match: { status: 'A' } },
{
$group: {
- Struts2 Pojo(六)
Luob.
POJOstrust2
注意:附件中有完整案例
1.采用POJO对象的方法进行赋值和传值
2.web配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee&q
- struts2步骤
wuai
struts
1、添加jar包
2、在web.xml中配置过滤器
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.st