- [3-02-01].第14节:三方整合 - SpringData整合Redis集群
1.01^1000
阶段03:企业框架springboot
Redis大纲一、SpringBoot整合主从架构的Redis:1.1.问题说明:1.在Sentinel集群监管下的Redis哨兵架构中,其节点会因为自动故障转移而发生变化,Redis的客户端必须感知这种变化,及时更新连接信息2.SpringBoot中的RedisTemplate底层利用lettuce实现了节点的感知和自动切换,我们需要进行配置才可以实现这种动态上下线的情况。下面,我们通过一个测试
- 百万并发稳如磐石:Redis穿透/雪崩避坑实战与架构精要
今天你慧了码码码码码码码码码码
Redisredis架构数据库
某社交平台在明星官宣离婚时突发崩溃:每秒50万查询涌向数据库,导致核心服务不可用30分钟。事后分析发现,恶意用户伪造海量不存在的用户ID发起请求,同时大量热点Key集中失效,引发缓存穿透与雪崩的双重风暴。这个千万级损失的案例,揭示了缓存异常处理的生死攸关。一、缓存穿透:恶意请求的隐形杀手1.穿透原理与危害分析恶意用户缓存数据库循环其他恶意用户系统告警查询不存在的数据(user_9999999)缓存
- Java HashMap扩容=灾难?看Redis如何用渐进式方案征服亿级Key
今天你慧了码码码码码码码码码码
Redis数据库redisjava
某电商平台在进行大促压测时,一个存储3000万用户资料的Hash表触发扩容,导致Redis实例完全阻塞12秒,所有请求超时。切换到渐进式扩容方案后,同样规模扩容仅造成0.3毫秒的请求延迟波动。这个案例揭示了哈希表扩容机制对高并发系统的致命影响。一、Redis哈希表vsJavaHashMap:架构本质差异1.底层结构对比特性Redis哈希表JavaHashMap存储结构拉链法(链表解决冲突)链表+红
- 为什么MySQL怕排序,Redis ZSet却秒杀?跳表+亿级数据的架构暴力美学
某证券交易所实时股价排序系统突发故障:处理10万支股票的排序请求从毫秒级飙升到12秒。事后发现ZSet元素数量突破阈值后,底层结构未能从listpack切换到跳表,导致性能断崖式下跌。这个千万级损失的案例揭示了ZSet底层实现的关键性。一、ZSet双引擎架构:自适应存储的艺术1.小数据高效存储:listpack(Redis7.0+)//listpack内存结构示例[总字节数][元素数量][元素1]
- 初学者之Redis
美好的事情能不能发生在我身上
redis数据库缓存java后端springspringboot
文章目录前言一、什么是Redis二、Redis基本类型三、通用命令四、基础命令1.String类型2.List类型3.Set类型4.Hash类型5.Zset有序集合类型五、在Java中的运用1.配置信息2.配置类3.操作String类型4.操作Hash类型5.操作List类型6.操作Set类型7.操作ZSet类型六、修改营业状态的实例总结前言第一次学习Redis,最后的目标是在idea中连接red
- redis-cluster集群动态扩容
上一篇文章一步一步的教大家搭建了Redis的Cluster集群环境,形成了3个主节点和3个从节点的Cluster的环境。1、cluster集群增加操作主节点的操作和从节点的操作,因为主、从节点在操作上会有差异,所以分来说。增加节点的顺序是先增加master主节点,然后在增加slave从节点。1.1、增加主节点master1.1.1、正常配置完redis.confdaemonizeyes#后台启动p
- 基于 Java 的电商业务秒杀商品高并发、数据一致性、系统性能等多个方面设计方案
一杯冰美式_丶
java开发语言
1.需求分析高并发:大量用户同时抢购,系统需要支持高并发请求。库存一致性:避免超卖(库存减为负数)或数据不一致。高性能:响应时间要短,用户体验要好。公平性:先到先得,避免作弊。2.技术选型缓存:使用Redis缓存商品库存和秒杀结果,减少数据库压力。消息队列:使用RabbitMQ或Kafka异步处理订单,削峰填谷。数据库:MySQL存储订单和商品信息,使用事务保证数据一致性。分布式锁:使用Redis
- Redis-哨兵选取主节点流程
1.主观下线:哨兵节点通过心跳包,判定redis服务器是否正常工作,若心跳包没有按时到达,说明redis服务器出现故障了.此时还需要再进行判定,不能排除是网络波动的影响,认为redis节点的出现故障.2.客观下线:当多个哨兵节点都认为主节点出现故障了(认为主节点出现故障的哨兵节点数目达到法定票数),就认为该主节点确实是下线了.3.选取leader哨兵节点:当主节点出现故障后,哨兵节点就要采取措施补
- Redis有哪些常用应用场景?
大家好,我是锋哥。今天分享关于【Redis有哪些常用应用场景?】面试题。希望对大家有帮助;Redis有哪些常用应用场景?超硬核AI学习资料,现在永久免费了!Redis是一种高性能的内存数据库,常用于以下应用场景:缓存Redis常作为缓存解决方案,提高数据读取效率,减轻数据库负担。常用于存储热点数据、频繁访问的资源。会话存储Redis可以高效存储用户会话信息(Session),支持大规模高并发的读写
- redis统计各用户版本记录
逐梦ya
redisjava数据库
思路:通过每次用户登录去使用redi统计用户useid和版本version-->目的是为啦获取之前存入redis中的版本判断用户之前有没有存版本没有则新增,有且版本升级则更新用户版本,版本相同则直接返回。//定义RedisKeyStringuserVersionKey="user:version";//1.使用Map存储用户-版本映射RMapuserVersionMap=redissonClien
- 20250708-02-redis通用key操作命令_笔记
一、Redis1.通用键值操作1)键的查看操作keys命令基本功能:查询当前数据库中的所有key,支持精确查询和模糊查询与memcached区别:memcached无法查询所有key,这是Redis特有的功能查询示例:keys*返回所有key(如"age"和"site")keyssite精确查询指定keykeyss*查询以s开头的key通配符三种通配符:*:匹配任意多个字符(如key
- redis学习笔记
1.在docker上安装redis之后,具体可以看我之前的docker教程一.进入docker的redis容器中#进入docker的redis容器中dockerexec-itredis/bin/bash#启动redisredis-cli#设置键setmykeyabc#取出键getmykey#删除键delmykey二,Redis数据类型字符串(string),哈希(hash),列表(list),集合
- Redis中常见的基础和高级数据结构
Redis数据类型eg:大写代表属于redis的关键字,小写代表可填值String定义:存储字节序列(二进制安全的字符串),包括文本、序列化对象和二进制数组,并允许实现计数器和bit操作。作为Redis中其他数据类型的存储单元,如:List、Set、Hashes。命令:命令|文档—Commands|DocsSETkeyvalue:设置键值对命令参数:nx:如果键已存在则失败,可以实现简易的不可重入
- 【容器】优质文章分享
文章目录加速器Docker教程安装坑volumn网络配置踩坑其他dockerfiledocker-compose手册教程网络坑docker使用dockermysqldockermongoredisdocker-rabbitmqnginxtomcatnacoszookeeperelasticsearch加速器现在docker镜像站真的不好找了。阿里什么的加速目前只能给阿里自己的容器用了。且用且珍惜D
- Python 三方库 python-dotenv
wohu007
#标准库和三方库pythonpython-dotenv
1.简介在一些项目中,处于安全性的要求,一般不将密码,key等放入到配置文件中。然而这些代码又是上传在git等平台上。为了方便管理。一般采用系统变量的方式来实现。从而实现配置和代码分开。2.安装pipinstallpython-dotenv3.使用目录结构及代码.├──.env└──demo.py.env内容REDIS_HOST="127.0.0.1"PWD="/home/wohu"你可以使用单词
- 集群Redis
文章目录前言一、Redis主从复制配置1.1.配置文件redis_master.conf,redis_slave.conf1.2.启动服务1.3.检查成果二、Redis集群配置2.1.服务器40.240.34.91集群配置2.2.其它服务器xxx.92,xxx.93集群配置2.3.启动服务2.3.启动集群服务2.4.检查成果三、优劣四、结束前言提示:本文主讲两种redis数据同步形式,1.主从复制
- redis跨db跨redis迁移方案选型
redis
redis本身有rdb备份功能,整个文件备份和恢复的策略。但是这个适合的场景比较窄,有些场景,比如从db0导出到db1,或者是跨redis,跨机房迁移redis,rdb的方式显然是不适合的,因为对方的redis可能有其他的数据,不可能使用你本地备份的rdb文件来取代目标redis的rdb文件。因此,我研究了好几种redis客户端工具,做来选型。下面是我研究过的数据迁移工具:redis-dump:命
- ehcache3多级缓存应用
枫火木烈王
中间件缓存springspringboot
项目中如果有使用大量的本地缓存场景,可以使用redis+ehcache组合缓存,优先使用ehcache本地缓存,本地缓存没有查询到再使用redis缓存可看前文中如何集成本地缓存使用存在的问题1、本地缓存如何保证缓存的是最新值可定义版本号、自增id或者时间戳,进行判断比对是否是最新值2、各个节点保证本地缓存一致性保证各个节点的一致性,且不影响性能,常使用消息进行发布订阅或者是广播模式进行同步publ
- 多级缓存如何应用
t梧桐树t
缓存
什么是多级缓存提到多级缓存,很多人第一时间想到通过Guava本地缓存+Redis分布式缓存组成的二级缓存。其实,多级缓存可并不只是这两层,在一些场景中,可能有很多层。下面以一个电商的秒杀场景举例,说一说一个多级缓存的真实应用场景。clientCNDNginxGuavaRedis客户端缓存首先,离用户最近的一定是客户端了,比如我们使用的手机、电脑等,在手机上的APP以及电脑的浏览器,都是可以支持做缓
- 后端路线指导(3):后端进阶版学习路线
绝命Coding
后端技术分享学习经验分享后端职场和发展面试
后端进阶版学习路线:如果说基础版的学习路线是为了打地基,那么进阶版必然是添砖加瓦了。进阶版路线其实才是真正扎实“基本功”的阶段,这一阶段主要需要学习微服务的开发模式、并发编程、设计模式等编程技巧,学习Spring和Redis的底层设计思想和源码,以及针对面试问的最多的部分进行的专项提升训练(JVM、Spring的IOC、AOP等等)接下来先定义一下对于知识的掌握程度级别:入门->了解->熟悉->非
- Redis命令
郭尘帅666
redis数据库缓存
1.Redis五大常用数据类型字符串(String)列表(List)哈希表(Hash)集合(Set)有序集合(ZSet)2.key的常用命令语法作用keys*查看当前库所有的keyexistskey判断某个key是否存在typekey查看你的key是什么类型unlinkkey根据value删除非阻塞删除,仅仅将keys从keyspace元数据中删除,真正的删除会在后续异步中操作。delky删除指定
- Redis 分布式锁详解
wcy0310
redisredis分布式
Redis分布式锁的实现方法Redis分布式锁是一种利用Redis实现跨进程、跨服务器的互斥锁机制,常用于解决分布式系统中的并发控制问题。以下是几种常见的实现方式及其关键细节。基于SETNX和EXPIRE的实现使用SETNX(SETifNoteXists)命令尝试设置一个键,如果键不存在则设置成功,返回1;否则返回0。结合EXPIRE设置锁的超时时间,避免死锁。SETNXlock_keyuniqu
- Redis-基于docker部署哨兵模式
田秋浩
运维管理数据存储redisdocker缓存
安装docker环境安装docker启动redis服务(1主2从)新建redis配置文件及数据存放目录mkdir-p/etc/redis/master&&vi/etc/redis/master/redis.conflogfile"redis.log"dir./masterauth123456requirepass123456启动master服务dockerrun--restart=always--
- Java开发面试核心知识点解析:从Redis缓存到内存模型全面解读
Java开发面试核心知识点解析:从缓存到内存管理谢飞机的面试经历谢飞机:(擦汗)面试官,我准备好了!第一轮提问面试官:说说你在SpringBoot中如何使用Redis缓存?有啥优势?谢飞机:嗯...这个我会!Redis是一个内存数据库,可以用来做缓存。在SpringBoot中,可以通过@EnableCaching注解启用缓存功能,然后通过@Cacheable、@CachePut和@CacheEvi
- docker搭建redis哨兵模式集群-docker搭建redis哨兵模式集群
docker搭建redis哨兵模式集群一、搭建redis一主两从集群1.创建docker网络,为了容器间相互通信2.运行redis容器3.查看master的ip地址4.添加第一个slave节点5.添加第二个slave节点6.登陆master查看信息7.测试主从同步二、搭建哨兵1.在每个容器中安装vim,psutils2.在每个容器中创建哨兵文件3.查看哨兵信息4.演示故障转移一、搭建redis一主
- Redis基础系列-Docker部署哨兵模式
为什么要做囚徒
RedisDockerredisdocker数据库redis哨兵
文章目录Redis基础系列-Docker部署哨兵模式1.背景2.部署架构说明3.Redis配置4.Sentinel配置5.Redis容器和Sentinel容器构建命令Redis基础系列-Docker部署哨兵模式1.背景此前已详细阐述基于物理机环境的Redis哨兵模式部署方案,近期尝试将Redis哨兵集群迁移至Docker容器化部署时,把过程中遇到的问题进行整理Docker基础系列-哨兵模式Redi
- Redis面试通关秘籍:从缓存穿透到分布式锁的深度剖析
码海漫游者8
缓存redis面试
文章目录前言:为什么Redis总是面试必考题?(灵魂拷问)一、Redis持久化:RDB和AOF的相爱相杀1.1RDB快照原理(画重点)1.2AOF日志的生存之道二、缓存三大杀手:穿透/击穿/雪崩(死亡三连问)2.1缓存穿透攻防战2.2缓存击穿应急预案2.3雪崩灾难现场还原三、Redis分布式锁的六大陷阱(血泪教训)3.1经典错误示范3.2正确姿势(Redlock算法)3.3时钟漂移的致命影响四、高
- 【docker 迁移 - 上】阿里云挂在新购磁盘
ladymorgana
日常工作总结docker阿里云容器
文章目录场景一、问题二、原因三、解决方案四、实战一:阿里云新买云盘并挂载**一、确认云盘状态****二、分区与格式化****方案1:直接格式化整个磁盘(无需分区)****方案2:创建分区后再格式化****三、挂载云盘****四、验证挂载****常见问题****注意事项**场景服务器:阿里云容器技术:docker+docker-compose容器:nginx、redis、mysql、mongo、sp
- C#.NET NLog 详解
c#.net
简介NLog是.NET平台上最流行的开源日志框架之一,特色是灵活的配置、丰富的输出目标(Target),以及高性能的异步写入能力。适用场景:从控制台、文件、数据库、网络到ElasticSearch、Seq、AzureTableStorage等各种日志收集后端。支持文件、数据库(SQL/NoSQL)、控制台、邮件、Elasticsearch等50+内置目标,并可通过插件扩展原生兼容JSON格式,可输
- Redis集群部署指南:高可用与分布式实践
东窗西篱梦
redis分布式数据库
目录1.原理与理论2.背景与目的3.详细部署步骤(手动操作)步骤1:安装Redis5.0.4步骤2:配置Redis服务步骤3:修改关键配置步骤4:启动所有节点步骤5:构建集群步骤6:验证集群状态4.常见问题与解决方案节点无法加入集群集群槽位未完全分配主从切换失败客户端重定向错误5.总结与心得1.原理与理论Redis集群通过分片(Sharding)实现数据分布式存储,核心机制包括:槽位分配(Slot
- 开发者关心的那些事
圣子足道
ios游戏编程apple支付
我要在app里添加IAP,必须要注册自己的产品标识符(product identifiers)。产品标识符是什么?
产品标识符(Product Identifiers)是一串字符串,它用来识别你在应用内贩卖的每件商品。App Store用产品标识符来检索产品信息,标识符只能包含大小写字母(A-Z)、数字(0-9)、下划线(-)、以及圆点(.)。你可以任意排列这些元素,但我们建议你创建标识符时使用
- 负载均衡器技术Nginx和F5的优缺点对比
bijian1013
nginxF5
对于数据流量过大的网络中,往往单一设备无法承担,需要多台设备进行数据分流,而负载均衡器就是用来将数据分流到多台设备的一个转发器。
目前有许多不同的负载均衡技术用以满足不同的应用需求,如软/硬件负载均衡、本地/全局负载均衡、更高
- LeetCode[Math] - #9 Palindrome Number
Cwind
javaAlgorithm题解LeetCodeMath
原题链接:#9 Palindrome Number
要求:
判断一个整数是否是回文数,不要使用额外的存储空间
难度:简单
分析:
题目限制不允许使用额外的存储空间应指不允许使用O(n)的内存空间,O(1)的内存用于存储中间结果是可以接受的。于是考虑将该整型数反转,然后与原数字进行比较。
注:没有看到有关负数是否可以是回文数的明确结论,例如
- 画图板的基本实现
15700786134
画图板
要实现画图板的基本功能,除了在qq登陆界面中用到的组件和方法外,还需要添加鼠标监听器,和接口实现。
首先,需要显示一个JFrame界面:
public class DrameFrame extends JFrame { //显示
- linux的ps命令
被触发
linux
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行
- Android 音乐播放器 下一曲 连续跳几首歌
肆无忌惮_
android
最近在写安卓音乐播放器的时候遇到个问题。在MediaPlayer播放结束时会回调
player.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.reset();
Log.i("H
- java导出txt文件的例子
知了ing
javaservlet
代码很简单就一个servlet,如下:
package com.eastcom.servlet;
import java.io.BufferedOutputStream;
import java.io.IOException;
import java.net.URLEncoder;
import java.sql.Connection;
import java.sql.Resu
- Scala stack试玩, 提高第三方依赖下载速度
矮蛋蛋
scalasbt
原文地址:
http://segmentfault.com/a/1190000002894524
sbt下载速度实在是惨不忍睹, 需要做些配置优化
下载typesafe离线包, 保存为ivy本地库
wget http://downloads.typesafe.com/typesafe-activator/1.3.4/typesafe-activator-1.3.4.zip
解压r
- phantomjs安装(linux,附带环境变量设置) ,以及casperjs安装。
alleni123
linuxspider
1. 首先从官网
http://phantomjs.org/下载phantomjs压缩包,解压缩到/root/phantomjs文件夹。
2. 安装依赖
sudo yum install fontconfig freetype libfreetype.so.6 libfontconfig.so.1 libstdc++.so.6
3. 配置环境变量
vi /etc/profil
- JAVA IO FileInputStream和FileOutputStream,字节流的打包输出
百合不是茶
java核心思想JAVA IO操作字节流
在程序设计语言中,数据的保存是基本,如果某程序语言不能保存数据那么该语言是不可能存在的,JAVA是当今最流行的面向对象设计语言之一,在保存数据中也有自己独特的一面,字节流和字符流
1,字节流是由字节构成的,字符流是由字符构成的 字节流和字符流都是继承的InputStream和OutPutStream ,java中两种最基本的就是字节流和字符流
类 FileInputStream
- Spring基础实例(依赖注入和控制反转)
bijian1013
spring
前提条件:在http://www.springsource.org/download网站上下载Spring框架,并将spring.jar、log4j-1.2.15.jar、commons-logging.jar加载至工程1.武器接口
package com.bijian.spring.base3;
public interface Weapon {
void kil
- HR看重的十大技能
bijian1013
提升能力HR成长
一个人掌握何种技能取决于他的兴趣、能力和聪明程度,也取决于他所能支配的资源以及制定的事业目标,拥有过硬技能的人有更多的工作机会。但是,由于经济发展前景不确定,掌握对你的事业有所帮助的技能显得尤为重要。以下是最受雇主欢迎的十种技能。 一、解决问题的能力 每天,我们都要在生活和工作中解决一些综合性的问题。那些能够发现问题、解决问题并迅速作出有效决
- 【Thrift一】Thrift编译安装
bit1129
thrift
什么是Thrift
The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and s
- 【Avro三】Hadoop MapReduce读写Avro文件
bit1129
mapreduce
Avro是Doug Cutting(此人绝对是神一般的存在)牵头开发的。 开发之初就是围绕着完善Hadoop生态系统的数据处理而开展的(使用Avro作为Hadoop MapReduce需要处理数据序列化和反序列化的场景),因此Hadoop MapReduce集成Avro也就是自然而然的事情。
这个例子是一个简单的Hadoop MapReduce读取Avro格式的源文件进行计数统计,然后将计算结果
- nginx定制500,502,503,504页面
ronin47
nginx 错误显示
server {
listen 80;
error_page 500/500.html;
error_page 502/502.html;
error_page 503/503.html;
error_page 504/504.html;
location /test {return502;}}
配置很简单,和配
- java-1.二叉查找树转为双向链表
bylijinnan
二叉查找树
import java.util.ArrayList;
import java.util.List;
public class BSTreeToLinkedList {
/*
把二元查找树转变成排序的双向链表
题目:
输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。
要求不能创建任何新的结点,只调整指针的指向。
10
/ \
6 14
/ \
- Netty源码学习-HTTP-tunnel
bylijinnan
javanetty
Netty关于HTTP tunnel的说明:
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/channel/socket/http/package-summary.html#package_description
这个说明有点太简略了
一个完整的例子在这里:
https://github.com/bylijinnan
- JSONUtil.serialize(map)和JSON.toJSONString(map)的区别
coder_xpf
jqueryjsonmapval()
JSONUtil.serialize(map)和JSON.toJSONString(map)的区别
数据库查询出来的map有一个字段为空
通过System.out.println()输出 JSONUtil.serialize(map): {"one":"1","two":"nul
- Hibernate缓存总结
cuishikuan
开源sshjavawebhibernate缓存三大框架
一、为什么要用Hibernate缓存?
Hibernate是一个持久层框架,经常访问物理数据库。
为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能。
缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。
二、Hibernate缓存原理是怎样的?
Hibernate缓存包括两大类:Hib
- CentOs6
dalan_123
centos
首先su - 切换到root下面1、首先要先安装GCC GCC-C++ Openssl等以来模块:yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel2、再安装ncurses模块yum -y install ncurses-develyum install ncurses-devel3、下载Erang
- 10款用 jquery 实现滚动条至页面底端自动加载数据效果
dcj3sjt126com
JavaScript
无限滚动自动翻页可以说是web2.0时代的一项堪称伟大的技术,它让我们在浏览页面的时候只需要把滚动条拉到网页底部就能自动显示下一页的结果,改变了一直以来只能通过点击下一页来翻页这种常规做法。
无限滚动自动翻页技术的鼻祖是微博的先驱:推特(twitter),后来必应图片搜索、谷歌图片搜索、google reader、箱包批发网等纷纷抄袭了这一项技术,于是靠滚动浏览器滚动条
- ImageButton去边框&Button或者ImageButton的背景透明
dcj3sjt126com
imagebutton
在ImageButton中载入图片后,很多人会觉得有图片周围的白边会影响到美观,其实解决这个问题有两种方法
一种方法是将ImageButton的背景改为所需要的图片。如:android:background="@drawable/XXX"
第二种方法就是将ImageButton背景改为透明,这个方法更常用
在XML里;
<ImageBut
- JSP之c:foreach
eksliang
jspforearch
原文出自:http://www.cnblogs.com/draem0507/archive/2012/09/24/2699745.html
<c:forEach>标签用于通用数据循环,它有以下属性 属 性 描 述 是否必须 缺省值 items 进行循环的项目 否 无 begin 开始条件 否 0 end 结束条件 否 集合中的最后一个项目 step 步长 否 1
- Android实现主动连接蓝牙耳机
gqdy365
android
在Android程序中可以实现自动扫描蓝牙、配对蓝牙、建立数据通道。蓝牙分不同类型,这篇文字只讨论如何与蓝牙耳机连接。
大致可以分三步:
一、扫描蓝牙设备:
1、注册并监听广播:
BluetoothAdapter.ACTION_DISCOVERY_STARTED
BluetoothDevice.ACTION_FOUND
BluetoothAdapter.ACTION_DIS
- android学习轨迹之四:org.json.JSONException: No value for
hyz301
json
org.json.JSONException: No value for items
在JSON解析中会遇到一种错误,很常见的错误
06-21 12:19:08.714 2098-2127/com.jikexueyuan.secret I/System.out﹕ Result:{"status":1,"page":1,&
- 干货分享:从零开始学编程 系列汇总
justjavac
编程
程序员总爱重新发明轮子,于是做了要给轮子汇总。
从零开始写个编译器吧系列 (知乎专栏)
从零开始写一个简单的操作系统 (伯乐在线)
从零开始写JavaScript框架 (图灵社区)
从零开始写jQuery框架 (蓝色理想 )
从零开始nodejs系列文章 (粉丝日志)
从零开始编写网络游戏 
- jquery-autocomplete 使用手册
macroli
jqueryAjax脚本
jquery-autocomplete学习
一、用前必备
官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/
当前版本:1.1
需要JQuery版本:1.2.6
二、使用
<script src="./jquery-1.3.2.js" type="text/ja
- PLSQL-Developer或者Navicat等工具连接远程oracle数据库的详细配置以及数据库编码的修改
超声波
oracleplsql
在服务器上将Oracle安装好之后接下来要做的就是通过本地机器来远程连接服务器端的oracle数据库,常用的客户端连接工具就是PLSQL-Developer或者Navicat这些工具了。刚开始也是各种报错,什么TNS:no listener;TNS:lost connection;TNS:target hosts...花了一天的时间终于让PLSQL-Developer和Navicat等这些客户
- 数据仓库数据模型之:极限存储--历史拉链表
superlxw1234
极限存储数据仓库数据模型拉链历史表
在数据仓库的数据模型设计过程中,经常会遇到这样的需求:
1. 数据量比较大; 2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等; 3. 需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态, 比如,查看某一个用户在过去某一段时间内,更新过几次等等; 4. 变化的比例和频率不是很大,比如,总共有10
- 10点睛Spring MVC4.1-全局异常处理
wiselyman
spring mvc
10.1 全局异常处理
使用@ControllerAdvice注解来实现全局异常处理;
使用@ControllerAdvice的属性缩小处理范围
10.2 演示
演示控制器
package com.wisely.web;
import org.springframework.stereotype.Controller;
import org.spring