- 自己开发I2C Bootloader -下位机开发篇
EE工程师
嵌入式系统c语言visualstudiocodestm32单片机
开发前言 下位机开发就裸机编程而言其实就是基于MCU做固件或者说驱动开发,那目前作者接触到的主流的MCU型号国外的就是STM32,国内的就是GD32,至于其它家一般都有其特定的应用领域或者细分市场战略。就本项目的i2cbootloader开发而言,这里的下位机开发要实现的功能主要就包括两点,一是要实现串口转I2C驱动,二是要实现MCU内部Flash读写,具体来讲就是基于STM32F103来实现U
- 华为服务器2258X V5裸机安装Ubuntu及配置
ghsshou
ubuntu服务器华为
2258XV5基本信息配置信息:型号2288XV5BIOS版本:8.02/ReleaseDate:04/14/2021处理器型号:Intel®Xeon®
[email protected]版本:6.27RAID控制卡型号:AdaptecSmartRAID3152-8i准备申请固定IP将服务器管理口、远程登录口连接交换机下载镜像:检查一下兼容性:https://support-it.hu
- STM32F1系列综合测试程序实践指南
Love Snape
本文还有配套的精品资源,点击获取简介:STM32F1系列微控制器是基于ARMCortex-M3内核的低成本、高性能嵌入式系统解决方案。本综合测试程序旨在帮助初学者快速掌握STM32的基础操作和关键知识点,包括裸机编程、GPIO操作、定时器应用、串行通信、ADC转换、中断处理和Bootloader等。同时,程序将指导学习者熟悉开发环境和理解代码结构,为未来在嵌入式系统开发领域打下坚实的基础。1.ST
- 使用 FreeRTOS 实现简单多任务调度(初识 RTOS)
欢乐熊嵌入式编程
FreeRTOS嵌入式开发多任务调度RTOS单片机
使用FreeRTOS实现简单多任务调度(初识RTOS)“裸机是手动挡,RTOS是自动挡。程序员也要学会偷懒!”——《从延时到调度:嵌入式人的进阶之路》一、什么是RTOS?为啥你迟早会用上它?RTOS,全名Real-TimeOperatingSystem(实时操作系统)。简单理解,它是为MCU打工的“调度大脑”,能帮你搞定这些烦人的事:多个任务如何“分时共享CPU”谁先执行谁后执行哪个任务被中断了怎
- nRF52832 低功耗设计与优化
mftang
zephyr架构蓝牙应用笔记NordicMCU系列笔记ZephyrRTOSzephyr架构蓝牙应用笔记
目录概述1技术背景2优化策略2.1系统级电源管理2.2时钟系统优化2.3GPIO配置优化3蓝牙协议栈优化3.1连接参数优化3.2广播优化4电源管理实践4.1功耗状态转换图4.2典型功耗分布5低功耗设计最佳实践5.1事件驱动架构5.2定时任务管理5.3数据批处理6高级优化技术6.1电压调节优化6.2RAM保持策略6.3动态功耗分析7功耗测量与验证8常见问题解决8.1功耗高于预期8.2唤醒延迟过长8.
- STM32的 syscalls.c 和 sysmem.c
is0815
stm32c语言嵌入式硬件
syscalls.c是STM32CubeIDE自动生成的标准系统调用适配文件,用于裸机环境下支持newlib标准库(如printf,scanf,malloc)的运行。这份文件提供了标准库运行所需的最小系统调用实现。现在我来逐段解析其作用,并补充你可能需要修改或关注的地方。主要用途该文件让标准C库函数在没有操作系统的STM32环境中可以正常工作。特别是:printf()调用_write()(需要重定
- 【Zephyr开发实践系列】02_MPU6050极简驱动设计(轮询模式)
jz-炸芯片的zero
Zephyr实践开发单片机物联网嵌入式硬件驱动开发iotlinuxstm32
文章目录前言一、MPU6050驱动模型1.1核心应用API(必须)1.2设置数据结构1.3硬件初始化1.4设备实例化二、数据结构定义2.1寄存器相关配置2.2陀螺仪灵敏度值2.2数据结构Data配置结构三、核心功能实现3.1原数据解算3.2通道数据获取3.3采样数据获取3.4初始化总结前言在传统嵌入式传感器开发中,裸机驱动往往需要数百行初始化代码,而复杂的RTOS驱动又面临框架学习成本高的问题。Z
- Linux——搭建嵌入式Linux开发环境步骤总结(虚拟机、Ubuntu、JDK、库文件、GCC)
Winter_world
搭建嵌入式Linux开发环境虚拟机Ubuntu安装JDK安装库文件GCC版本更新
目录0前言1主机软件环境2Linux系统下安装编译组件3Linux系统下安装库文件和JDK0前言回顾一直以来做的嵌入式项目方向,从如ST的单片机裸机开发,SOC开发,到STM32裸机开发,基于uCOSII的开发,基于freeRTOS的开发等,在实时操作系统层面的应用开发停留了一段时间了,一直想再突破下自我,去年做了一个基于工控机方案的Linux系统应用开发项目,对于Linux一直没有系统性的学习整
- arm系统移植
61u3
#6-armlinuxubuntuarm
目录1.流程2.概念2.1设备树2.2根文件系统2.3文件说明3.交叉编译链3.1作用3.2在linux下配置4.tftp4.1作用4.2安装过程5.nfs5.1作用5.2安装过程6.配置开发板7.linux下的uboot镜像烧写到SD卡中7.1生成uboot二进制文件,二进制文件就是裸机程序。7.2合成最终的uboot7.3通过dd命令把u-boot-iTOP-4412.bin烧写到SD卡中8.
- I.MX6ULL ARM裸机开发---C语言LED实验
一盆电子
ARM裸机开发armc语言驱动开发
一、引言 考虑到工作效率,嵌入式驱动开发很少用汇编,大部分是用C语言进行开发。 嵌入式驱动开发开始部分就可以用C语言吗? 当然不是!在开始部分用汇编来初始化一下C语言环境,比如初始化DDR、设置堆栈指针SP等等,当这些工作都做完以后就可以进入C语言环境,也就是运行C语言代码,一般都是进入main函数。有两部分文件需要完成: 1、汇编文件 汇编文件用来完成C语言环境搭建。 2、C语言文件
- Nordic nRF52832 寄存器级 UARTE 发送实现
mftang
NordicMCU系列笔记单片机嵌入式硬件
目录概述1nRF52832的UART寄存器1.1寄存器列表1.2寄存器介绍1.2.1使能控制(ENABLE)1.2.2波特率设置(BAUDRATE)1.2.3配置寄存器(CONFIG)1.2.4引脚配置寄存器1.2.5数据传输寄存器1.2.6状态与事件寄存器1.2.6.1事件寄存器(EVENTS)1.2.6.2错误状态(ERRORSRC)1.2.7中断控制2完整实现代码3关键操作解析3.1UART
- 如何在项目中集成和使用 nPM2100 裸机驱动程序(非NCS)
Halfway--
Nordic硬件工程射频工程mcu嵌入式硬件
1:为什么选择Nordic电源管理芯片?https://www.nordicsemi.com/Products/Power-Management-ICs最高能源效率:超低功耗意味着从电子离开电池到射频信号转换为无线电波之间的最高能量效率。高集成:将重要的系统和电源管理功能与基本的PMIC功能结合在一起,在紧凑的封装中,减少了电路板空间、复杂性和材料清单。无缝开发:在完美的世界中,硬件工程师不需要编
- NRF52810-CAAA/QFAA/QCAA低功耗蓝牙5.0支持2.4G私有协议是NRF52832的低成本方案
Kandiy18025398187
物联网iot
NRF52810简介nRF52810系统级芯片(SoC)是nRF52系列的基准成员,是NRF52832的低成本方案。它满足了将高级低功耗蓝牙功能和协议并发性引入应用的挑战,其价位使得向应用添加低功耗蓝牙连接极具吸引力。它是不太复杂的应用的理想选择,也是大型应用中的低功耗蓝牙连接处理器的理想选择。nRF52810支持低功耗蓝牙协议,包括2Mbps的高速传输特性。它还支持ANT和2.4GHz私有协议。
- 瑞芯微RK3506工业芯片实例方案解析:从架构到场景的深度实践
淡远-九鼎创展科技
架构嵌入式硬件人工智能电脑
一、芯片技术架构解析瑞芯微RK3506作为2024年第四季度推出的工业级MPU,采用三核Cortex-A7(1.5GHz)+单核Cortex-M0(200MHz)的异构架构,形成独特的"3+1"处理核心组合。这种设计通过AMP多核调度技术,实现了Linux、RTOS、Bare-metal系统的混合运行,典型配置如"2×A7运行Linux(HMI交互)+1×A7运行RTOS(协议处理)+M0裸机(实
- 企业级知识库私有化部署:腾讯混元+云容器服务TKE实战
大熊计算机
#腾讯云语言模型
1.背景需求分析在金融、医疗等数据敏感行业,企业需要构建完全自主可控的知识库系统。本文以某证券机构智能投研系统为原型,演示如何基于腾讯混元大模型与TKE容器服务实现:千亿级参数模型的私有化部署金融领域垂直场景微调高并发低延迟推理服务全链路安全合规方案1.1典型技术挑战#性能基准测试数据(单位:QPS)|场景|裸机部署|容器化部署|优化后||--------------------|--------
- [南大ICS-PA2] 字符串处理函数和printf实现
HNU_ZHAO
南大ICSlinux架构c语言
[南大ICS-PA2]程序、运行时环境与AMstingprintf实现AM-裸机(bare-metal)运行时环境RTFSC(3)通过批处理模式运行NEMU实现常用的函数实现字符串处理函数`size_tstrlen(constchar*s);``char*strcpy(char*dst,constchar*src);``char*strncpy(char*dst,constchar*src,siz
- 汇编语言:从入门到实战的终极指南【大纲】
汇编语言介绍【大纲】文章导读为什么还要学汇编语言?汇编语言的发展历史与主流体系汇编语言基本结构与语法x86与ARM汇编对比调试工具:gdb、objdump、IDA、radare2、CutterC与汇编协作技巧(内联、链接、函数调用)真实案例分析(函数调用、系统调用、Hook等)学习资源推荐与学习路径规划第一章:为什么你仍然需要学习汇编语言?1.1汇编语言的价值系统层编程的桥梁(从C到裸机)性能分析
- 单片机裸机中的非阻塞延时:任务分离计数器法实战
代码与烙铁
单片机编程单片机嵌入式硬件c语言
在裸机编程中,我们常常需要定时执行一些任务,比如让LED以固定频率闪烁、周期性检测按键输入等。这类需求看似简单,但处理方式不当(例如使用阻塞延时)就会导致系统“卡顿”或响应迟钝。本文将介绍一种推荐的裸机延时结构:任务分离计数器法(非阻塞延时),并通过LED闪烁与按键响应为例,展示其实际应用效果。一、阻塞延时与非阻塞延时的区别阻塞延时led_on();delay_ms(500); // 阻塞CPU
- linux介绍、命令(基本命令、常用命令、使用方法、基本格式)
weixin_30338743
操作系统运维嵌入式
操作系统(科普章节)目标了解操作系统及作用1.操作系统(OperationSystem,OS)一个例子说明操作系统操作系统作为接口的示意图没有安装操作系统的计算机,通常被称为裸机如果想在裸机上运行自己所编写的程序,就必须用机器语言书写程序如果计算机上安装了操作系统,就可以在操作系统上安装支持的高级语言环境,用高级语言开发程序1.1操作系统的作用是现代计算机系统中最基本和最重要的系统软件是配置在计算
- 【开源推荐】嵌入式软件开发学习路线全景图:从裸机到 RTOS,再到嵌入式 Linux(附涵超全电子书资源以及面经资料)
Natsume1710
开源学习linux
本文将系统介绍一个适合初学者&进阶者的嵌入式开发学习开源项目,涵盖C语言、驱动开发、RTOS、嵌入式Linux、物联网通信等核心内容,特别适合电赛、毕设、面试准备和入行工程师使用。一、为什么推荐这个项目?嵌入式学习门槛高、知识零散,这是大多数学习者面临的第一大难题。GitHub项目0voice/EmbeddedSoftwareLearn是由国内技术社区整理并维护的开源仓库,它将整个嵌入式学习路径从
- 【linux开发-驱动】-U-Boot相关
笃行致远~
l嵌入式inux开发linux单片机驱动开发
一、什么是U-Boot1、Linux系统要启动需要通过bootloader程序引导,也就说芯片上电以后先运行一段bootloader程序。2、uboot是一个裸机程序,就是一个bootloader,作用就是用于启用linux或其他系统。uboot最主要的工作就是初始化DDR。在实际开发中,我们一般不会直接用uboot官方的U-Boot源码的,一般使用开发板半导体厂商提供的更全面。区别:种类描述ub
- STM32和树莓派的分工
⚙️修正版:典型硬件组合与通信流程(以移动机器人为例)1.硬件分工:大脑vs四肢角色硬件运行软件核心任务是否直接运行ROS决策大脑树莓派4B/JetsonNanoUbuntu+ROS运行SLAM、导航、视觉识别等复杂算法✅是实时四肢STM32F4FreeRTOS/裸机读取电机编码器、控制电机PWM❌否传感器/执行器电机、激光雷达、IMU-执行动作/采集数据-2.为什么需要STM32?树莓派无法直接
- rt-thread的红外遥控开源库使用(裸机版本)记录.
詩不诉卿
STM32相关驱动开源stm32
前言本驱动运行stm32f407zgt6上已测试ok。需要使用定时器驱动。使用的是infrared开源库,在此基础上修改红外使用的IO口为PA8外设驱动使用cubemx生成使用了TIM14和GPIO外部中断触发的方式这里暂时只做红外接收的移植infrared开源库(裸机版本)infrared头文件/**Copyright(c)2006-2019,RT-ThreadDevelopmentTeam**
- 单向链表的操作以及实现
高斯林.神犇
链表数据结构
一,链表的引出1.顺序表优缺点:①.物理上连续,知道在表中位置时查找效率高②.按值查找效率低,需要从头开始③.物理上连续,删除、插入需要将后面元素前移,效率低,尾插入、删除效率高④.需要连续空间,条件苛刻(前提是裸机操作,没有操作系统,有操作系统就是操作的虚拟空间)由于顺序表的创建需要连续空间,基于苛刻的条件我们提出了链表2.链式结构特点:①.用物理上的不连续来表示逻辑上的连续(通过存储下一个元素
- RTOS:关于静态任务创建和调度器-总结
EmbSW_Guru_Wx
RTOS内核源码解析RTOS操作系统静态任务创建都干了些什么?调度器的启动做了些什么?
文章目录前言一、关于静态任务创建和调度器的启动-总结前言操作系统,在入行嵌入式j接触它之前,感觉那是多么高深、神圣的技术,感觉它是高不可攀的。曾经也幻想过它有多么的复杂,在裸机编程时无数次想去应用这个技术,但无奈,无人指引,以致于每每都会望而却步。如今,也在多种OS的基础上做过各行各业的软件开发,所以想在闲暇之时,将使用过的OS内核软件逐行阅读,以提升自我编程能力、去了解更多软件编程思想。写此专栏
- RT-Thread USB学习笔记 - RTT最小系统移植
zhangsz_sh
嵌入式开发实战rt-thread最小系统
RT-ThreadUSB学习笔记-硬件篇RT-ThreadUSB学习笔记-RTT最小系统移植RT-Thread应用笔记基础通信系列背景RT-Thread的使用不久,加深下RT-Thread开发经验。打算研究一下基于RT-Thread的应用开发,如USB设备的开发基础硬件已经搭建完成,裸机代码初步调通。把RT-Thread移植到STM32F103RBT6上。最小系统很多用户喜欢Nano版本的RT-T
- 裸机任务调度框架、DMA、空闲中断
学不动CV了
c语言stm32单片机51单片机
DMA和空闲中断来一个字节,就会触发中断,一个字节有多少个字节,就会进入多少次中断。这种会频繁进入中断,打断主流程。目前开发的产品没有影响,但是如果实时性要求较高,是否会有影响?因此使用DMA和空闲中断去解决这个问题,实现一包数据只需要进入一次中断。根据空闲中断判断?需要说明的是一帧内(包含多个字节)也就是这一字节和下一个字节之间的传输时间是很短的,可以忽略不计。但是帧与帧空闲的时间窗就很长,让时
- 第 5 天:嵌入式场景下的 C++ 控制结构实战解析 —— 条件与循环语句的最优用法
观熵
每日一练:嵌入式C++开发365天c++java开发语言
第5天:嵌入式场景下的C++控制结构实战解析——条件与循环语句的最优用法关键词:条件语句、if、else、switch、循环结构、for、while、do-while、状态机、嵌套控制、嵌入式控制流优化、死循环设计、定时器轮询、分支预测、代码展开、平台资源约束摘要:在嵌入式C++开发中,控制结构不仅关系到程序逻辑,更影响执行效率、代码大小与系统响应时延。传统if-else与for循环在裸机环境下应
- 计算机基础知识——微机系统
『六哥』
计算机组装与维修计算机基础电脑计算机视觉改行学it程序人生深度学习
一个完整的计算机系统由硬件系统和软件系统两大部分组成。这两大部分相辅相成,缺一不可,如果没有硬件,软件就无法存储和运行也就失去了存在的意义。如果没有软件,硬件就是没有灵魂的“裸机”,不会做任何工作。硬件是计算机的“躯体”,软件是计算机的“灵魂”。一、计算机硬件系统计算机的硬件(Hardware)是指组成计算机的看得见、摸得着的实际物理设备。包括计算机系统中由电子、机械和光电元件等组成的各种部件和设
- 开源 vGPU 方案:HAMi,实现细粒度 GPU 切分
本文主要分享一个开源的GPU虚拟化方案:HAMi,包括如何安装、配置以及使用。相比于上一篇分享的TimeSlicing方案,HAMi除了GPU共享之外还可以实现GPUcore、memory得限制,保证共享同一GPU的各个Pod都能拿到足够的资源。1.为什么需要GPU共享、切分等方案?开始之前我们先思考一个问题,为什么需要GPU共享、切分等方案?或者说是另外一个问题:明明直接在裸机环境使用,都可以多
- Java序列化进阶篇
g21121
java序列化
1.transient
类一旦实现了Serializable 接口即被声明为可序列化,然而某些情况下并不是所有的属性都需要序列化,想要人为的去阻止这些属性被序列化,就需要用到transient 关键字。
- escape()、encodeURI()、encodeURIComponent()区别详解
aigo
JavaScriptWeb
原文:http://blog.sina.com.cn/s/blog_4586764e0101khi0.html
JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:,decodeURI,decodeURIComponent 。
下面简单介绍一下它们的区别
1 escape()函
- ArcgisEngine实现对地图的放大、缩小和平移
Cb123456
添加矢量数据对地图的放大、缩小和平移Engine
ArcgisEngine实现对地图的放大、缩小和平移:
个人觉得是平移,不过网上的都是漫游,通俗的说就是把一个地图对象从一边拉到另一边而已。就看人说话吧.
具体实现:
一、引入命名空间
using ESRI.ArcGIS.Geometry;
using ESRI.ArcGIS.Controls;
二、代码实现.
- Java集合框架概述
天子之骄
Java集合框架概述
集合框架
集合框架可以理解为一个容器,该容器主要指映射(map)、集合(set)、数组(array)和列表(list)等抽象数据结构。
从本质上来说,Java集合框架的主要组成是用来操作对象的接口。不同接口描述不同的数据类型。
简单介绍:
Collection接口是最基本的接口,它定义了List和Set,List又定义了LinkLi
- 旗正4.0页面跳转传值问题
何必如此
javajsp
跳转和成功提示
a) 成功字段非空forward
成功字段非空forward,不会弹出成功字段,为jsp转发,页面能超链接传值,传输变量时需要拼接。接拼接方式list.jsp?test="+strweightUnit+"或list.jsp?test="+weightUnit+&qu
- 全网唯一:移动互联网服务器端开发课程
cocos2d-x小菜
web开发移动开发移动端开发移动互联程序员
移动互联网时代来了! App市场爆发式增长为Web开发程序员带来新一轮机遇,近两年新增创业者,几乎全部选择了移动互联网项目!传统互联网企业中超过98%的门户网站已经或者正在从单一的网站入口转向PC、手机、Pad、智能电视等多端全平台兼容体系。据统计,AppStore中超过85%的App项目都选择了PHP作为后端程
- Log4J通用配置|注意问题 笔记
7454103
DAOapachetomcatlog4jWeb
关于日志的等级 那些去 百度就知道了!
这几天 要搭个新框架 配置了 日志 记下来 !做个备忘!
#这里定义能显示到的最低级别,若定义到INFO级别,则看不到DEBUG级别的信息了~!
log4j.rootLogger=INFO,allLog
# DAO层 log记录到dao.log 控制台 和 总日志文件
log4j.logger.DAO=INFO,dao,C
- SQLServer TCP/IP 连接失败问题 ---SQL Server Configuration Manager
darkranger
sqlcwindowsSQL ServerXP
当你安装完之后,连接数据库的时候可能会发现你的TCP/IP 没有启动..
发现需要启动客户端协议 : TCP/IP
需要打开 SQL Server Configuration Manager...
却发现无法打开 SQL Server Configuration Manager..??
解决方法: C:\WINDOWS\system32目录搜索framedyn.
- [置顶] 做有中国特色的程序员
aijuans
程序员
从出版业说起 网络作品排到靠前的,都不会太难看,一般人不爱看某部作品也是因为不喜欢这个类型,而此人也不会全不喜欢这些网络作品。究其原因,是因为网络作品都是让人先白看的,看的好了才出了头。而纸质作品就不一定了,排行榜靠前的,有好作品,也有垃圾。 许多大牛都是写了博客,后来出了书。这些书也都不次,可能有人让为不好,是因为技术书不像小说,小说在读故事,技术书是在学知识或温习知识,有些技术书读得可
- document.domain 跨域问题
avords
document
document.domain用来得到当前网页的域名。比如在地址栏里输入:javascript:alert(document.domain); //www.315ta.com我们也可以给document.domain属性赋值,不过是有限制的,你只能赋成当前的域名或者基础域名。比如:javascript:alert(document.domain = "315ta.com");
- 关于管理软件的一些思考
houxinyou
管理
工作好多看年了,一直在做管理软件,不知道是我最开始做的时候产生了一些惯性的思维,还是现在接触的管理软件水平有所下降.换过好多年公司,越来越感觉现在的管理软件做的越来越乱.
在我看来,管理软件不论是以前的结构化编程,还是现在的面向对象编程,不管是CS模式,还是BS模式.模块的划分是很重要的.当然,模块的划分有很多种方式.我只是以我自己的划分方式来说一下.
做为管理软件,就像现在讲究MVC这
- NoSQL数据库之Redis数据库管理(String类型和hash类型)
bijian1013
redis数据库NoSQL
一.Redis的数据类型
1.String类型及操作
String是最简单的类型,一个key对应一个value,string类型是二进制安全的。Redis的string可以包含任何数据,比如jpg图片或者序列化的对象。
Set方法:设置key对应的值为string类型的value
- Tomcat 一些技巧
征客丶
javatomcatdos
以下操作都是在windows 环境下
一、Tomcat 启动时配置 JAVA_HOME
在 tomcat 安装目录,bin 文件夹下的 catalina.bat 或 setclasspath.bat 中添加
set JAVA_HOME=JAVA 安装目录
set JRE_HOME=JAVA 安装目录/jre
即可;
二、查看Tomcat 版本
在 tomcat 安装目
- 【Spark七十二】Spark的日志配置
bit1129
spark
在测试Spark Streaming时,大量的日志显示到控制台,影响了Spark Streaming程序代码的输出结果的查看(代码中通过println将输出打印到控制台上),可以通过修改Spark的日志配置的方式,不让Spark Streaming把它的日志显示在console
在Spark的conf目录下,把log4j.properties.template修改为log4j.p
- Haskell版冒泡排序
bookjovi
冒泡排序haskell
面试的时候问的比较多的算法题要么是binary search,要么是冒泡排序,真的不想用写C写冒泡排序了,贴上个Haskell版的,思维简单,代码简单,下次谁要是再要我用C写冒泡排序,直接上个haskell版的,让他自己去理解吧。
sort [] = []
sort [x] = [x]
sort (x:x1:xs)
| x>x1 = x1:so
- java 路径 配置文件读取
bro_feng
java
这几天做一个项目,关于路径做如下笔记,有需要供参考。
取工程内的文件,一般都要用相对路径,这个自然不用多说。
在src统计目录建配置文件目录res,在res中放入配置文件。
读取文件使用方式:
1. MyTest.class.getResourceAsStream("/res/xx.properties")
2. properties.load(MyTest.
- 读《研磨设计模式》-代码笔记-简单工厂模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 个人理解:简单工厂模式就是IOC;
* 客户端要用到某一对象,本来是由客户创建的,现在改成由工厂创建,客户直接取就好了
*/
interface IProduct {
- SVN与JIRA的关联
chenyu19891124
SVN
SVN与JIRA的关联一直都没能装成功,今天凝聚心思花了一天时间整合好了。下面是自己整理的步骤:
一、搭建好SVN环境,尤其是要把SVN的服务注册成系统服务
二、装好JIRA,自己用是jira-4.3.4破解版
三、下载SVN与JIRA的插件并解压,然后拷贝插件包下lib包里的三个jar,放到Atlassian\JIRA 4.3.4\atlassian-jira\WEB-INF\lib下,再
- JWFDv0.96 最新设计思路
comsci
数据结构算法工作企业应用公告
随着工作流技术的发展,工作流产品的应用范围也不断的在扩展,开始进入了像金融行业(我已经看到国有四大商业银行的工作流产品招标公告了),实时生产控制和其它比较重要的工程领域,而
- vi 保存复制内容格式粘贴
daizj
vi粘贴复制保存原格式不变形
vi是linux中非常好用的文本编辑工具,功能强大无比,但对于复制带有缩进格式的内容时,粘贴的时候内容错位很严重,不会按照复制时的格式排版,vi能不能在粘贴时,按复制进的格式进行粘贴呢? 答案是肯定的,vi有一个很强大的命令可以实现此功能 。
在命令模式输入:set paste,则进入paste模式,这样再进行粘贴时
- shell脚本运行时报错误:/bin/bash^M: bad interpreter 的解决办法
dongwei_6688
shell脚本
出现原因:windows上写的脚本,直接拷贝到linux系统上运行由于格式不兼容导致
解决办法:
1. 比如文件名为myshell.sh,vim myshell.sh
2. 执行vim中的命令 : set ff?查看文件格式,如果显示fileformat=dos,证明文件格式有问题
3. 执行vim中的命令 :set fileformat=unix 将文件格式改过来就可以了,然后:w
- 高一上学期难记忆单词
dcj3sjt126com
wordenglish
honest 诚实的;正直的
argue 争论
classical 古典的
hammer 锤子
share 分享;共有
sorrow 悲哀;悲痛
adventure 冒险
error 错误;差错
closet 壁橱;储藏室
pronounce 发音;宣告
repeat 重做;重复
majority 大多数;大半
native 本国的,本地的,本国
- hibernate查询返回DTO对象,DTO封装了多个pojo对象的属性
frankco
POJOhibernate查询DTO
DTO-数据传输对象;pojo-最纯粹的java对象与数据库中的表一一对应。
简单讲:DTO起到业务数据的传递作用,pojo则与持久层数据库打交道。
有时候我们需要查询返回DTO对象,因为DTO
- Partition List
hcx2013
partition
Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.
You should preserve the original relative order of th
- Spring MVC测试框架详解——客户端测试
jinnianshilongnian
上一篇《Spring MVC测试框架详解——服务端测试》已经介绍了服务端测试,接下来再看看如果测试Rest客户端,对于客户端测试以前经常使用的方法是启动一个内嵌的jetty/tomcat容器,然后发送真实的请求到相应的控制器;这种方式的缺点就是速度慢;自Spring 3.2开始提供了对RestTemplate的模拟服务器测试方式,也就是说使用RestTemplate测试时无须启动服务器,而是模拟一
- 关于推荐个人观点
liyonghui160com
推荐系统关于推荐个人观点
回想起来,我也做推荐了3年多了,最近公司做了调整招聘了很多算法工程师,以为需要多么高大上的算法才能搭建起来的,从实践中走过来,我只想说【不是这样的】
第一次接触推荐系统是在四年前入职的时候,那时候,机器学习和大数据都是没有的概念,什么大数据处理开源软件根本不存在,我们用多台计算机web程序记录用户行为,用.net的w
- 不间断旋转的动画
pangyulei
动画
CABasicAnimation* rotationAnimation;
rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
rotationAnimation.toValue = [NSNumber numberWithFloat: M
- 自定义annotation
sha1064616837
javaenumannotationreflect
对象有的属性在页面上可编辑,有的属性在页面只可读,以前都是我们在页面上写死的,时间一久有时候会混乱,此处通过自定义annotation在类属性中定义。越来越发现Java的Annotation真心很强大,可以帮我们省去很多代码,让代码看上去简洁。
下面这个例子 主要用到了
1.自定义annotation:@interface,以及几个配合着自定义注解使用的几个注解
2.简单的反射
3.枚举
- Spring 源码
up2pu
spring
1.Spring源代码
https://github.com/SpringSource/spring-framework/branches/3.2.x
注:兼容svn检出
2.运行脚本
import-into-eclipse.bat
注:需要设置JAVA_HOME为jdk 1.7
build.gradle
compileJava {
sourceCompatibilit
- 利用word分词来计算文本相似度
yangshangchuan
wordword分词文本相似度余弦相似度简单共有词
word分词提供了多种文本相似度计算方式:
方式一:余弦相似度,通过计算两个向量的夹角余弦值来评估他们的相似度
实现类:org.apdplat.word.analysis.CosineTextSimilarity
用法如下:
String text1 = "我爱购物";
String text2 = "我爱读书";
String text3 =