- crawl4ai实操8
人工智能我来了
网络爬虫网络爬虫
importosimportsysimportasynciofromcrawl4aiimportAsyncWebCrawler,CacheMode,CrawlerRunConfig#Adjustpathsasneededparent_dir=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))sys.path.append(pare
- 微信小程序入门解读-②_wxss中设置模块置顶
参考信息
程序员微信小程序notepad++小程序
注意,这里单位是rpx,而不是px。rpx是小程序为适应不同宽度的手机屏幕,而发明的一种长度单位。不管什么手机屏幕,宽度一律为750rpx。它的好处是换算简单,如果一个元素的宽度是页面的一半,只要写成width:375rpx;即可。(3)display:flex;:整个页面(page)采用Flex布局。(4)justify-content:center;:页面的一级子元素(这个示例是)水平居中。(
- docker基础(七)之docker start/stop/kill/restart/pause/unpause
文章目录概述命令速查dockerstart语法OPTIONS详解:dockerstop语法OPTIONS详解:dockerrestart语法OPTIONS详解:示例和说明dockerkill语法OPTIONS说明:dockerpause语法示例dockerunpause语法示例dockerstop和dockerkill区别dockerpause和dockerunpause的使用场景概述用于学习和记
- 攻防世界-MISC-Erik-Baleog-and-Olaf
unable code
CTF网络安全ctfmisc
知识点1.stegsolve切换图片查看模式2.二维码修复步骤一下载附件解压,发现没有后缀,在010打开,发现png字样,改后缀为png,打开发信啊没发现什么有用的信息。步骤二:根据图片名字stego100猜测用stegsolve,用stegsolve打开,切换图片,发现有二维码,找到最清楚的一张,截图后,用ps修复,扫码拿到flag。flag{#justdiffit}
- 使用mit协议的编程语言_从使用诺基亚功能手机进行编程到如何为MIT初创公司工作的过程如何
cumi6497
大数据人工智能java编程语言python
使用mit协议的编程语言In2012,IwasjustavillageboyfromNigeriawhohadnothingbutadreamandaNokiafeature(J2ME)phone.Today,I’ma19yearoldAndroiddeveloperwhohasworkedonover50appsandcurrentlyworksforanMITstartup.MynameisE
- 跨平台Flutter 、ReactNative 开发原理
ideal树叶
Flutterflutterreactnative
一、跨平台Flutter开发原理Flutter是一个跨平台的应用程序开发框架,它允许你使用一组代码库来构建同时运行在Android和iOS上的应用程序。1.1.Flutter的核心原理基于以下几点:Dart异步、Widget构建块灵活配置、自工化工具链、热重载、Skia图库、DartVM1.Dart语言:Flutter使用Dart作为其编程语言,它提供了一种高效的JIT(Just-in-time)
- 什么是 Java 的 AOT(Ahead-Of-Time)?
在Java里,AOT(Ahead-Of-Time)编译是一种重要的技术。它和JIT(Just-In-Time)编译有所不同,JIT编译是在程序运行时把字节码转换为机器码,而AOT编译则是在程序运行之前就完成这一转换过程。AOT编译的工作原理借助AOT编译器,像是GraalVM的AOT编译器,能直接把Java字节码或者源代码编译成机器码,生成独立的可执行文件或者共享库。以GraalVM为例,要生成A
- HarmonyOS NEXT 弹性布局详解:Flex布局完全指南
是稻香啊
harmonyos
文章目录简介基础概念Flex容器与项目主轴与交叉轴核心属性1.flexDirection2.justifyContent3.alignItems4.flexWrap5.flex权重常见布局场景1.等分布局2.居中布局3.自适应导航栏4.网格布局性能优化常见问题最佳实践总结简介HarmonyOS提供了强大的弹性布局(Flex)能力,通过Flex布局,我们可以轻松实现灵活的、响应式的界面布局。本教程将
- Android14 app被冻结导致进程间通信失败
凯文的内存
AndroidactivitymanagerOomAdjusterfreezapp进程保活Android
软件平台:Android14硬件平台:QCS6115问题:设备开机阶段,由于系统资源紧张,触发了非前台进程的freez机制,导致前台进程与之交互出现binder交互异常,而展示白屏。先从异常日志着手吧:行11804:05-1912:00:00.01557321022153DOomAdjuster:Appadjchangefrompreviousstatetocachedstate:4077com.
- js在线markdown转html转pdf
isyoungboy
jsmarkdownmarkdownjsmarkdown转html
在线转换地址http://youngboy-codelib.gitee.io/youngboy/markdown.html感兴趣的同学可以参考下面的代码将下面的代码复制,保存为html文件在游览器中打开即可使用按ctrl+p也可转pdfjs实现的pdf实际为截图后保存为pdf使用github-markdown-css样式md文本测试#edit{display:flex;justify-conten
- linux shell做界面,linux shell图形界面dialog详解
weixin_39747049
linuxshell做界面
dialogwidgets的选项,及使用方法calendar显示日历checklist...复选框form表单editboxdselectfselect文件选框,即平时上传本地文件时的那个gauge[]进度条,百分之多少的那个infobox弹出一个文本信息,不需要等待回应inputbox[]文本框inputmenumenumsgbox弹出一个文本信息,需要用户选择,并点击okpause暂停页pas
- 22 Message 组件
TkinterMessage组件使用指南Tkinter的Message组件用于显示多行文本消息。它通常用于显示提示信息、警告或状态更新。Message组件能够自动换行,以适应其分配的空间。以下是对Message组件的详细说明和一个使用案例。Message组件属性text:要显示的文本消息。width:指定组件的宽度,可以是像素值或字符数。height:指定组件的高度,以行数为单位。justify:
- 最快速搭建 react-native-webview 及vue页面传输数据( Vue项目 )
ReactNative内嵌webview(Vue项目)ReactNativewebview属性automaticallyAdjustContentInsets控制是否调整放置在导航条、标签栏或工具栏后面的web视图的内容。默认值为truecontentInset{top:number,left:number,bottom:number,right:number}设置网页内嵌边距injectedJa
- flex的项目属性
在车上在路上
htmlcssflex
flex布局经常会用到,但是经常见到一些类似{flex:1;flex-shrink:0}之类的属性,以前没怎么关注过,今天整体对照着看了一遍,做一个记录。首先我们平时使用的{display:flex;justify-content:center;align-items:center;}这些是容器属性,也就是父级元素里面设置的,但是如果我们想对某一项子级元素单独设置属性,这就要用到flex的项目属性
- android webview输入框_Android WebView 软键盘挡住输入框
weixin_39681621
androidwebview输入框
解决方法一:在所在的Activity中加入getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE|WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);解决方法二:1.调整AndroidManifest.xml找到对应的Activity,加入以
- 微信小程序 向左滑动显示(删除、修改)按钮
zmuy
微信小程序开发前端微信小程序左滑显示按钮
原理就是上下两个盒子,当上面的盒子向左滑动时显示出下面的盒子。效果展示:直接上代码,注释应该写的挺清楚的。wxmlwxss.list-item{margin:10rpxauto;width:700rpx;height:130rpx;position:relative;}.item-btns{display:flex;justify-content:flex-end;height:100%;}.up
- css 制作一个可以旋转的水泵效果
JiaLin_Denny
css前端动画animationtransition
如图,项目里面有一个小图片可以旋转,达到看起来像是一个在工作的水泵。我使用css旋转动画实现。一、HTML结构部分二、css样式和动画部分.ceshixuanzhuan{display:flex;flex-direction:row;justify-content:center;align-items:center;}.lunkuo{width:50px;height:50px;display:b
- 二维码生成器
Liudef06小白
css前端css3
代码如下二维码生成器*{box-sizing:border-box;margin:0;padding:0;}body{font-family:'SegoeUI','MicrosoftYaHei',sans-serif;background:linear-gradient(135deg,#f5f7fa0%,#c3cfe2100%);min-height:100vh;display:flex;just
- 解决微信小程序渲染层网络层错误 Failed to load media
学途路漫漫
小程序控制台报错处理微信小程序小程序
微信小程序引入网络视频的时候:出现渲染层网络层错误Failedtoloadmedia给组件加入autoplay后错误消失,但是一进入页面就播放不是我想要的效果添加下面代码:setTimeout(()=>{wx.createVideoContext('myVideo').pause();},200)一进来就自动播放趁他没反应过来在Load()中添加如上代码把他暂停。
- 2022最全前端面试题(持续更新)
PiJunJia
前端面试前端面试
css部分如何水平垂直居中一个盒子?已知高度可以使用line-height等于高度实现垂直居中;使用text-align:center实现水平居中display:flex;align-items:center;justify-content:center;绝对定位的话,给父元素设置定位属性relative,子元素设置absolute,然后设置子元素top:0;left:0;right:0;bott
- 前端手写签名板终极实现指南:从零到专业级解决方案
前端御书房
JavaScript前端cssjavascript
一、基础实现:原生Canvas签名板1.1核心三件套搭建电子签名板清除画布/*style.css*/body{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f0f3f5;}.container{width:800px;background:white;padding:20px;
- CSS3雷达扫描效果
CSS3雷达扫描效果https://www.bootstrapmb.com/item/14840要创建一个CSS3的雷达扫描效果,我们可以使用CSS的动画(@keyframes)和transform属性。以下是一个简单的示例,展示了如何创建一个类似雷达扫描的动画效果:HTML:html雷达扫描效果CSS(styles.css):cssbody{display:flex;justify-conten
- JIT 编译优化原理深度解析
程序员
在Java高级程序员面试中,JIT(即时编译,Just-In-TimeCompilation)作为提升程序执行效率的核心技术,是JVM原理模块的高频考点。本文从JIT架构设计、热点代码识别、深度优化技术及面试核心问题四个维度展开,结合HotSpot虚拟机实现细节与最新JVM特性,帮助候选人构建从理论到实践的完整知识体系。JIT基础架构与核心流程JIT编译的双重目标运行时性能优化:将高频执行的字节码
- Java 的抽象特性:抽象类与接口深度解析
zhumqs
JavaSEJava抽象类接口
转载自:https://blog.csdn.net/justloveyou_/article/details/52944564要点:抽象类接口抽象类与接口的区别一.抽象对于面向对象编程来说,抽象是它的四大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。接口和抽象类为我们提供了一种将接口与实现分离的更加结构化的方法。二.抽象类1).概念基础我们都知道在面向对象的领域一切都是
- 编译器基础概念
喜欢打篮球的普通人
传统编译器c++
文章目录编译器与解释器解释器vs编译器对比编译方式Just-In-Time(JIT)编译Ahead-Of-Time(AOT)编译JIT(即时编译)与AOT(提前编译)对比什么时候用到JIT什么时候用到AOT?Pass和IRPass传统编译器编译器的发展历史(HistoryofCompiler)GCC编译过程与原理(GCCProcessandPrinciple)LLVM/Clang编译过程与原理(L
- 解决Docker提示unsupported console settings, you just need to disable the legacy
努力了吗梁同学
前端dockerwindows
第一步:Win+R调出窗口第二步:输入cmd回车,打开命令行第三步:在菜单栏右键点击Properties第四步:取消Uselegacyconsole(requiresrelaunch.affectsallconsoles)第五步:重启计算机,重新打开docker即可
- JVM 调优笔记
LuLaLuLaLeLLLLLL
jvm笔记
1.JVM调优的参数可以在哪里设置参数值?命令行启动参数最常见的方式是在启动Java程序时,通过命令行传入参数设置。例如:java-Xms512m-Xmx1024m-XX:+UseG1GC-XX:MaxGCPauseMillis=200-jarmyapp.jar脚本文件中设置(如shell/batch脚本)在生产环境中,通常会通过脚本启动Java程序,可以在脚本中设置参数:JAVA_OPTS="-
- OpenCV(2)Mat-基本图像容器 C++
~晓广~
opencvC/C++c++opencv
1.Mat-基本图像容器我们有多种方式从现实世界中获取数字图像:数码相机,扫描仪,计算机断层扫描和磁共振成像等等。在任何情况下,我们(人类)看到的都是图像。然而,当将其转换为数字设备时,我们记录的是图像中每个点的数值。MatA,C;//createsjusttheheaderpartsA=imread(argv[1],IMREAD_COLOR);//herewe'llknowthemethodus
- .NET AOT 详解
我是唐青枫
Dotnet.netjava服务器
简介AOT(Ahead-Of-TimeCompilation)是一种将代码直接编译为机器码的技术,与传统的JIT(Just-In-TimeCompilation)编译方式形成对比。在.NET中,AOT编译可以在应用发布时将IL(中间语言)代码转换为平台特定的机器码,而不是在运行时进行JIT编译。与JIT的区别JIT(即时编译)优点:灵活,运行时可以根据实际硬件做优化;对于不常用代码部分可延迟生成机
- 微信小程序开发资源汇总
masserd
小程序微信小程序
转自https://github.com/justjavac/awesome-wechat-weapp#%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3官方文档小程序开发文档小程序设计指南小程序开发者工具工具WePY一个支持组件化的小程序开发框架微信小程序配置及目录在线生成工具EgretWing3.2.x支持微信小程序实时预览的IDE)Labrador支持ES6/7的微信小
- 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