- 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
- 【android bluetooth 协议分析 03】【蓝牙扫描详解 1】【扫描关键函数 btif_dm_search_devices_evt 分析】
奔跑吧 android
android15蓝牙协议栈分析androidstartDiscoveryinquirybtbluetoothaosphci
1.背景本篇我们来对btif_dm_search_devices_evt函数进行分析.这是系统性分析Bluetooth协议栈中的设备扫描流程时必须厘清的一环。1.为什么要单独分析btif_dm_search_devices_evt函数:btif_dm_search_devices_evt是BTIF层中处理设备扫描(discovery)阶段事件的核心函数。虽然它不负责服务发现(SDP),但它对扫描流
- OpenHarmony4.1蓝牙芯片如何适配?触觉智能RK3568主板SBC3568演示
Industio_触觉智能
OpenHarmony开源鸿蒙触觉智能鸿蒙开发板RK3568
当打开蓝牙后没有反应时,需要排查蓝牙节点是否对应、固件是否加载成功,本文介绍开源鸿蒙OpenHarmony4.1系统下适配蓝牙的方法,触觉智能SBC3568主板演示修改对应节点开发板蓝牙硬件连接为UART1,修改对应的节点,路径为:ido_ohos_4.1r_sdk/vendor/hihope/rk3568/bluetooth/include/bt_vendor_brcm.h/*Devicepor
- cvsd matlab,bluetooth_Audio_Codec 蓝牙语音的编解码有三种模式:CVSD - 下载 - 搜珍网...
Dennis Feng
cvsdmatlab
bluetooth_Audio_Codec/doc/cvsd模块逻辑框图.vsdbluetooth_Audio_Codec/doc/pcm_aulaw模块逻辑图.vsdbluetooth_Audio_Codec/doc/readme.txtbluetooth_Audio_Codec/doc/top逻辑框图.vsdbluetooth_Audio_Codec/project/audio/audio.i
- BLE蓝牙gatt协议的server端发布服务的UUID不全问题
尕尕Lula
Android
最近项目使用BLE蓝牙的gatt协议进行通讯,在mtk平台上遇见一个问题:server端发布服务的uuid总是获取不全,有时候甚至获取不到,特别频繁。我之前是这样添加多个service的,以三个为例://马达服务BluetoothGattServicegattService=newBluetoothGattService(Constant.UUID_SERVER_MOVE,BluetoothGat
- ESP32-C6物联网开发:低功耗传感器联动方案
知识产权13937636601
计算机物联网
一、芯片特性与开发环境1.1ESP32-C6核心技术解析乐鑫2023年推出的ESP32-C6芯片,在物联网领域实现三大突破:多协议支持:同时运行Wi-Fi6、Bluetooth5.3、Zigbee3.0和Thread1.3功耗优化:深度睡眠模式电流低至5μA(RTC内存保持)安全增强:集成RSA-3072加密协处理器与安全启动2.01.2开发工具链搭建推荐使用ESP-IDFv5.1开发框架,配置要
- 深入浅出Java Annotation(元注解和自定义注解)
Josh_Persistence
Java Annotation元注解自定义注解
一、基本概述
Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。
更通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或
- mysql优化特定类型的查询
annan211
java工作mysql
本节所介绍的查询优化的技巧都是和特定版本相关的,所以对于未来mysql的版本未必适用。
1 优化count查询
对于count这个函数的网上的大部分资料都是错误的或者是理解的都是一知半解的。在做优化之前我们先来看看
真正的count()函数的作用到底是什么。
count()是一个特殊的函数,有两种非常不同的作用,他可以统计某个列值的数量,也可以统计行数。
在统
- MAC下安装多版本JDK和切换几种方式
棋子chessman
jdk
环境:
MAC AIR,OS X 10.10,64位
历史:
过去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,并且OS X 10.7 开始系统并不自带(而是可选安装)(原自带的是1.6)。
后来 Apple 加入 OpenJDK 继续支持 Java 6,而 Java 7 将由 Oracle 负责提供。
在终端中输入jav
- javaScript (1)
Array_06
JavaScriptjava浏览器
JavaScript
1、运算符
运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位
- 国内顶级代码分享网站
袁潇含
javajdkoracle.netPHP
现在国内很多开源网站感觉都是为了利益而做的
当然利益是肯定的,否则谁也不会免费的去做网站
&
- Elasticsearch、MongoDB和Hadoop比较
随意而生
mongodbhadoop搜索引擎
IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配
- mac os 系统科研软件总结
张亚雄
mac os
1.1 Microsoft Office for Mac 2011
大客户版,自行搜索。
1.2 Latex (MacTex):
系统环境:https://tug.org/mactex/
&nb
- Maven实战(四)生命周期
AdyZhang
maven
1. 三套生命周期 Maven拥有三套相互独立的生命周期,它们分别为clean,default和site。 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和Maven最直接的交互方式就是调用这些生命周期阶段。 以clean生命周期为例,它包含的阶段有pre-clean, clean 和 post
- Linux下Jenkins迁移
aijuans
Jenkins
1. 将Jenkins程序目录copy过去 源程序在/export/data/tomcatRoot/ofctest-jenkins.jd.com下面 tar -cvzf jenkins.tar.gz ofctest-jenkins.jd.com &
- request.getInputStream()只能获取一次的问题
ayaoxinchao
requestInputstream
问题:在使用HTTP协议实现应用间接口通信时,服务端读取客户端请求过来的数据,会用到request.getInputStream(),第一次读取的时候可以读取到数据,但是接下来的读取操作都读取不到数据
原因: 1. 一个InputStream对象在被读取完成后,将无法被再次读取,始终返回-1; 2. InputStream并没有实现reset方法(可以重
- 数据库SQL优化大总结之 百万级数据库优化方案
BigBird2012
SQL优化
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。
这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where
- jsonObject的使用
bijian1013
javajson
在项目中难免会用java处理json格式的数据,因此封装了一个JSONUtil工具类。
JSONUtil.java
package com.bijian.json.study;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
- [Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration
bit1129
zookeeper
Zookeeper类是Zookeeper提供给用户访问Zookeeper service的主要API,它包含了如下几个内部类
首先分析它的内部类,从WatchRegistration开始,为指定的znode path注册一个Watcher,
/**
* Register a watcher for a particular p
- 【Scala十三】Scala核心七:部分应用函数
bit1129
scala
何为部分应用函数?
Partially applied function: A function that’s used in an expression and that misses some of its arguments.For instance, if function f has type Int => Int => Int, then f and f(1) are p
- Tomcat Error listenerStart 终极大法
ronin47
tomcat
Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下
Java代码
handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHa
- 不用加减符号实现加减法
BrokenDreams
实现
今天有群友发了一个问题,要求不用加减符号(包括负号)来实现加减法。
分析一下,先看最简单的情况,假设1+1,按二进制算的话结果是10,可以看到从右往左的第一位变为0,第二位由于进位变为1。
 
- 读《研磨设计模式》-代码笔记-状态模式-State
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况
把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化
如果在
- CUDA程序block和thread超出硬件允许值时的异常
cherishLC
CUDA
调用CUDA的核函数时指定block 和 thread大小,该大小可以是dim3类型的(三维数组),只用一维时可以是usigned int型的。
以下程序验证了当block或thread大小超出硬件允许值时会产生异常!!!GPU根本不会执行运算!!!
所以验证结果的正确性很重要!!!
在VS中创建CUDA项目会有一个模板,里面有更详细的状态验证。
以下程序在K5000GPU上跑的。
- 诡异的超长时间GC问题定位
chenchao051
jvmcmsGChbaseswap
HBase的GC策略采用PawNew+CMS, 这是大众化的配置,ParNew经常会出现停顿时间特别长的情况,有时候甚至长到令人发指的地步,例如请看如下日志:
2012-10-17T05:54:54.293+0800: 739594.224: [GC 739606.508: [ParNew: 996800K->110720K(996800K), 178.8826900 secs] 3700
- maven环境快速搭建
daizj
安装mavne环境配置
一 下载maven
安装maven之前,要先安装jdk及配置JAVA_HOME环境变量。这个安装和配置java环境不用多说。
maven下载地址:http://maven.apache.org/download.html,目前最新的是这个apache-maven-3.2.5-bin.zip,然后解压在任意位置,最好地址中不要带中文字符,这个做java 的都知道,地址中出现中文会出现很多
- PHP网站安全,避免PHP网站受到攻击的方法
dcj3sjt126com
PHP
对于PHP网站安全主要存在这样几种攻击方式:1、命令注入(Command Injection)2、eval注入(Eval Injection)3、客户端脚本攻击(Script Insertion)4、跨网站脚本攻击(Cross Site Scripting, XSS)5、SQL注入攻击(SQL injection)6、跨网站请求伪造攻击(Cross Site Request Forgerie
- yii中给CGridView设置默认的排序根据时间倒序的方法
dcj3sjt126com
GridView
public function searchWithRelated() {
$criteria = new CDbCriteria;
$criteria->together = true; //without th
- Java集合对象和数组对象的转换
dyy_gusi
java集合
在开发中,我们经常需要将集合对象(List,Set)转换为数组对象,或者将数组对象转换为集合对象。Java提供了相互转换的工具,但是我们使用的时候需要注意,不能乱用滥用。
1、数组对象转换为集合对象
最暴力的方式是new一个集合对象,然后遍历数组,依次将数组中的元素放入到新的集合中,但是这样做显然过
- nginx同一主机部署多个应用
geeksun
nginx
近日有一需求,需要在一台主机上用nginx部署2个php应用,分别是wordpress和wiki,探索了半天,终于部署好了,下面把过程记录下来。
1. 在nginx下创建vhosts目录,用以放置vhost文件。
mkdir vhosts
2. 修改nginx.conf的配置, 在http节点增加下面内容设置,用来包含vhosts里的配置文件
#
- ubuntu添加admin权限的用户账号
hongtoushizi
ubuntuuseradd
ubuntu创建账号的方式通常用到两种:useradd 和adduser . 本人尝试了useradd方法,步骤如下:
1:useradd
使用useradd时,如果后面不加任何参数的话,如:sudo useradd sysadm 创建出来的用户将是默认的三无用户:无home directory ,无密码,无系统shell。
顾应该如下操作:
- 第五章 常用Lua开发库2-JSON库、编码转换、字符串处理
jinnianshilongnian
nginxlua
JSON库
在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成
- Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
yaerfeng1989
timerquartz定时器
原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
代码下载地址:http://www.zuidaima.com/share/1772648445103104.htm
有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。
1.Java Timer定时
首先继承jav
- Linux下df与du两个命令的差别?
pda158
linux
一、df显示文件系统的使用情况,与du比較,就是更全盘化。 最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型。 举比例如以下: [root@localhost ~]# df -T Filesystem Type &n
- [转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象
ctfzh
VOandroidsqlite反射Cursor
在写DAO层时,觉得从Cursor里一个一个的取出字段值再装到VO(值对象)里太麻烦了,就写了一个工具类,用到了反射,可以把查询记录的值装到对应的VO里,也可以生成该VO的List。
使用时需要注意:
考虑到Android的性能问题,VO没有使用Setter和Getter,而是直接用public的属性。
表中的字段名需要和VO的属性名一样,要是不一样就得在查询的SQL中
- 该学习笔记用到的Employee表
vipbooks
oraclesql工作
这是我在学习Oracle是用到的Employee表,在该笔记中用到的就是这张表,大家可以用它来学习和练习。
drop table Employee;
-- 员工信息表
create table Employee(
-- 员工编号
EmpNo number(3) primary key,
-- 姓