- 【Redis基础篇】详细讲解Redis
小林同学学JAVA
redis数据库redis服务器nosql缓存数据库javaspringboot
这篇文章让你详细了解Redis的相关知识,有代码讲解以及图片剖析,让你更轻松掌握制作不易,感觉不错,请点赞收藏哟!!!目录1redis基础1.1定义1.2SQL和NOSQL不同点1.3特征1.4Redis通用命令1.5Redis数据结构介绍1.6Redis的java客户端2Jedis快速入门2.1操作步骤2.2Jedis连接池3SpringDataRedis3.1定义3.2优势3.3API3.4操
- Redis cluster 集群TLS and Jedis使用SSL调用redis服务
潘多编程
Redis数据库redislinux
安装#安装依赖软件sudoaptupdatesudoaptinstallmakegcclibssl-devpkg-config#下载redis解压wgethttps://download.redis.io/releases/redis-6.2.6.tar.gztar-xvfredis-6.2.6.tar.gz#编译cdredis-6.2.6makeBUILD_TLS=yes#如果执行编译出错,提示
- JedisUtils 对jedis的封装 and RedisCacheManager 管理多个连接池
潘多编程
Redisredis
RedisCacheManagerimportjava.util.concurrent.ConcurrentHashMap;importorg.springframework.beans.factory.annotation.Value;importorg.springframework.stereotype.Service;importredis.clients.jedis.Jedis;impo
- jedis 与 redission 实现分布式锁
不知言愁
项目实战分布式redisjava
本文为博主原创,未经允许不得转载:1.Jedis实现分布式锁2.Redission实现分布式锁为了确保分布式锁可用,至少要保证锁的实现同时满足以下几个条件互斥性:在任意时刻只有一个客户端能持有锁不会死锁:即使有一个客户端在持有锁的期间发生崩溃而没有主动解锁,也能保证后续其它客户端能加锁容错性:只要大部分的Redis节点正常运行,客户端就可以加锁和解锁解铃还须系铃人:加锁和解锁必须是同一个客户端,客
- 在springboot项目使用redis
weixin_44953227
Javaspringbootredisjava
目录单例模式集群模式springboot框架中已经集成了redis,在1.x.x的版本时默认使用的jedis客户端,现在是2.x.x版本默认使用的lettuce客户端在properties文件配置redis客户端信息可以实现应用系统调用redis服务单例模式#Redis注意,如果项目中已经配置了spring.redis,则可以不用重复配置#使用数据库spring.redis.database=0#
- java redis常见操作
liyongjie
RedisJAVAjavaredis开发语言
本文介绍java操作Redis的常见方法采用Jedis方法操作,需要引入jedisjar包,本例子引用的是:jedis-5.2.0-beta4.jarimportjava.util.HashMap;importjava.util.Iterator;importjava.util.List;importjava.util.Map;importjava.util.Set;importredis.cli
- 使用Java连接redis的方式
l23456789o
redisjavajavaredis开发语言
除了使用SpringDataRedis,Java连接Redis还可以通过以下几种方式:1.JedisJedis是一个流行的JavaRedis客户端库,提供了简单的API来访问Redis。依赖:redis.clientsjedis4.2.3示例代码:importredis.clients.jedis.Jedis;publicclassJedisExample{publicstaticvoidmain
- 使用Jedis远程连接redis
E_3096
1.检查是否关闭linux的防火墙cent6.x关闭防火墙语句:serviceiptablesstop禁止开机启动防火墙:chkconfigiptablesoffcentos7的防火墙已经变了,关闭语句为:systemctlstopfirewalld.service禁止防火墙开机启动:systemctldisablefirewalld.service2.查看配置文件redis.confredis默
- Java 操作 Redis和redis持久化
#helloworld
开发语言数据库redis
一、Jedis我们要使用Java来操作Redis,Jedis是Redis官方推荐的java连接开发工具!使用Java操作Redis中间件!1.导入对应的依赖https://mvnrepository.com/artifact/redis.clients/jedisredis.clientsjedis3.2.02、编码测试:@SpringBootTestclassTransactionYiburen
- 集群方式下的java Redis锁 lua脚本
成长之旅
后端java
下面说一下集群方式redis下的原子锁带超时时间java代码如下:Listkeys=Collections.singletonList("test_key1");System.out.println("打印前::"+jedisCluster.get("test_key1"));//获取lua脚本这里你可以所以我是放在META-INF/scripts/redis/test.lua路径下,//获取到之
- 详解 Redis 实现数据去重
喔的嘛呀
redis数据库缓存
目录引言一.Redis去重原理1.RedisSet数据结构2.基于Set实现数据去重3.代码示例4.总结二.环境准备三.使用Jedis连接Redis四.实现数据去重功能五.测试数据去重功能六.总结言在实际的应用开发中,经常会遇到需要对数据进行去重的情况。利用Redis可以很方便地实现数据去重功能。本文将介绍如何利用Redis实现数据去重,并附上详细的代码示例。一.Redis去重原理Redis的去重
- Redis 之八:Jdeis API 的使用(Java 操作 Redis)
zp8126
Redisredisjava数据库缓存
JedisAPI使用Jedis是Redis官方推荐的Java客户端,它提供了一套丰富的API来操作Redis服务器。通过JedisAPI,开发者可以方便地在Java应用程序中执行Redis的命令来实现数据的增删查改以及各种复杂的数据结构操作。以下是一些基本的JedisAPI示例和它们对应的功能:常用操作连接RedisJedisjedis=newJedis("localhost",6379);//创
- Redis篇----第八篇
数据大魔王
java面试题套2redis数据库缓存
系列文章目录文章目录系列文章目录前言一、是否使用过Redis集群,集群的原理是什么?二、Redis集群方案什么情况下会导致整个集群不可用?三、Redis支持的Java客户端都有哪些?官方推荐用哪个?四、、Jedis与Redisson对比有什么优缺点?五、Redis如何设置密码及验证密码?前言前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男
- Java使用Redis实现消息队列
谦风(主Java)(接口开发)
redisjavaredis
近期刷Java面试题刷到了“如何使用Redis实现消息队列”,解答如下:一般使用list结构作为队列,rpush生产消息,lpop消费消息。当lpop没有消息的时候,要适当sleep一会再重试。若不使用sleep,则可以用指令blpop(该指令在没有消息的时候,它会阻塞住直到消息到来)目录引入Jedis指令简介rpushblpopJava使用Redis实现消息队列引入Jedisredis.clie
- Java实现Redis延时队列
谦风(主Java)(接口开发)
redisjavaredis延时队列
“如何实现Redis延时队列”这个面试题应该也是比较常见的,解答如下:使用sortedset(有序集合),拿时间戳作为score,消息内容作为key调用zadd来生产消息,消费者用zrangebyscore指令获取N秒之前的数据轮询进行处理。目录实现思路引入Jedis指令简介zaddzremzrangeByScoreJava实现Redis延时队列实现思路Java实现Redis延时队列,首先要了解何
- maven巧妙排除父pom的依赖
高粱
项目中引入架构师搭好的父pom工程4.0.0com.xxx.xxxparent0.0.1-RELEASExxx-xxx-xxx0.0.1-RELEASEpom发现一个问题子模块如何把父pom依赖的jar包排除掉呢思前想后直接在父依赖pom直接排除呢com.zytparent1.0-SNAPSHOT..jedis尝试未果不能这样排除于是想到了这样一个方法,直接依赖覆盖搞定子类重写,定义scope为t
- Redis-mysql 缓存实战
SSPo
redisJava缓存redis数据库
本文基于Springboot,mybatisplus,mysql,redis,Jedis模拟redis缓存实现目录1.添加所需maven依赖2.设置数据库及数据表3.构建实体类4.构建工具类实现redis数据库连接池,redis的读取,写入功能5.Redis缓存实战1.添加所需maven依赖redis.clientsjedis3.6.3com.baomidoumybatis-plus-boot-s
- springboot使用redis(从配置到实战)
Python研究者
概述springboot通常整合redis,采用的是RedisTemplate的形式,除了这种形式以外,还有另外一种形式去整合,即采用spring支持的注解进行访问缓存.准备工作pom.xmlredis.clientsjedis2.7.3org.springframework.dataspring-data-redis1.7.2.RELEASEorg.springframework.bootspr
- IDEA 中使用 Jedis 操作 Redis
二境志
Redisredisjavaidea
七IDEA中使用Jedis操作RedisJedisisablazinglysmallandsaneRedisjavaclient.JediswasconceivedtobeEASYtouse.Jedis是一款可以让我们在java中操作redis数据库的工具,下载其jar包,或者引入到maven中即可,使用还是非常简单的(一)引入依赖和编码我这里创建了一个空项目,然后创建一个普通的maven模块用来
- java - idea连接redis
卿(⑉°з°)-♡心
javaintellij-idea开发语言
目录1.创建一个普通的maven工程1java连接单机redis(1)在一个项目中创建子模块.方便于整理.(2)引入redis依赖(3)测试2java通过连接池连接redis3java连接redis集群1.创建一个普通的maven工程1java连接单机redis(1)在一个项目中创建子模块.方便于整理.(2)引入redis依赖redis.clientsjedis3.8.0(3)测试publiccl
- java实战:Redis实现查找附近的人
拥抱AI
javaredis开发语言
本文将介绍如何使用Redis实现查找附近的人的功能。我们将探讨如何使用Redis的地理空间(Geospatial)索引功能,并展示一个简单的Java代码示例,该示例使用Jedis库和Redis的GEOADD命令来添加位置信息,以及使用GEORADIUS命令来查找附近的人。通过本文,可以了解到如何在Java应用程序中使用Redis实现查找附近的人的功能。一、地理空间索引概述Redis的地理空间(Ge
- java实战:基于Redis的ZSet实现秒级排行榜
拥抱AI
javaredisbootstrap
本文将介绍如何使用Redis的ZSet(有序集合)来实现一个秒级排行榜。展示如何使用Java和Jedis库来创建、更新和获取排行榜数据。通过本文,可以了解到如何在Java应用程序中使用Redis的ZSet来实现一个高性能的秒级排行榜。一、ZSet概述Redis的ZSet(SortedSet)是一种有序集合,它结合了Set和SortedList的特性,成员是唯一的,且按照成员的分数(score)进行
- 【解决】redis集群加入密码报错“Jedis does not support password protected Redis Cluster configurations“
辣个仔
问题解决方案redisredisspringboot
升级redis密码之后,运行程序报错"JedisdoesnotsupportpasswordprotectedRedisClusterconfigurations"。原因:Jedis版本原因不支持Redis密码当时我们用的Jedis版本是2.8.2(jedis-2.8.2.jar),redis版本是1.7.2(jedis-2.8.2.jar),springboot版本是1.4.0(1.4.0.RE
- MapReduce任务输出到redis中
cute泡泡
主要包括redis连接池,重写FileOutputFormat函数。redis连接池/***redis连接池*/publicclassRedisHelper{privatestaticJedisPooljedisPool;static{init();}publicsynchronizedstaticJedisgetJedis(){if(jedisPool!=null){Jedisresource=
- Redis分布式锁
辞暮尔尔-烟火年年
Redisredis分布式
Redis分布式锁是一种在分布式系统中协调多个进程对共享资源访问的机制。在Redis中实现分布式锁主要依赖于几个关键的操作原子性。在使用Redis实现分布式锁时,通常关注的是命令的原子性,以及如何确保锁的安全性和可靠性。可以使用SET命令结合NX(NoteXists,只在键不存在时设置键)和PX(毫秒级过期)选项来实现。以下是一个Java代码示例,演示如何利用Jedis客户端实现Redis分布式锁
- Jedis
niceffking
javaEE进阶Redisredisjedisjava
目录依赖下载配置SSH转发连接到redis服务器客户端的使用get/setexists/delkeysexpire/ttltype字符串命令mget/msetgetrange/setrangeappendincr/decr列表listpush/pop/lrangeblpop/brpopllen集合setsaddsismemberscardspopsintersinterstorehashhset/
- Jedis与SpringBoot整合redis
Yield & Allure
springbootredis后端
一、Jedis1、使用Java来操作RedisJedis是Redis官方推荐使用的Java连接redis的客户端。导入依赖redis.clientsjedis3.2.0com.alibabafastjson1.2.70编码测试连接数据库操作命令断开连接TestPing.javapublicclassTestPing{publicstaticvoidmain(String[]args){//1、ne
- 【Spring学习】Spring Data Redis:RedisTemplate、Repository、Cache注解
兔兔西
springredis
1,spring-data-redis官网1)特点提供了对不同Redis客户端的整合(Lettuce和Jedis)提供了RedisTemplate统一API来操作Redis支持Redis的发布订阅模型支持Redis哨兵和Redis集群支持基于Lettuce的响应式编程支持基于JDK、JSON、字符串、Spring独享的数据序列化及反序列化支持基于Redis的JDKCollection实现2,Red
- jedis分片原理剖析
小雪的笔记
Redis2.0+版本不支持服务器分片,只能通过jedis分片,3.0+以上支持hash槽的服务端分片。jedis的详细分片实现如下,其中murmurhash是当前主流的分片算法。/***机器分片的方式*注意jedis服务器影响分片的两个因素*1、权重*2、添加的顺序*@paramargs*/publicstaticvoidmain(String[]args){TreeMapnodes=newTr
- springboot redis 实现消息队列
java知路
springbootredisjava
在SpringBoot中使用Redis作为消息队列,可以通过以下步骤实现:1.添加依赖在`pom.xml`文件中添加SpringBootRedis和Jedis的依赖:```xmlorg.springframework.bootspring-boot-starter-data-redisredis.clientsjedis```2.配置Redis在`application.properties`文件
- ASM系列五 利用TreeApi 解析生成Class
lijingyao8206
ASM字节码动态生成ClassNodeTreeAPI
前面CoreApi的介绍部分基本涵盖了ASMCore包下面的主要API及功能,其中还有一部分关于MetaData的解析和生成就不再赘述。这篇开始介绍ASM另一部分主要的Api。TreeApi。这一部分源码是关联的asm-tree-5.0.4的版本。
在介绍前,先要知道一点, Tree工程的接口基本可以完
- 链表树——复合数据结构应用实例
bardo
数据结构树型结构表结构设计链表菜单排序
我们清楚:数据库设计中,表结构设计的好坏,直接影响程序的复杂度。所以,本文就无限级分类(目录)树与链表的复合在表设计中的应用进行探讨。当然,什么是树,什么是链表,这里不作介绍。有兴趣可以去看相关的教材。
需求简介:
经常遇到这样的需求,我们希望能将保存在数据库中的树结构能够按确定的顺序读出来。比如,多级菜单、组织结构、商品分类。更具体的,我们希望某个二级菜单在这一级别中就是第一个。虽然它是最后
- 为啥要用位运算代替取模呢
chenchao051
位运算哈希汇编
在hash中查找key的时候,经常会发现用&取代%,先看两段代码吧,
JDK6中的HashMap中的indexFor方法:
/**
* Returns index for hash code h.
*/
static int indexFor(int h, int length) {
- 最近的情况
麦田的设计者
生活感悟计划软考想
今天是2015年4月27号
整理一下最近的思绪以及要完成的任务
1、最近在驾校科目二练车,每周四天,练三周。其实做什么都要用心,追求合理的途径解决。为
- PHP去掉字符串中最后一个字符的方法
IT独行者
PHP字符串
今天在PHP项目开发中遇到一个需求,去掉字符串中的最后一个字符 原字符串1,2,3,4,5,6, 去掉最后一个字符",",最终结果为1,2,3,4,5,6 代码如下:
$str = "1,2,3,4,5,6,";
$newstr = substr($str,0,strlen($str)-1);
echo $newstr;
- hadoop在linux上单机安装过程
_wy_
linuxhadoop
1、安装JDK
jdk版本最好是1.6以上,可以使用执行命令java -version查看当前JAVA版本号,如果报命令不存在或版本比较低,则需要安装一个高版本的JDK,并在/etc/profile的文件末尾,根据本机JDK实际的安装位置加上以下几行:
export JAVA_HOME=/usr/java/jdk1.7.0_25  
- JAVA进阶----分布式事务的一种简单处理方法
无量
多系统交互分布式事务
每个方法都是原子操作:
提供第三方服务的系统,要同时提供执行方法和对应的回滚方法
A系统调用B,C,D系统完成分布式事务
=========执行开始========
A.aa();
try {
B.bb();
} catch(Exception e) {
A.rollbackAa();
}
try {
C.cc();
} catch(Excep
- 安墨移动广 告:移动DSP厚积薄发 引领未来广 告业发展命脉
矮蛋蛋
hadoop互联网
“谁掌握了强大的DSP技术,谁将引领未来的广 告行业发展命脉。”2014年,移动广 告行业的热点非移动DSP莫属。各个圈子都在纷纷谈论,认为移动DSP是行业突破点,一时间许多移动广 告联盟风起云涌,竞相推出专属移动DSP产品。
到底什么是移动DSP呢?
DSP(Demand-SidePlatform),就是需求方平台,为解决广 告主投放的各种需求,真正实现人群定位的精准广
- myelipse设置
alafqq
IP
在一个项目的完整的生命周期中,其维护费用,往往是其开发费用的数倍。因此项目的可维护性、可复用性是衡量一个项目好坏的关键。而注释则是可维护性中必不可少的一环。
注释模板导入步骤
安装方法:
打开eclipse/myeclipse
选择 window-->Preferences-->JAVA-->Code-->Code
- java数组
百合不是茶
java数组
java数组的 声明 创建 初始化; java支持C语言
数组中的每个数都有唯一的一个下标
一维数组的定义 声明: int[] a = new int[3];声明数组中有三个数int[3]
int[] a 中有三个数,下标从0开始,可以同过for来遍历数组中的数
- javascript读取表单数据
bijian1013
JavaScript
利用javascript读取表单数据,可以利用以下三种方法获取:
1、通过表单ID属性:var a = document.getElementByIdx_x_x("id");
2、通过表单名称属性:var b = document.getElementsByName("name");
3、直接通过表单名字获取:var c = form.content.
- 探索JUnit4扩展:使用Theory
bijian1013
javaJUnitTheory
理论机制(Theory)
一.为什么要引用理论机制(Theory)
当今软件开发中,测试驱动开发(TDD — Test-driven development)越发流行。为什么 TDD 会如此流行呢?因为它确实拥有很多优点,它允许开发人员通过简单的例子来指定和表明他们代码的行为意图。
TDD 的优点:
&nb
- [Spring Data Mongo一]Spring Mongo Template操作MongoDB
bit1129
template
什么是Spring Data Mongo
Spring Data MongoDB项目对访问MongoDB的Java客户端API进行了封装,这种封装类似于Spring封装Hibernate和JDBC而提供的HibernateTemplate和JDBCTemplate,主要能力包括
1. 封装客户端跟MongoDB的链接管理
2. 文档-对象映射,通过注解:@Document(collectio
- 【Kafka八】Zookeeper上关于Kafka的配置信息
bit1129
zookeeper
问题:
1. Kafka的哪些信息记录在Zookeeper中 2. Consumer Group消费的每个Partition的Offset信息存放在什么位置
3. Topic的每个Partition存放在哪个Broker上的信息存放在哪里
4. Producer跟Zookeeper究竟有没有关系?没有关系!!!
//consumers、config、brokers、cont
- java OOM内存异常的四种类型及异常与解决方案
ronin47
java OOM 内存异常
OOM异常的四种类型:
一: StackOverflowError :通常因为递归函数引起(死递归,递归太深)。-Xss 128k 一般够用。
二: out Of memory: PermGen Space:通常是动态类大多,比如web 服务器自动更新部署时引起。-Xmx
- java-实现链表反转-递归和非递归实现
bylijinnan
java
20120422更新:
对链表中部分节点进行反转操作,这些节点相隔k个:
0->1->2->3->4->5->6->7->8->9
k=2
8->1->6->3->4->5->2->7->0->9
注意1 3 5 7 9 位置是不变的。
解法:
将链表拆成两部分:
a.0-&
- Netty源码学习-DelimiterBasedFrameDecoder
bylijinnan
javanetty
看DelimiterBasedFrameDecoder的API,有举例:
接收到的ChannelBuffer如下:
+--------------+
| ABC\nDEF\r\n |
+--------------+
经过DelimiterBasedFrameDecoder(Delimiters.lineDelimiter())之后,得到:
+-----+----
- linux的一些命令 -查看cc攻击-网口ip统计等
hotsunshine
linux
Linux判断CC攻击命令详解
2011年12月23日 ⁄ 安全 ⁄ 暂无评论
查看所有80端口的连接数
netstat -nat|grep -i '80'|wc -l
对连接的IP按连接数量进行排序
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
查看TCP连接状态
n
- Spring获取SessionFactory
ctrain
sessionFactory
String sql = "select sysdate from dual";
WebApplicationContext wac = ContextLoader.getCurrentWebApplicationContext();
String[] names = wac.getBeanDefinitionNames();
for(int i=0; i&
- Hive几种导出数据方式
daizj
hive数据导出
Hive几种导出数据方式
1.拷贝文件
如果数据文件恰好是用户需要的格式,那么只需要拷贝文件或文件夹就可以。
hadoop fs –cp source_path target_path
2.导出到本地文件系统
--不能使用insert into local directory来导出数据,会报错
--只能使用
- 编程之美
dcj3sjt126com
编程PHP重构
我个人的 PHP 编程经验中,递归调用常常与静态变量使用。静态变量的含义可以参考 PHP 手册。希望下面的代码,会更有利于对递归以及静态变量的理解
header("Content-type: text/plain");
function static_function () {
static $i = 0;
if ($i++ < 1
- Android保存用户名和密码
dcj3sjt126com
android
转自:http://www.2cto.com/kf/201401/272336.html
我们不管在开发一个项目或者使用别人的项目,都有用户登录功能,为了让用户的体验效果更好,我们通常会做一个功能,叫做保存用户,这样做的目地就是为了让用户下一次再使用该程序不会重新输入用户名和密码,这里我使用3种方式来存储用户名和密码
1、通过普通 的txt文本存储
2、通过properties属性文件进行存
- Oracle 复习笔记之同义词
eksliang
Oracle 同义词Oracle synonym
转载请出自出处:http://eksliang.iteye.com/blog/2098861
1.什么是同义词
同义词是现有模式对象的一个别名。
概念性的东西,什么是模式呢?创建一个用户,就相应的创建了 一个模式。模式是指数据库对象,是对用户所创建的数据对象的总称。模式对象包括表、视图、索引、同义词、序列、过
- Ajax案例
gongmeitao
Ajaxjsp
数据库采用Sql Server2005
项目名称为:Ajax_Demo
1.com.demo.conn包
package com.demo.conn;
import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;
//获取数据库连接的类public class DBConnec
- ASP.NET中Request.RawUrl、Request.Url的区别
hvt
.netWebC#asp.nethovertree
如果访问的地址是:http://h.keleyi.com/guestbook/addmessage.aspx?key=hovertree%3C&n=myslider#zonemenu那么Request.Url.ToString() 的值是:http://h.keleyi.com/guestbook/addmessage.aspx?key=hovertree<&
- SVG 教程 (七)SVG 实例,SVG 参考手册
天梯梦
svg
SVG 实例 在线实例
下面的例子是把SVG代码直接嵌入到HTML代码中。
谷歌Chrome,火狐,Internet Explorer9,和Safari都支持。
注意:下面的例子将不会在Opera运行,即使Opera支持SVG - 它也不支持SVG在HTML代码中直接使用。 SVG 实例
SVG基本形状
一个圆
矩形
不透明矩形
一个矩形不透明2
一个带圆角矩
- 事务管理
luyulong
javaspring编程事务
事物管理
spring事物的好处
为不同的事物API提供了一致的编程模型
支持声明式事务管理
提供比大多数事务API更简单更易于使用的编程式事务管理API
整合spring的各种数据访问抽象
TransactionDefinition
定义了事务策略
int getIsolationLevel()得到当前事务的隔离级别
READ_COMMITTED
- 基础数据结构和算法十一:Red-black binary search tree
sunwinner
AlgorithmRed-black
The insertion algorithm for 2-3 trees just described is not difficult to understand; now, we will see that it is also not difficult to implement. We will consider a simple representation known
- centos同步时间
stunizhengjia
linux集群同步时间
做了集群,时间的同步就显得非常必要了。 以下是查到的如何做时间同步。 在CentOS 5不再区分客户端和服务器,只要配置了NTP,它就会提供NTP服务。 1)确认已经ntp程序包: # yum install ntp 2)配置时间源(默认就行,不需要修改) # vi /etc/ntp.conf server pool.ntp.o
- ITeye 9月技术图书有奖试读获奖名单公布
ITeye管理员
ITeye
ITeye携手博文视点举办的9月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。 9月试读活动回顾:http://webmaster.iteye.com/blog/2118112本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《NFC:Arduino、Andro