- C51单片机控制OLED显示屏反白显示SPI通信例程
草莓味儿柠檬
本文还有配套的精品资源,点击获取简介:本文档详细介绍0.96英寸OLED显示屏、C51系列单片机、SPI接口及反白显示技术的原理与应用,并提供一套完整的例程源码,指导开发者如何使用C51单片机通过SPI接口控制OLED显示屏实现反白显示效果。文档内容包括硬件连接、初始化SPI、配置OLED显示参数、绘制像素和实现反白显示等关键步骤,旨在帮助初学者学习嵌入式系统开发,并理解相关硬件和软件工作流程。1
- 全局变量中断原子操作_51单片机解决中断和主程序共享全局变量的方法
学弱猹
全局变量中断原子操作
51单片机解决中断和主程序共享全局变量的方法所谓原子操作,并不是指一条指令,而是指一系列操作不能被打断.这种操作与临界区是密切相关的,可以说原子操作就是临界区引发出来的需求.以上是给大家提供资料查找的入口,下面我用通俗的话说说,但切不要认为自已看懂了就可以不去查以上相关资料了,知道啥叫"通俗"吗?呵呵.废话不多说:在多进程的系统里(比如多任务,比如中断服务程序),假如两组程序都要访问同一个资源,而
- C51 中断+主程序读写全局变量遇到的问题及解决摘录
上帝木偶
在开发C51单片机时,如果你使用中断+主程序一起读写全局变量时,有机会遇到各种奇怪的现象,怎么调都发现数值是不对的,这时候你应该检查一下以下几点:1、中断函数是否采用了usingX?如无必要,尽量不要使用using寄存器组,我被这个问题弄了2天。2、全局变量如果定义时采用了DATA、XDATA之类的修饰,那么在使用指针引用全局变量时,也要加上这些修饰符。
- 51单片机教程(十一)- 单片机定时器
ITB业生
C单片机51单片机
11、单片机定时器项目目标通过定时器/计数器实现流水灯控制。知识要点定时器的结构。TMOD和TCON;定时/计数器工作方式;定时/计数器编程步骤;1、项目分析前面的流水灯的时间控制通过空循环语句来实现,定时不是很精确。本章通过用定时器来控制流水灯任务可以实现精确的时间控制。这就需要了解定时器的使用。定时器和计数器实质功能相同,本章利用LED灯二进制计数任务来掌握计数器的使用。2、技术准备1背景从软
- 万年历单片机c语言程序,51单片机c语言电子万年历完整程序.pdf
叶居居
万年历单片机c语言程序
该程序为51单片机c语言电子万年历#include"reg52.h"//#include#defineucharunsignedchar#defineuintunsignedintsbitlcden=P3^4;sbitlcdrs=P3^5;sbitDATA=P0^7;sbitRST=P0^5;sbitSCLK=P0^6;sbitmenu=P3^0;//菜单sbitadd=P3^1;//加一sbit
- 基于51单片机开发多功能菜单系统项目介绍(开源)
菜鸟—历险记
51单片机嵌入式硬件单片机
51单片机多功能菜单系统一、项目介绍基于51单片机开发的多功能菜单系统是一种集成多种功能的嵌入式系统,广泛应用于电子产品中,该系统的核心是AT89C52芯片,其强大的处理能力和丰富的外设接口使其成为许多项目的理想选择。这是一个有趣且实用的项目,可以帮助用户实现多种功能,我设计了的功能有:矩阵键盘输入密码、PWM直流电机驱动风扇调速、DS18B20温度监控、光敏电阻检测模块、加减乘除计算器、人的BM
- 【Rust】——使用消息在线程之间传递数据
Y小夜
Rust(官方文档重点总结)rust开发语言后端
博主现有专栏:C51单片机(STC89C516),c语言,c++,离散数学,算法设计与分析,数据结构,Python,Java基础,MySQL,linux,基于HTML5的网页设计及应用,Rust(官方文档重点总结),jQuery,前端vue.js,Javaweb开发,Python机器学习等主页链接:Y小夜-CSDN博客目录信道与所有权转移发送多个值并观察接收者的等待通过克隆发送者来创建多个生产者学
- 51单片机基础与应用实例解析
大数据无毛兽
本文还有配套的精品资源,点击获取简介:本课程设计项目专注于51单片机的基础知识和应用实践,适合初学者。51单片机是微控制器的经典代表,广泛应用于教育和工业等领域。项目通过20个实例,涵盖C语言编程、单片机内部结构、I/O操作、定时器和计数器、中断系统、串行通信、晶振和复位电路、编程和调试、实验板使用以及项目实现等多个关键知识点,帮助学生掌握单片机的编程和应用技能,并将理论知识转化为实际操作能力。1
- 嵌入式学习 51单片机01
c6lala
学习51单片机嵌入式硬件
一、框架1、CPU(CentralProcessingUnit,中央处理单元)是计算机的核心部件,负责执行计算机指令和处理数据。2、MCU(MicrocontrollerUnit,微控制单元)是一种将中央处理器、内存、输入输出接口等多种功能模块集成在单一芯片上的微型计算机系统。(特殊的CPU重视对外摄的控制而非数据的处理)3、MPU(MicroprocessorUnit,微处理器单元)是一种
- 基于51单片机的智能饮水机控制系统
01单片机设计
单片机51单片机嵌入式硬件单片机
**单片机设计介绍,基于51单片机的智能饮水机控制系统文章目录一概要二、功能设计设计思路三、软件设计原理图五、程序六、文章目录一概要 基于51单片机的智能饮水机控制系统概要如下:一、设计背景与目标智能饮水机控制系统旨在提供更为便捷、智能的饮水体验。该系统通过51单片机作为核心控制器,结合多种传感器和执行器,实现对饮水机温度、水位、出水等功能的精确控制,并具备用户交互和定时功能,以满足用户多样化的
- 51单片机基础知识简介
嵌入式大圣
51单片机嵌入式硬件单片机
51单片机(又称为MCS-51系列单片机)是由Intel公司在1980年推出的一种8位微控制器,它以其简单、稳定和强大的功能,在嵌入式系统中得到了广泛应用。51单片机在工业控制、家电控制、智能仪器、通信设备等领域具有重要地位。本文将为你介绍51单片机的基础知识,包括其结构、工作原理、编程语言和开发工具。目录1.什么是51单片机?2.51单片机的内部结构2.1.CPU(中央处理器)2.2.ROM(只
- 51单片机重要知识点1
正旺单片机
51单片机51单片机嵌入式硬件单片机
1.在读IO口状态前必须先写该IO口=1.即让下拉MOS高阻断路。如:P22=1;KEY=P22;复位状态各IO口=1的。另外大多数情况都不会IO口即做输入又做输出的。设计思想永远不要复杂化高难度编程,而要简单明了。2.
- 嵌入式开发之嵌入式系统硬件架构设计时,如何选择合适的微处理器/微控制器?
start_up_go
嵌入式开发之路嵌入式硬件系统搭建嵌入式硬件核心处理器选型
在嵌入式系统硬件架构设计中,选择合适的微处理器/微控制器(MCU/MPU)是关键环节,需从多维度综合评估。以下是系统化的选择策略及核心考量因素:一、明确应用需求与核心指标1.性能需求处理能力:根据任务复杂度确定主频、指令集架构(ISA)。简单控制任务(如家电开关):8位/16位MCU(如AVR、51单片机)即可。复杂运算(如图像处理、电机矢量控制):需32位MCU(如ARMCortex-M4/M7
- 51单片机基础练习
繁花易逝烟雨沉
51单片机基础练习51单片机单片机stm32
3.闪烁灯(总线法)#includevoiddelay(inti){while(i--);}voidmain(){while(1){P2=0xfe;delay(10000);P2=0xff;delay(10000);}}以下是对应实物图
- 基于51单片机的频率计设计
一、用单片机的定时器设计一个频率计,并用发光二极管以二进制形式显示所测频率,单片机振荡频率为6MHZ。二、硬件电路三、C51程序#include#defineucharunsignedcharucharCounter;voidTime01_Init(void);//T0和T1初始化函数voidTime01_Init(){TMOD=0X16;//T0计数状态、方式2,T1定时状态,方式1TL0=0;
- 51单片机舵机控制程序设计详解
羊迪
本文还有配套的精品资源,点击获取简介:51单片机是一款广泛用于电子项目的经典微控制器,擅长舵机控制。本案例将详细介绍如何编程实现51单片机控制舵机,涵盖PWM信号生成、角度控制、程序结构等关键部分。用户将通过实践加深对51单片机控制原理的理解,并学习如何通过编程来精确控制舵机的角度,从而为各种应用(如无人机、遥控模型)提供支持。1.51单片机概述1.151单片机的历史与应用51单片机是基于Inte
- 避障机器人程序c语言,基于51单片机小车寻迹、避障源程序(注释很详细)
动妈-游戏力育儿
避障机器人程序c语言
/**作者:赵新*功能:实现小车躲避障碍,通过检测三个方向的距离,选择最大距离转弯*日期:2015/3/14*说明:STC89c52RC,12MHz*注意:1000ms和100ms待测,完成后删除此行*—————————————————管脚说明——————————————*Trig=P1^0*Echo=P3^2*PWM_OUT=P0^4*——————————————————————————————
- 51单片机开发环境全配置指南:Keil + Proteus + VS Code本文将详解51单片机开发环境配置全流程,包含软件安装、汉化设置、多软件联动技巧,无需编程基础即可
-北固亭
51单片机嵌入式硬件
一、环境配置流程图```mermaidgraphLRA[安装KeilC51]-->B[配置Proteus]B-->C[VSCode插件安装]C-->D[软件汉化]D-->E[三软件联动]E-->F[仿真调试]二、核心软件安装1.KeiluVision(C51版)-官网下载安装包(www.keil.com)-安装时务必勾选"C51"选项-激活:使用注册机生成许可证(注意版本匹配)2.Proteus电
- 单片机题目列表
CC呢
单片机嵌入式硬件
目录公交车报站51单片机+手自动+语音播报+GPS51单片机+手自动+语音播报+GPS+温度题目单片机具体编号功能详细描述0001公交车510001-151单片机+手自动+语音播报+GPS510001-251单片机+手自动+语音播报+GPS+温度510001-351单片机+手自动+语音播报+GPS+温度+人员统计320001-4STM32+手自动+语音播报+GPS320001-5STM32手自动+
- 单片机原理及技术(二)—— AT89S51单片机(一)(C51编程)
慕卿扬
单片机原理及技术(C51编程)学习方法笔记51单片机
目录一、AT89S51单片机的片内硬件结构二、AT89S51的引脚功能2.1电源及时钟引脚2.2控制引脚2.3并行I/O口引脚三、AT89S51的CPU3.1运算器3.1.1算术逻辑单元(ALU)3.1.2累加器A3.1.3程序状态字寄存器(PSW)3.2控制器四、AT89S51单片机存储器的结构4.1程序存储器空间4.2数据存储器空间4.2.1片内数据存储器4.2.2片外数据存储器4.3特殊功能
- 【51单片机】4. 模块化编程与LCD1602Debug
passer__jw767
51单片机51单片机单片机
1.什么是模块化编程传统编程会将所有函数放在main.c中,如果使用的模块多,一个文件内会有很多代码,不利于组织和管理模块化编程则是将各个模块的代码放在不同的.c文件里,在.h文件里提供外部可调用函数声明,其他.c文件想使用其中的代码时,只需要#include"XXX.h"即可模块化编程有助于极大提高代码可阅读性、可维护性和可移植性2.模块化编程框架假如我们将延迟函数Delay模块化,则代码如下:
- 基于51单片机的HX711电子称(Proteus仿真)
MGT_9796
51单片机proteus嵌入式硬件
基于51单片机的HX711电子秤,利用AT89C51作为系统主控,HX711作为称重模块,矩阵键盘用于单价输入,系统自动进行总价的统计。为了可视化显示,使用LCD1602作为显示器件,显示单价、重量、总价等。为了方便进行提示用户,本次设计使用蜂鸣器和LED作为提示器件。一、硬件设计1、51单片机最小系统一般单片机的最小系统主要包括芯片、晶振电路、复位电路等,但是在仿真中,不添加这些部分也是可以正常
- 【034】基于51单片机的HX711电子秤Proteus仿真设计
B站小邓子分享官
proteus仿真单片机仿真51单片机proteus嵌入式硬件单片机c语言
一、压缩包资料内容(1)、基于51单片机的HX711电子秤proteus仿真设计一份;(2)、基于51单片机的HX711电子秤proteus仿真设计keli源代码一份;(3)、基于51单片机的HX711电子秤Altiumdesigner原理图一份;(4)、基于51单片机的HX711电子秤proteus仿真设计参考论文一份;(5)、基于51单片机的HX711电子秤proteus仿真设计proteus
- 51 单片机驱动 LED 数码管显示出生日期
DoubleKfirst
单片机mongodb嵌入式硬件
51单片机驱动LED数码管显示出生日期一、实验目的通过51单片机驱动八位LED数码管,控制数码管稳定显示本人的出生年月日。例如2003年4月17日出生的同学,应在八位数码管上稳定显示20030417。要求:(1)进一步理解LED数码管静态显示原理(2)掌握LED数码管动态显示编程,参考课堂上及钉钉群介绍的两种编程方法,在开发板和PROTEUS中,实现八位数码的动态稳定显示。二、实验原理1.LED数
- 红外避障模块c语言编写程序,红外避障模块(红外对管)51单片机驱动源程序
weixin_39945475
红外避障模块c语言编写程序
/******************************************传感器触发测试单片机:STC89C52波特率:9600*****************************************/#includeunsignedchardate;#defineucharunsignedchar#defineuintunsignedintsbitkey1=P0^1;/*函
- C51单片机贪吃蛇游戏开发教程及实战
富叔
本文还有配套的精品资源,点击获取简介:本项目是一个使用C51语言编写的贪吃蛇游戏机开发套件,适合在普中开发板及LCD18645显示屏上运行。包含课程设计报告、电路设计文档以及贪吃蛇游戏的详细文献。通过该项目,学习者将掌握51单片机编程、LCD驱动方法、贪吃蛇游戏算法,以及嵌入式系统开发的基本技能。1.C51语言编程基础1.1C51语言概述C51语言是针对8051单片机系列开发的一门编程语言,它是标
- 【Proteus仿真】51单片机+红外测距仪(GP2D12)+ADC0808模数转换
perseverance52
proteus51单片机
【Proteus仿真】51单片机+红外测距仪(GP2D12)+ADC0808模数转换相关篇《【Proteus仿真】51单片机+超声波测距+带报警按键可调》Proteus仿真演示✨使用GP2D12测量距离,与输出模拟电压关系:2.35V~0.41V模拟信号对应10cm~80cm,输出与距离成反比非线性关系。⚡目前该仿真还存在bug,根据仿真来看,lcd显示有短路,后续进行修正。✨利用红外测距仪(GP
- 51单片机LCD1602液晶屏显示方法
aj__212
51单片机嵌入式硬件单片机
以显示hello,world!2024.07.19为例。实验程序main.c:#include#include"LCD1602.h"//添加LCD1602模块化头文件voidmain(){LCD_Init();//初始化,这个一定要LCD_ShowString(1,3,"hello,world!");//这个在LCD1602.c文件里面都可以找到有定义和注释使用方法LCD_ShowString(2
- 比较arduino和51单片机
yifa20160404
单片机arduino嵌入式硬件51单片机
看到你想比较Arduino和51单片机,这是个很常见也很重要的选择问题!我来给你详细分析一下,帮你理清思路。核心区别一句话概括:Arduino是一个基于特定微控制器(如AVR)的软硬件生态系统和开发平台,强调易用性和快速原型开发。51单片机(如Intel8051或其兼容芯片STC89C52,STC12C5A60S2,AT89S52等)是一种特定架构的微控制器芯片,需要更底层的开发知识和工具。它们不
- C51单片机实验——矩阵按键
按键控制实验实验名称:按键控制实验实验环境:普中实验系统;KeilμVision4软件;实验目的:(1)掌握矩阵键盘和单片机的接口方法以及键值获取的原理。(2)制作自己的按键实验方案,并通过程序设计控制实验箱上对应按键,在7段数码管上显示出设计方案的按键值。硬件连线:数码管连接P0口按键连接P1口P2口的2,3,4引脚连接位选线实验主要代码:#include“reg52.h”//此文件中定义了单片
- 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层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数