- 小米嵌入式面试题目RTOS面试题目 嵌入式面试题目
好家伙VCC
面试杂谈杂谈面试职场和发展
第一章-非RTOSbootloader工作流程MCU启动流程通信协议,SPIIICMCU怎么选型,STM32F1和F4有什么区别外部RAM和内部RAM区别,怎么分配外部总线和内部总线区别MCU上的固件,数据是怎么分配的MCU启动流程IAP是怎么升级的,突然断电怎么办挑了麦轮项目(因为大疆RM也是麦轮,面试官看样子比较感兴趣)为什么用的CAN总线你说一下spi和i2c和UART的各自的工作方式优缺点
- stm32f4串口接收与发送
朴实妲己
单片机stm32嵌入式硬件
之前有写一篇stm32f1串口接收与发送的文章,stm32f4与f1只有配置上的一点不同,今天把f4的串口接收与发送代码分享一下详细解释推荐大家看f1那篇,都是一样的,stm32f1串口发送与接收_居安士的博客-CSDN博客_stm32串口通信的接收与发送直接上代码voiduart_init(u32bound){//GPIO端口设置GPIO_InitTypeDefGPIO_InitStructur
- GD32F103单片机-GPIO
侥幸哥f
GD32单片机GD32GPIO
GD32F103单片机-GPIO一、GPIO介绍二、GD32F103库函数介绍三、GPIO输入输出3.1GPIO输出-LED闪烁3.2GPIO输入-独立按键STM32GPIO部分见STM32F1单片机-GPIO一、GPIO介绍GD32的GPIO同STM32一样,GPIO可以配置成8种输入输出模式,由软件配置成推挽输出、开漏输出、复用推挽输出、复用开漏输出、上拉输入、下拉输入、浮空输入、模拟输入(A
- 【STM32F1例程15】VL53L0X激光测距实验
不会计算机的g_c__b
STM32嵌入式开发stm32嵌入式硬件单片机
实验说明这个实验好像从字面上感觉又高级了一点,还是先给大家做个介绍吧。VL53L0X是一款由STMicroelectronics(意法半导体)生产的激光测距传感器模块,它使用了飞行时间(Time-of-Flight,ToF)技术来测量距离。这种技术通过发射一个不可见的激光脉冲并测量该脉冲从传感器到目标物体再反射回来所需的时间来计算距离。VL53L0X因其小型尺寸、低功耗和高精度而广泛应用于各种测距
- 标准库STM32F1_USART2_DMA接收发送数据源码分享直接复制能用
谢谢~谢先生
1024程序员节stm32笔记
标准库STM32F1_USART2_DMA接收发送数据源码分享直接复制能用STM32的DMA通道表:现有一个小需求,使用STM32F1系列单片机做串口2的收发数据的功能,通过PC上的串口调试助手给单片机发一串数据,单片机收到数据后再给PC的串口调试助手发回去。本次使用的是串口DMA方式接收数据,和DMA方式发送数据。STM32使用USART2,对应单片机的PA1控制方向,PA2发送,PA3接收。代
- STM32F1 - 中断系统
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
Interrupt1>硬件框图2>NVIC中断管理3>EXTI中断管理3.1>EXTI与NVIC3.2>EXTI内部框图4>外部中断实验4.1>实验概述4.2>程序设计5>中断向量表6>总中断开关7>总结1>硬件框图NVIC:NestedVectoredInterruptController【嵌套向量中断控制器】管理内核外设和片上外设的所有中断功能;EXTI:ExternalInterrupt【外
- STM32 USART详细解读(理论知识)
花落已飘
STM32框架式编程stm32嵌入式硬件单片机
文章目录前言一、同步传输和异步传输二、UART协议三、UART硬件结构1.波特率,数据位,校验位,停止位设置2.数据发送流程3.数据接收流程4.中断控制总结前言本篇文章来给大家讲解一下STM32中的USART,USART是STM32中非常重要的一个模块,本篇文章将从STM32F1的参考手册出发进行讲解。一、同步传输和异步传输同步传输和异步传输是指在数据通信中数据传输的两种基本方式。它们之间的主要区
- STM32F1后备寄存器(BKP)和实时时钟(RTC)
Little BigUs
嵌入式学习stm32单片机
今天在看正点原子RTC实验的时候有个地方一直有点疑惑,他说系统主电源断电但有BAT供电时备份寄存器的内容不会丢失。然后RTC的框图如下:可以看到有一个“后备区域”,里面有PRL、DIV、CNT、ALR等寄存器,这些寄存器属于后备寄存器吗?如果不属于那为什么他们的内容也不会丢失呢?最终在电源的框图中找到了答案:可以看到有一个后备供电区域,里面有四项:LSE32K晶体振荡器后备寄存器RCCBDCR寄存
- STM32串口通信配置细节
Chorgy
本科发布内容(较杂)stm32嵌入式
目录STM32f1库函数开发学习实战二·串口通信1.背景知识2.usart文件夹介绍3.硬件电路4.主函数的一些说明STM32f1库函数开发学习实战二·串口通信1.背景知识DMA通信方式LIN总线DMA,DirectMemoryAccess,存储器直接访问,一种高速数据传输操作,允许外设与存储器、外设与外设之间直接交换数据。CPU和DMA控制器的传输过程处于并行操作状态,大大提高整个计算机系统效率
- STM32F1 - GPIO外设
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
GPIO1>硬件框图2>工作模式1>硬件框图2>工作模式C语言描述/***@briefConfigurationModeenumeration*/typedefenum{GPIO_Mode_AIN=0x0,//AnalogInput模拟输入GPIO_Mode_IN_FLOATING=0x04,//inputfloating浮空输入GPIO_Mode_IPD=0x28,//Inputpull-dow
- 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面试相关问题
枫-琳
stm32学习单片机面试笔记
STM32面试相关问题:STM32的内核型号,主频,传感器和单片机总线类型,IIC,SPI,RS485UART数据帧项目中一些参数的设置STM32系统移植ARM编译常用的驱动编写方式自己写过哪些方面驱动其实如果问32的问题,他一般试看项目提问的,1.串口2.总线3.中断4.项目流程5.保证你项目中提到的都要会嵌入式面试知识点总结--STM32相关一、MCU对比问题:问题一:STM32F1和F4的区
- STM32F1 - 源码解析SystemInit()
零号-轩工
STM32F1-外设驱动stm32单片机嵌入式硬件
SystemInit1>SystemInit()调用位置2>SystemInit()函数3>SetSysClock()函数4>SetSysClockTo72()函数1>SystemInit()调用位置startup_stm32f10x_hd.s文件中:;ResethandlerReset_HandlerPROCEXPORTReset_Handler[WEAK]IMPORT__mainIMPORTS
- STM32F1 - 启动文件startup_stm32f10x_hd.s
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
startup_stm32f10x_hd.s1>启动文件类型2>启动文件干了点啥?2.1>设置栈2.2>设置堆2.3>设置中断向量表2.4>复位程序2.5>中断服务函数2.6>用户栈和堆的初始化3>__main库函数1>启动文件类型标准库中提供:启动文件(汇编代码)表格来自stm32f10x.h总结,省略STM32valuelinedevices系列产品2>启动文件干了点啥?2.1>设置栈Sett
- STM32F1 - 启动过程
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
BOOT1>内存映射2>启动模式3>.map文件4>上电启动过程1>内存映射Flash起始地址是【0x08000000】SRAM起始地址是【0x20000000】2>启动模式STM32F103的BOOT1和BOOT0引脚,决定哪块存储区,映射到4G内存空间【0x00000000】地址处。例如BOOT0引脚接地后,则Flash的起始地址【0x08000000】被映射到【0x00000000】处;3>
- STM32F1 - 标准外设库_规范
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
标准外设库1>头文件包含关系2>.c文件内部结构3>宏定义位置1>头文件包含关系1个头文件stm32f10x.h就把整个MCU以及标准外设库,就管理了;2>.c文件内部结构/*********************************************************************************@fileProject/STM32F10x_StdPeriph
- STM32启动过程——STM32F1系列
海中的涟漪
STM32stm32单片机嵌入式硬件
STM32启动过程1、MDK编译生成文件简介MDK编译工程,会生成一些中间文件(如**.o**、.axf、.map等),最终生成hex文件MDK编译过程文件共11种:文件类型说明.o可重定向对象文件,每个**.c**/.s文件编译都会生成一个**.o**文件.axf可执行对象文件,由**.o**文件链接生成,仿真时需要用到此文件.hexINTELHex格式文件,用于下载到MCU运行,由**.axf
- STM32F1 - 开发环境搭建
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
Editions1>Keil2>器件支持包3>J-Link驱动安装1>Keil【MDK-Arm官网链接】2>器件支持包【器件支持包-STM32F103】3>J-Link驱动安装驱动:商家提供注意事项:J-Link,20Pin接口的电源引脚提供3.3V,有些内部可以通过跳线帽设置,有些不可以;
- STM32F1 - 点灯-寄存器模式
零号-轩工
STM32F1-外设驱动stm32单片机嵌入式硬件
点灯实验概述:1>建立工程2>向寄存器写数据C语言指针应用3>宏定义-封装寄存器4>结构体-封装寄存器4.1>结构体类型定义4.2>结构体指针变量4.3>优化程序实验概述:用配置寄存器的方式,开关一个LED灯,只用标准库中提供的启动文件,1>建立工程出现错误:导入文件类型错误keil5编译中出现的错误(6):FCARM-OutputNamenotspecified,pleasecheck‘Opti
- STM32F1 - 时钟树
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
ClockTree1>总框图2>HSE高速外部时钟3>LSE低速外部时钟4>HSI高速内部时钟5>时钟使能控制1>总框图STM32F103ZET6:2>HSE高速外部时钟HSE:高速外部时钟(HighSpeedExternalclocksignal)外接晶振8MHz,为保证STM32工作稳定,选择外部晶振提供时钟源;SYSCLK:72MHz外部晶振【8MHz】>>经过2选1选择器【PLLSourc
- STM32F1 - 工程模板_标准外设库
零号-轩工
STM32F1-外设驱动stm32单片机
Project1>程序框架2>目录结构3>标准外设库-头文件包含关系4>移植中出现的错误4.1>编译器版本选择4.2>工程宏定义N>资料链接1>程序框架根据硬件分层,把软件分层2>目录结构为方便管理,将启动文件startup_stm32f10x_hd.s,放到CPU,按硬件分层,应放到MCU中;3>标准外设库-头文件包含关系1个头文件stm32f10x.h就把整个MCU以及标准外设库,就管理了;4
- STM32 硬件随机数发生器(RNG)
Anonymousgirls
嵌入式单片机stm32嵌入式硬件单片机
STM32硬件随机数发生器文章目录STM32硬件随机数发生器前言第1章随机数发生器简介1.1RNG主要特性1.2.RNG应用第2章RNG原理框图第3章RNG相关寄存器3.1RNG控制寄存器(RNG_CR)3.2RNG状态寄存器(RNG_SR)3.3RNG数据寄存器(RNG_DR)第3章RNG代码部分第4章STM32F1软件模拟RNG前言在日常生活中有很多情况都有用到随机数的应用,比如手机验证码、快
- STM32F1 引脚重映射功能
Anonymousgirls
嵌入式单片机stm32单片机
STM32端口引脚重映射文章目录STM32端口引脚重映射前言1、查阅芯片数据手册1.1串口引脚重映射描述2、代码部分2.1核心代码部分3、实验现象4、总结前言在写程序时遇到想要的端口功能,而这个引脚又被其它的功能占用了无法删除掉或直接使用,这种情况就很尴尬了,因为STM32同一个引脚是不能同时使用两个功能的。那么遇到这种情况就需要考虑该端口分时复用或者端口重映射功能了。硬件平台使用的是STM32F
- STM32F1核心板:ADC模数转换器、AD单通道、AD多通道
Lmh.s
stm32嵌入式硬件单片机
目录ADC简介AD单通道实验现象步骤函数说明AD.c文件AD.hmain.cAD多通道AD.cAD.hmain.cADC简介ADC(Analog-DigitalConverter)模拟-数字转换器(AD转换器)ADC可以将引脚上连续变化的模拟电压转换位内存中存储的数字变量,建立模拟电路到数字电路的桥梁1、STM32主要是数字电路,数字电路只有高低电平,没有几V电压的概念,所以若想读取电压值,就需要
- STM32学习笔记--寄存器映射和存储器映射
qq_55191714
stm32单片机arm
系列文章目录第一章:stm32f1系列内部介绍一、stm32内部框图是什么?我们对这个系统框图做一个简要说明左上角部分是Cortex-M3的内核,内核引出了3条总线,分别是ICode指令总线DCode数据总线System系统总线,这三根总线又和总线矩阵与之相连接起来。ICode总线即指令总线,它主要用于连接到FLASH接口访问FLASH闪存,我们所写的程序就存储在flash闪存内(程序在flash
- STM32单片机---内存映射(一)内核与ROM、RAM、外设寄存器的介绍
小沈vlog
单片机stm32nosql
目录单片机的硬件组成单片机简介单片机组成框架单片机的功能内核介绍内核内存映射的介绍存储器介绍ROM存储器ARM存储器外设---实现内核控制硬件外部SARM内核与芯片厂家的存储器配合工作声明:文中介绍的单片机为STM32F1的大容量芯片单片机的硬件组成单片机简介单片微型计算机简称单片机。是集CPU(也是处理器或者说是内核,作用是运算、控制)、RAM(内存,作用是作数据存储)、ROM(程序存储)、输入
- STM32F1(Cortex M3内核)存储器映射
Phenixyf
ARM
本文参考《CM3权威指南》第五章存储器系统《STM32_参考手册》2.4启动配置《STM32F103xCDE_数据手册》第四章memorymappingCortexm3内核规定的存储器映射如下图所示。就好像ARM公司打造了一个柜子,从上到下有这几个抽屉,它规定了每个抽屉放的东西的种类,具体放什么放多少它不管(只要不超过抽屉的大小),由每个芯片厂商自己决定。图1cortexm3存储器映射我们来看看S
- STM32F1学习-深入理解存储器(存储器映射以及bit-band)
Phenixyf
ARM
1.存储器映射STM32F1的系统结构存储器映射STM32F1的存储器的映射存储器映射是指把芯片中或芯片外的FLASH,RAM,外设,BOOTBLOCK等进行统一编址。即用地址来表示对象。这个地址绝大多数是由厂家规定好的,用户只能用而不能改。用户只能在挂外部RAM或FLASH的情况下可进行自定义。从系统结构图中我们可以看出,所有内部设备都是AHBSystemBus上,AHB系统总线又分成两个连接的
- 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
- STM32F1 - 存储器映射
零号-轩工
STM32F1-外设驱动stm32嵌入式硬件单片机
Memorymapping1>外设内存地址映射2>GPIO寄存器映射3>存储器访问1>外设内存地址映射1>STM32F103ZET6的地址线位宽为32位,所以寻址空间为4GB(2^32=4GB);2>STM32将,Flash,SRAM,外设寄存器,等都有规律的安排到4GB的空间;2>GPIO寄存器映射GOIOA的映射地址是多少?因为PoartA的基地址是:【0x40010800】所以GPIOA寄存
- SQL的各种连接查询
xieke90
UNION ALLUNION外连接内连接JOIN
一、内连接
概念:内连接就是使用比较运算符根据每个表共有的列的值匹配两个表中的行。
内连接(join 或者inner join )
SQL语法:
select * fron
- java编程思想--复用类
百合不是茶
java继承代理组合final类
复用类看着标题都不知道是什么,再加上java编程思想翻译的比价难懂,所以知道现在才看这本软件界的奇书
一:组合语法:就是将对象的引用放到新类中即可
代码:
package com.wj.reuse;
/**
*
* @author Administrator 组
- [开源与生态系统]国产CPU的生态系统
comsci
cpu
计算机要从娃娃抓起...而孩子最喜欢玩游戏....
要让国产CPU在国内市场形成自己的生态系统和产业链,国家和企业就不能够忘记游戏这个非常关键的环节....
投入一些资金和资源,人力和政策,让游
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释
商人shang
jvm内存
jvm区域总体分两类,heap区和非heap区。heap区又分:Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。 非heap区又分:Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈)、Local Method Statck(本地方法栈)。
HotSpot虚拟机GC算法采用分代收
- 页面上调用 QQ
oloz
qq
<A href="tencent://message/?uin=707321921&Site=有事Q我&Menu=yes">
<img style="border:0px;" src=http://wpa.qq.com/pa?p=1:707321921:1></a>
- 一些问题
文强chu
问题
1.eclipse 导出 doc 出现“The Javadoc command does not exist.” javadoc command 选择 jdk/bin/javadoc.exe 2.tomcate 配置 web 项目 .....
SQL:3.mysql * 必须得放前面 否则 select&nbs
- 生活没有安全感
小桔子
生活孤独安全感
圈子好小,身边朋友没几个,交心的更是少之又少。在深圳,除了男朋友,没几个亲密的人。不知不觉男朋友成了唯一的依靠,毫不夸张的说,业余生活的全部。现在感情好,也很幸福的。但是说不准难免人心会变嘛,不发生什么大家都乐融融,发生什么很难处理。我想说如果不幸被分手(无论原因如何),生活难免变化很大,在深圳,我没交心的朋友。明
- php 基础语法
aichenglong
php 基本语法
1 .1 php变量必须以$开头
<?php
$a=” b”;
echo
?>
1 .2 php基本数据库类型 Integer float/double Boolean string
1 .3 复合数据类型 数组array和对象 object
1 .4 特殊数据类型 null 资源类型(resource) $co
- mybatis tools 配置详解
AILIKES
mybatis
MyBatis Generator中文文档
MyBatis Generator中文文档地址:
http://generator.sturgeon.mopaas.com/
该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中文版的文档的也会有一定的障碍,所以本章根据该中文文档以及实际应用,使用通俗的语言来讲解详细的配置。
本文使用Markdown进行编辑,但是博客显示效
- 继承与多态的探讨
百合不是茶
JAVA面向对象 继承 对象
继承 extends 多态
继承是面向对象最经常使用的特征之一:继承语法是通过继承发、基类的域和方法 //继承就是从现有的类中生成一个新的类,这个新类拥有现有类的所有extends是使用继承的关键字:
在A类中定义属性和方法;
class A{
//定义属性
int age;
//定义方法
public void go
- JS的undefined与null的实例
bijian1013
JavaScriptJavaScript
<form name="theform" id="theform">
</form>
<script language="javascript">
var a
alert(typeof(b)); //这里提示undefined
if(theform.datas
- TDD实践(一)
bijian1013
java敏捷TDD
一.TDD概述
TDD:测试驱动开发,它的基本思想就是在开发功能代码之前,先编写测试代码。也就是说在明确要开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编写相关的代码满足这些测试用例。然后循环进行添加其他功能,直到完全部功能的开发。
- [Maven学习笔记十]Maven Profile与资源文件过滤器
bit1129
maven
什么是Maven Profile
Maven Profile的含义是针对编译打包环境和编译打包目的配置定制,可以在不同的环境上选择相应的配置,例如DB信息,可以根据是为开发环境编译打包,还是为生产环境编译打包,动态的选择正确的DB配置信息
Profile的激活机制
1.Profile可以手工激活,比如在Intellij Idea的Maven Project视图中可以选择一个P
- 【Hive八】Hive用户自定义生成表函数(UDTF)
bit1129
hive
1. 什么是UDTF
UDTF,是User Defined Table-Generating Functions,一眼看上去,貌似是用户自定义生成表函数,这个生成表不应该理解为生成了一个HQL Table, 貌似更应该理解为生成了类似关系表的二维行数据集
2. 如何实现UDTF
继承org.apache.hadoop.hive.ql.udf.generic
- tfs restful api 加auth 2.0认计
ronin47
目前思考如何给tfs的ngx-tfs api增加安全性。有如下两点:
一是基于客户端的ip设置。这个比较容易实现。
二是基于OAuth2.0认证,这个需要lua,实现起来相对于一来说,有些难度。
现在重点介绍第二种方法实现思路。
前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGe
- jdk环境变量配置
byalias
javajdk
进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置:
1、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:jdk-7u79-windows-x64.exe
2、安装jdk-7u79-windows-x64.exe
3、配置环境变量:右击"计算机"-->&quo
- 《代码大全》表驱动法-Table Driven Approach-2
bylijinnan
java
package com.ljn.base;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.uti
- SQL 数值四舍五入 小数点后保留2位
chicony
四舍五入
1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位。
2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后位数。
例如:
select cast(round(12.5,2) as numeric(5,2))  
- c++运算符重载
CrazyMizzz
C++
一、加+,减-,乘*,除/ 的运算符重载
Rational operator*(const Rational &x) const{
return Rational(x.a * this->a);
}
在这里只写乘法的,加减除的写法类似
二、<<输出,>>输入的运算符重载
&nb
- hive DDL语法汇总
daizj
hive修改列DDL修改表
hive DDL语法汇总
1、对表重命名
hive> ALTER TABLE table_name RENAME TO new_table_name;
2、修改表备注
hive> ALTER TABLE table_name SET TBLPROPERTIES ('comment' = new_comm
- jbox使用说明
dcj3sjt126com
Web
参考网址:http://www.kudystudio.com/jbox/jbox-demo.html jBox v2.3 beta [
点击下载]
技术交流QQGroup:172543951 100521167
[2011-11-11] jBox v2.3 正式版
- [调整&修复] IE6下有iframe或页面有active、applet控件
- UISegmentedControl 开发笔记
dcj3sjt126com
// typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {
// UISegmentedControlStylePlain, // large plain
&
- Slick生成表映射文件
ekian
scala
Scala添加SLICK进行数据库操作,需在sbt文件上添加slick-codegen包
"com.typesafe.slick" %% "slick-codegen" % slickVersion
因为我是连接SQL Server数据库,还需添加slick-extensions,jtds包
"com.typesa
- ES-TEST
gengzg
test
package com.MarkNum;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation
- 为何外键不再推荐使用
hugh.wang
mysqlDB
表的关联,是一种逻辑关系,并不需要进行物理上的“硬关联”,而且你所期望的关联,其实只是其数据上存在一定的联系而已,而这种联系实际上是在设计之初就定义好的固有逻辑。
在业务代码中实现的时候,只要按照设计之初的这种固有关联逻辑来处理数据即可,并不需要在数据库层面进行“硬关联”,因为在数据库层面通过使用外键的方式进行“硬关联”,会带来很多额外的资源消耗来进行一致性和完整性校验,即使很多时候我们并不
- 领域驱动设计
julyflame
VODAO设计模式DTOpo
概念:
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对
- 单例设计模式
hm4123660
javaSingleton单例设计模式懒汉式饿汉式
单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。
&nb
- logback
zhb8015
loglogback
一、logback的介绍
Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-class
- 整合Kafka到Spark Streaming——代码示例和挑战
Stark_Summer
sparkstormzookeeperPARALLELISMprocessing
作者Michael G. Noll是瑞士的一位工程师和研究员,效力于Verisign,是Verisign实验室的大规模数据分析基础设施(基础Hadoop)的技术主管。本文,Michael详细的演示了如何将Kafka整合到Spark Streaming中。 期间, Michael还提到了将Kafka整合到 Spark Streaming中的一些现状,非常值得阅读,虽然有一些信息在Spark 1.2版
- spring-master-slave-commondao
王新春
DAOspringdataSourceslavemaster
互联网的web项目,都有个特点:请求的并发量高,其中请求最耗时的db操作,又是系统优化的重中之重。
为此,往往搭建 db的 一主多从库的 数据库架构。作为web的DAO层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数