- 设备 esp32_玩转GPIO之基于ESP32的Arduino和Python开发(总纲)
weixin_39629989
设备esp32
最近发现了一个性价比超高的芯片,价格20多块钱,可以学Arduino、学Python、学Lua等等!简直就是芯片界的业界良心——ESP32。ESP32芯片是乐鑫出产的,自带蓝牙和WiFi,所以目前成为了物联网界的重要基础芯片。而且最关键的,ESP32能够支持Arduino,这就为ESP32的广泛应用打下了坚实的群众基础!乐鑫官网的介绍为:双核Wi-Fi&BT/BluetoothLE模组特性◼两个可
- uniapp通过蓝牙在设备中拿数据
阿凤21
uni-app前端
1、初始化蓝牙模块:uni.openBluetoothAdapter({success(res1){console.log("蓝牙初始化成功",res1)}})2、初始化蓝牙后,获取本机蓝牙是否开启uni.getBluetoothAdapterState({success:function(row){console.log('蓝牙状态:',row.available);if(row.availab
- 鸿蒙蓝牙通信
屿筱
鸿蒙HarmonyOS5
https://developer.huawei.com/consumer/cn/doc/best-practices/bpta-bluetooth-low-energy蓝牙权限module.json5{"module":{"requestPermissions":[{"name":"ohos.permission.ACCESS_BLUETOOTH","reason":"$string:app_n
- 微软 Bluetooth LE Explorer 实用工具的详细使用分析
悟空胆好小
microsoft
微软BluetoothLEExplorer实用工具的详细使用分析文章目录微软**BluetoothLEExplorer**实用工具的详细使用分析1.**工具定位与核心功能**2.**关键特性与更新**3.**使用场景示例**4.**系统要求与依赖**5.**与专业工具对比**6.**局限性**7.**实践建议**结论以下是微软BluetoothLEExplorer实用工具的详细使用分析:1.工具定
- stm32与ESP32-C3通过串口连接
林内克思
stm32嵌入式硬件单片机
ESP32-C3是一款安全稳定、低功耗、低成本的物联网芯片,搭载RISC-V32位单核处理器,支持2.4GHzWi-Fi和Bluetooth5(LE)。ESP32-C3本身就可以作为一个单片机使用,但是我们这里只是把ESP32-C3作为一个Wi-Fi/蓝牙模块使用。STM32与ESP32-C3使用串口进行通讯。STM32可以给ESP32-C3发送命令,这种命令叫ESP-AT指令。首先通过pc串口E
- BLE长连接和短连接详解
秋の水
BLE智能硬件
BLE(BluetoothLowEnergy)长连接是指:设备间建立连接后持续保持通信链路的状态,通过周期性交互(连接事件)维持链路活性,即使无数据传输也不立即断开。与短连接的核心区别在于连接维持机制、功耗、延迟及适用场景。一、BLE长连接的核心机制连接事件(ConnectionEvent)主从设备按固定时间间隔(连接间隔,7.5ms~4s)在指定信道交互数据包,每次交互包含主设备发送→从设备响应
- BLE HID 低功耗设计:功耗分析、影响因素与优化策略
34号树洞
#蓝牙专栏物联网专栏物联网BLEHID低功耗设计
目录一、BLEHID功耗组成二、关键功耗参数指标三、常见芯片功耗参考四、功耗优化建议1.广播阶段优化2.连接参数优化3.空闲与唤醒机制4.HID报文设计优化5.LED/指示器功耗优化五、BLEHID功耗估算案例(典型BLE键盘)六、实用工具推荐在BLEHID(BluetoothLowEnergyHumanInterfaceDevice)设备设计中,功耗是至关重要的技术指标,特别是电池供电的设备如:
- BlueToothCtl修改linux本机蓝牙名称
大象荒野
嵌入式QT开发linux
进入蓝牙控制工具bluetoothctl输入以下命令system-alias新名称就可以了。如果是修改其他蓝牙名称输入devices可以查看匹配的蓝牙,连接上以后,set-alias"新名称"
- Flutter:BLE蓝牙开发
杨先生_
Flutterflutter
说明:使用flutter_blue_plus插件实现低功耗蓝牙开发。一、添加蓝牙权限:1.Android网络权限(工程/android/app/src/main/AndroidManifest.xml):2.iOS蓝牙权限(工程/ios/Runner/Info.plist): ... NSBluetoothAlwaysUsageDescription NeedBLEpermission N
- 无线USB转换器TOS-WLink的无线USB助手配置文件详细胡扯
开源的6lowpan
linux运维无线USB转换器无线调试器无线串口无线JLink
1,TOS无线USB助手配置文件tos.ini[Config]mode=autodev=BluetoothLE#BluetoothLE0c:9a:3c:69:e6:f4-b4:c2:e0:b1:2f:b4pd=jybdwjgxrgIP=192.168.1.29HB=10拿到货的或者在网盘公共区间看过TOS无线USB助手的,它目录下面是三个exe文件;和一个tos.ini配置文件;mode字段---
- 【android bluetooth 协议分析 02】【bluetooth hal 层详解 6】【bt_vendor_opcode_t 介绍】
奔跑吧 android
android15蓝牙协议栈分析androidbthalaosp13hidl_1.0
bt_vendor_opcode_t介绍在AOSP的BluetoothVendor接口中,bt_vendor_opcode_t定义了一组供上层调用的操作指令。这些操作在蓝牙初始化、使用和关闭过程中由协议栈(如Bluedroid)驱动调用,按照一定的顺序执行。这些枚举项代表VendorInterfaceAPI的操作码,协议栈通过调用vendor_call()接口并传入这些opcodes来控制蓝牙芯片
- 【android bluetooth 协议分析 02】【bluetooth hal 层详解 3】【高通蓝牙hal主要流程介绍-上】
奔跑吧 android
android15蓝牙协议栈分析androidbt_hal_1.0qcomqcom_btbluetooth高通蓝牙hal
1.背景本节主要讨论高通蓝牙hal中,的一些流程。看看你是否都清楚如下问题:高通芯片电如何控制?串口是在哪里控制的?固件如何下载?初始化流程是怎么样的?如果你已经对上述讨论的问题,已经很清楚了,那你无需阅读该文章,请自行忽略。当然,也可以给笨叔挑挑错。欢迎评论,一起探讨,毕竟都是笨叔自己的理解,难免有点出入,我也想进步!!!在阅读这篇文章之前,可以先阅读一下两篇文章。【androidbluetoo
- 【android bluetooth 协议分析 14】【HFP详解 1】【案例一: 手机侧显示来电,但车机侧没有显示来电: 讲解AT+CLCC命令】
奔跑吧 android
android15蓝牙协议栈分析androidhfpaghfheadsetclienttelecomaosp13
1.背景今天上报了一例,手机是连接了蓝牙的。但此时来电时,车机侧不显示来电。可以在手机侧看到来电。这里简单分享一下这个问题。借着这个问题,我们讲解一下:SentAT+CLCCRcvd+CLCC:1,1,4,0,0,“173xxxxxxx7”,129,"173xxxxxx7"2.案例分析1.问题情况日志:从btsnoop文件中很清楚的看到我们车机下发了SentAT+CLCC1455852025-06
- Android -- Bluetooth framework启动过程简析
第一序列丶
AndroidBT框架简析AndroidBluetoothBTBT启动framework
Android--Bluetoothframework启动过程简析蓝牙是Android设备中非常常见的一个feature,设备厂家可以用BT来做RC、连接音箱、设备本身做Sink等常见功能。如果一些设备不需要BT功能,Android也可以通过配置来disable此模块,方便厂家为自己的设备做客制化。APP操作设备的蓝牙功能,一般是通过标准API-BluetoothAdapter实现,这里我们先不关
- 乐鑫 ESP32-C61 全面进入量产!
乐鑫科技 Espressif
乐鑫科技物联网ESP32Wi-Fi6
乐鑫信息科技(688018.SH)宣布,ESP32-C61现已全面进入量产。这款集成2.4GHzWi-Fi6与Bluetooth5(LE)的高连接、高性价比SoC,专为满足新一代智能设备对高速连接与低功耗的双重需求而设计。ESP32-C61支持2.4GHzWi-Fi6和Bluetooth5(LE),集成上行、下行正交频分多址(OFDMA)接入和下行多用户多输出多输入(MU-MIMO)接入机制,同时
- 乐鑫 ESP32-C5 全面进入量产!
乐鑫科技 Espressif
乐鑫物联网乐鑫科技ESP32-C5Wi-Fi6risc-v
乐鑫信息科技(688018.SH)宣布,ESP32-C5现已全面进入量产。作为行业首款支持2.4&5GHz双频Wi-Fi6的RISC-VSoC,ESP32-C5同时集成Bluetooth5(LE)和IEEE802.15.4(Zigbee,Thread)协议栈,为物联网设备提供高性能无线连接解决方案。ESP32-C5搭载RISC-V32位单核处理器,主频高达240MHz,内置384KBSRAM、32
- 【蓝牙】Qt4中向已配对的手机发送PDF文件
漫步企鹅
QT4蓝牙PDF
在Qt4中实现通过蓝牙向已配对的设备发送文件(例如PDF文件),你可以使用QtBluetooth模块。Qt4的蓝牙模块提供了基本的蓝牙功能,包括设备发现、配对管理和数据传输。下面是一些步骤和示例代码,帮助你通过蓝牙发送PDF文件。步骤1:配置项目文件首先,确保你的Qt项目文件(.pro文件)包含了必要的模块:QT+=bluetooth步骤2:查找已配对的设备使用QBluetoothAddress和
- 掌握BLE蓝牙通信:从搜索到数据传输的全面实现
亜恵恵阿由
本文还有配套的精品资源,点击获取简介:蓝牙技术是用于设备间短距离无线数据交换的一种技术,BLE(BluetoothLowEnergy)特别适合物联网设备。本课程涵盖BLE在Android平台上的搜索、连接以及数据传输流程。重点讲述使用AndroidBluetooth和BluetoothLeUtils类的实现方法,包括如何启动BLE扫描、连接设备、通过特性进行数据的读写操作,以及如何获取设备详细信息
- 【蓝牙】Linux Qt4蓝牙配对与分享
漫步企鹅
智能手机蓝牙PDF分享Linux
在LinuxQt4环境下实现蓝牙配对与PDF文件传输到手机,可参考以下步骤:1.蓝牙环境准备安装蓝牙工具包:bashCopyCodesudoapt-getinstallbluezbluez-toolsobexftp确保蓝牙服务已启动:bashCopyCodesudosystemctlrestartbluetooth```:ml-citation{ref="1,2"data="citatio
- 【蓝牙】手机连接Linux系统蓝牙配对,Linux Qt5分享PDF到手机
漫步企鹅
智能手机linuxqt蓝牙分享PDF
要实现手机连接A40iLinux系统并通过蓝牙接收PDF文件,可以按照以下步骤操作:1.配置Linux蓝牙功能确保开发板上的蓝牙模块已正确驱动并支持蓝牙协议栈。安装蓝牙工具:bashsudoaptinstallbluetoothbluezbluez-tools启动蓝牙服务:bashsudosystemctlstartbluetooth检查蓝牙设备状态:bashhciconfig如果看到hci0设备
- Bluetooth® 测试原理概览(基于 R&S®CMW 测试平台)
cccsjjsccc
通信信息与通信
Bluetooth®测试原理概览(基于R&S®CMW测试平台)一、Bluetooth®技术基础Bluetooth®Classic:适用于语音、音频、数据传输,采用GFSK、π/4-DQPSK、8DPSK等调制方式,最大速率3Mbps,延迟高,支持7个设备连接。Bluetooth®LowEnergy(LE):适用于低功耗场景,如可穿戴、医疗、IoT等,最大速率2Mbps,延迟低,支持无限外设连接。两
- 【android bluetooth 框架分析 04】【bt-framework 层详解 4】【AdapterState介绍】
奔跑吧 android
android15蓝牙协议栈分析androidAdapterStatebtbluetoothaosp13gd
1.问题在蓝牙的启动过程中,我们会看到如下log:01-0204:40:07.20691822592658IAdapterState0:OFF:entered01-0204:40:07.34823222592658IAdapterState0:BLE_TURNING_ON:entered01-0204:40:09.01373822592658IAdapterState0:BLE_ON:entere
- 【android bluetooth 框架分析 04】【bt-framework 层详解 6】【Properties介绍】
奔跑吧 android
android15蓝牙协议栈分析androidaosp13btbluetoothframeworkbt.server
DeviceProperties、AdapterProperties、StorageModule、以及bt_config.conf是AOSPBluetooth栈中设备属性管理与持久化系统的核心组成部分,它们之间关系紧密,但职责各有不同。下面我将依次讲解它们的区别与联系.注意:在代码里面还有BluetoothProperties:他是管理蓝牙相关的系统属性的,和本文讨论的DeviceProperti
- 【android bluetooth 框架分析 04】【bt-framework 层详解 5】【AbstractionLayer介绍】
奔跑吧 android
android15蓝牙协议栈分析androidbluetoothbtgdframeworkaosp13
1.AbstractionLayer介绍我们在阅读native和java层蓝牙服务代码时,会发现很多AbstractionLayer.xxxxx的字段。这些字段虽然很容易理解是干什么的。但是大家有没有考虑过,为啥要专门定义一个类来存放他们。这样设计的意义是什么?1.字段解释packages/modules/Bluetooth/android/app/src/com/android/bluetoot
- 通过BLE实现类似UART的串行通信:NUS服务 vs GATT服务
YuZou 邹宇
蓝牙BLEUARTNUSGATT
在物联网和智能设备的发展中,蓝牙低功耗(BluetoothLowEnergy,BLE)技术已经成为无线数据传输的重要手段。本文将介绍通过BLE实现类似UART的串行通信,并对比NUS服务和GATT服务的使用场景,帮助开发者更好地选择适合的技术方案。什么是UART?UART(UniversalAsynchronousReceiver/Transmitter,通用异步收发器)是一种用于串行通信的硬件协
- BLE蓝牙低功耗技术实战指南
郝隽君
BLE蓝牙低功耗技术实战指南BLE✨AndroidBLE基础操作框架,基于回调,操作简单。包含扫描、多连接、广播包解析、服务读写及通知等功能。项目地址:https://gitcode.com/gh_mirrors/bl/BLE一、项目介绍本项目旨在深入探索蓝牙低功耗(BluetoothLowEnergy,简称BLE)技术的应用与开发,提供了一系列基于Android平台的示例代码和实用工具,帮助开发
- Android 蓝牙通信
消失的旧时光-1943
androidjava蓝牙通信
Android平台提供了完整的蓝牙API,支持传统蓝牙(BluetoothClassic)和低功耗蓝牙(BBluetoothLowEnergy,BLE)两种通信方式。以下是开发蓝牙应用的关键知识点。1.基本概念传统蓝牙(BluetoothClassic)适合大流量数据传输(如音频、文件传输)典型协议:RFCOMM(串口模拟),A2DP(音频),HFP(免提)等低功耗蓝牙(BLE)适合间歇性小数据量
- linux wifi已通过硬件开关禁用,关于ubuntu下Wi-Fi已通过硬件开关禁用的解决办法
屋顶长颈鹿
linuxwifi已通过硬件开关禁用
当装入双系统时,可能会出现Wi-Fi硬件开关关闭的问题,这时电脑无法联网。一、查看问题打开终端输入命令:$rfkilllistall出现如下提示:0:ideapad_wlan:WirelessLANSoftblocked:noHardblocked:yes1:ideapad_bluetooth:BluetoothSoftblocked:noHardblocked:yes2:phy0:Wireles
- 01-蓝牙协议栈介绍
夕阳230
嵌入式+蓝牙音频单片机BLE蓝牙蓝牙协议嵌入式音频
01蓝牙入门-蓝牙协议栈介绍一、蓝牙类型特性经典蓝牙(BR,EDR)低功耗蓝牙(BLE)备注全称BasicRate/EnhancedDataRateBluetoothLowEnergy经典蓝牙在嵌入式领域基本被放弃使用,现在着重使用低功耗蓝牙主要用途音频传输低功耗设备经典蓝牙适合大数据传输,BLE适合小数据、低功耗场景传输速度1-3Mbps1Mbps功耗高极低BLE的功耗是经典蓝牙的1/10到1/
- 【android bluetooth 案例分析 04】【Carplay 详解 1】【CarPlay 在车机侧的蓝牙通信原理与角色划分详解】
奔跑吧 android
android15蓝牙协议栈分析androidaosp13carplaybluetoothbtsppIAP
CarPlay在车机侧的蓝牙通信原理与角色划分详解AppleCarPlay是苹果推出的一种车载互联系统,它允许iPhone与车载系统无缝连接,实现地图导航、电话、消息和音乐等功能。在无线CarPlay场景下,蓝牙与Wi-Fi是通信的两大核心基础。本文将从车机侧作为Server和Client的视角,结合AOSP实现细节,全面分析CarPlay中的蓝牙处理逻辑与关键UUID的作用。一、车机在CarPl
- 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 =