- ubuntu下使用docker部署nginx
神奇的路人A
dockerdocker
前面配置与命令有什么问题的朋友可以参考以下两个链接ubuntu下安装docker,并配置镜像ubuntu下docker常用命令,及容器创建1.进入root模式$sudosu2.下载Nginx镜像$dockerpullnginx3.创建nginx容器$dockerrun-d--namenginx01-p3344:80nginx#--name[你要设置的容器名字]#-p主机端口:容器端口这里需要开启u
- 达梦数据库命令行操作
曼岛_
达梦数据库数据库开发
登录DM数据库/home/dmdba/dmdbms/bin/disqlSYSDBA/SYSDBA:5236输入用户名:SYSDBA密码:SYSDBA
- 前端架构 —— 脚手架的开发流程
mask-li
前端
一、脚手架开发流程详解开发流程创建npm项目创建脚手架入口文件,最上方添加:#!/usr/bin/envnode配置package.json,添加bin属性编写脚手架代码将脚手架发布到npm使用流程安装脚手架npminstall-gyour-own-cli使用脚手架your-own-cli二、脚手架开发难点解析分包:将复杂的系统拆分成若干个模块命令注册:vuecreatevueaddvueinvo
- HTTP cookie与session
风掣长空
计算机网络http网络协议网络
telnet命令telnet是一个网络协议,用于通过TCP/IP网络进行远程登录到服务器。它允许用户在本地计算机上通过网络连接到远程服务器,并在服务器上执行命令telnet[主机名或IP地址][端口号]//连接服务器在telnet会话中,Ctrl+]会将你从当前会话切换到telnet的命令模式,你可以在这里输入命令。Ctrl+T可以显示当前的连接状态。HTTP是无连接,无状态的,就是每次访问一个服
- Linux下网络运维命令总结
C嘎嘎嵌入式开发
Linux运维linux网络
一、网络连通性测试ping作用:检测目标主机是否可达,并测量网络延迟。示例:pingwww.example.com持续发送ICMP报文,按Ctrl+C停止。ping-c4www.example.com发送4个ICMP报文后停止。traceroute作用:显示数据包到达目标主机所经过的路由路径。示例:traceroutewww.example.com使用默认端口进行追踪。traceroute-Iww
- 加密授权——获取计算机CPUID序列号(32位 64位 均可以)
程序猿小泽
CC++获取CPU的ID号加密授权
最近项目要用到加密授权,考虑了一下打算采用CPUID加密,上网找了资料整合如下,代码适合windows环境下32位和64位的均可。首先说下cmd下查看CPUID命令:wmiccpugetProcessorId在32位模式下,我们可以使用内嵌汇编来调用cpuid指令。但在64位模式下,VC编译器不支持内嵌汇编。于是微软提供了Intrinsics函数——编译器会将Intrinsics函数编译为对应的机
- Linux 程序员必修课:命令、脚本、程序、进程与线程的全貌
内核程序员kevin
Linux程序员linux进程脚本线程
Linux程序员必修课:命令、脚本、程序、进程与线程的全貌1.Linux命令、脚本、程序、进程与线程的关系对比表概念定义存储形式执行方式是否需要进程是否支持并发示例命令用户输入给shell的指令,可以是内置命令或外部命令直接输入在shell中(无固定存储)由shell解析并执行仅外部命令需要取决于命令,如&可后台运行ls、cd、echo脚本一组命令的集合,存储在文件中,通常是shell脚本文本文件
- Tomcat 8.0.12安装流程
小魚資源大雜燴
tomcatjavalinux
需要确保系统已经安装了JavaDevelopmentKit(JDK)7或更高版本。可以通过以下命令检查Java是否安装以及版本信息:shjava-version如果未安装Java,需要先下载并安装适合你操作系统的JDK。Windows系统安装流程步骤1:下载Tomcat8.0.12打开浏览器,访问ApacheTomcat的存档页面:https://archive.apache.org/dist/t
- 计算机网络实验一:对等网络的构建
蓝多多的小仓库
CS专业课实验及秋招实录计算机网络网络对等网络构建TCP/IP
实验一:对等网络的构建1、实验要求(1)掌握TCP/IP协议的配置;(2)掌握常见网络命令的使用;(3)掌握组建windows对等网络并配置文件共享。2、实验内容(1)以MicrosofeWinodws系统为例,对TCP/IP协议进行安装和配置;(2)学习使用常见的网络命令,并了解相关的参数;(3)组建windows对等网络。
- FT2004(D2000)开发实战之U-boot环境变量
前行的阿木
linux嵌入式硬件驱动开发
一概述U-boot环境变量的作用是:在不修改U-boot源代码的情况下,通过修改U-boot环境变量来改变U-boot的运行方式。我们通过printenv命令打印环境变量,setenv命令修改环境变量。常用的U-boot环境变量有:bootdelaybootcmdbootargsserverip、ipaddr、netmask、gatewayip当然最最重要的U-boot环境变量是bootcmd和b
- Windows用pm2部署node.js项目
秦时明月之君临天下
Node.jsNext.jswindowsnode.js
Windows上pm2启动命令不生效按照常规启动命令应该如下,但是发现不生效pm2startnpm--name"project-name"--start具体如下,可以看到状态都是stopped$pm2startnpm--name"chatgpt-next-web"--start[PM2]StartingF:\PROGRAMFILES\NODEJS\NPM.CMDinfork_mode(1insta
- 关于解决shell脚本中无法用cd命令,在指定文件下运行指定文件的解决方法分享
Ramphastos1101
phplinux服务器bash
本人以编写shell脚本,一键安装配置php7.3为例前提:本脚本在Linux/opt/目录下运行首先解压php压缩包######配置nginx,带lua支持#################################################tar-zxvf/opt/php-7.3.30.tar.gzif[$?-eq0];thenecho`date"+%y-%m-%d%H:%M:%S
- 解析Linux中的系统安全及应用(二)
石头城云计算笔记
Linuxsu命令切换用户sudo机制提升权限PAM安全认证网络端口扫描弱口令检测
各位小伙伴大家好,本次和大家分享的是Linux系统中的系统安全及应用的相关理论知识及操作。我将通过以下几点和相关的实验进行分析说明:(接上篇)五.使用su命令切换用户:1、用途及方法用途:SubstituteUser,切换用户格式:su-目标用户(bash环境)2、密码验证root→任意用户,不验证密码普通用户→其他用户,验证目标用户的密码[jerry@localhost~]$su-root(带-
- 部署 Node.js 应用之 PM2
7 号
Node.jsnode.js
什么是pm2PM2是一个非常流行的Node.js应用进程管理工具,它帮助你管理和保持Node.js应用的高可用性。PM2提供了进程守护、日志管理、负载均衡等功能,非常适合生产环境使用。安装pm2npminstallpm2-g验证是否安装成功pm2--versionPM2常用命令启动Node.js应用(启动打包后的)pm2startapp.js停止Node.js应用(启动打包后的)pm2stopap
- Linux基础知识:操作系统概述、常用命令、文件系统及Shell脚本入门与进阶
一碗黄焖鸡三碗米饭
Linux探索与实践linux运维服务器
Linux基础知识:操作系统概述、常用命令、文件系统及Shell脚本入门与进阶Linux操作系统因其开源、稳定和高效的特点,广泛应用于各类服务器、嵌入式系统及开发环境中。对于开发者或系统管理员来说,掌握Linux的基础知识是必不可少的。本文将深入探讨Linux操作系统概述、常用命令的讲解、文件系统结构与权限管理,以及Shell脚本的入门与进阶,帮助你更好地理解和使用Linux。一、Linux操作系
- python记录项目的依赖信息:
通辽汗国尚书令
python开发语言
python记录项目的依赖信息:在项目目录下运行pipfreeze>requirements.txt命令。这会将项目所需的所有第三方包及其版本信息保存到名为requirements.txt的文件中。迁移项目文件夹:将包含项目文件的文件夹从原计算机复制到目标计算机上。安装依赖:在目标计算机上,确保已经安装了相应版本的Python。在项目文件夹下打开命令行或终端。运行pipinstall-rrequi
- python -ssh学习
大胖丫
python
defexe_sshcmd(ip,username,userpswd,port,cmd):"""功能:SSH登录到指定设备,并执行对应的命令入参:前四项为ssh登录shell的ip和port,具备管理员权限的用户名和密码,cmd可以是单条命令,也可以是命令列表返回:每次命令执行结果列表,标准输出结果,不包含错误输出Examples:|ExeSshcmd|ip|name|pswd|cmd|"""tr
- Flink同步数据mysql到doris问题合集
土豆沒加
常用工具flinkmysql大数据
Flink同步数据mysql到doris官方同步流程Doris安装下载地址导入镜像启动配置Flink-cdc安装(自制)下载地址导入镜像启动命令启动问题修复Flink报错Couldnotacquiretheminimumrequiredresources.作业报错Mysql8.0PublicKeyRetrievalisnotallowed作业报错Connectto127.0.0.1:8040[/1
- python中安装使用pcl
业务不精er
pythonpcl
这个参考官网的方法即可。我是安装完了使用pcl的时候总是提示找不到pclmodule,使用的是官网以下方法:(在condaprompt中分别执行以上命令)
- 安装Python_PCL点云库
FqLibrary
python开发语言点云
Python_PCL是Python语言的一个点云库,它提供了一组用于处理和分析点云数据的工具和函数。本文将介绍如何安装和配置Python_PCL点云库,并提供相应的源代码示例。Python_PCL的安装步骤如下:步骤1:安装依赖库在安装Python_PCL之前,我们需要先安装一些依赖库。打开终端或命令提示符,运行以下命令来安装依赖库:pipinstallnumpypipinstallctypesp
- Flink K8s Application任务的使用
老哥哥-老刘
flink
FlinkK8sApplication任务的使用FlinkK8sApplication任务的使用构键k8s集群提供flink运行任务的环境下载flink客户端任务编程任务jar生成过程k8sApplication运行Application模式架构启动命令PodTemplateFlinkK8sApplication任务的使用构键k8s集群在这里,我们需要搭建一个K8S环境用于提供flink任务的运行
- 跟我一起学Python数据处理(一百零三)之命令行参数解析与云服务应用
lilye66
pythonlinux开发语言
跟我一起学Python数据处理(一百零三)之命令行参数解析与云服务应用大家好!我写这系列博客的初衷是想和大家一起学习进步。在学习Python数据处理的过程中,我发现其中有很多有趣又实用的知识,所以迫不及待地想和大家分享。接下来,咱们就一起深入学习相关的知识点。一、Python命令行参数解析在Python编程里,有时候我们希望通过命令行给脚本传递额外信息,让脚本根据这些信息执行不同任务。比如有个数据
- Mac OS 安装Homebrew失败的解决方法
LAN¥¥
redis
在MacOS上安装Redis之前要先安装Homebrew在安装过程中总报如下错误通常是镜像的原因,执行以下命令再重新安装就可以了exportHOMEBREW_BREW_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git"exportHOMEBREW_CORE_GIT_REMOTE="https://mirro
- Mac安装HomeBrew&HomeBrew安装yarn
梦魇米莉
macosyarn前端javascript
Mac安装HomeBrew&yarnHomeBrew官方网址:https://brew.sh/HomeBrew是mac的包管理器仅需执行相应的命令,就能下载安装需要的软件包,可以省掉自己去下载、解压、拖拽(安装)等繁琐的步骤参考文档:https://cloud.tencent.com/developer/article/1853162(全解)如何安装呢?方法一:官网安装脚本/bin/bash-c"
- 【Python】在Windows下配置Python最小环境并在React执行Python脚本
非晓为骁
pythonpythonwindowsreact.js
最近我在开发一个Electron桌面应用时,需要调用Python脚本进行音频处理。这篇文章将分享我配置Python环境以及在项目中调用Python脚本的经验,希望能帮助遇到类似问题的开发者。【这个用法来调用不是最优解】问题背景我需要在Electron项目中调用Python脚本进行音频分析。我的方案是在应用中内置一个精简的Python环境,然后直接调用python.exedetect.py命令来执行
- 如何高效修改多个节点的 config.ini 文件
纸鸢666
网络linux服务器联盟链区块链
简介在区块链网络中,节点的配置文件(如config.ini)通常定义了节点的运行参数。当你有多个节点时,如果需要修改这些配置文件中的某些设置,手动修改每个节点的配置文件显然是繁琐且易出错的。那么,有没有更简便的方式来完成这一任务呢?答案是肯定的!下面我将介绍几种方法,帮助你高效地修改多个节点的config.ini文件。方法1:使用脚本自动化操作如果你熟悉命令行和脚本语言,可以编写一个简单的脚本来自
- vue图表插件ECharts使用指南
IT 老王
echarts前端javascript
以下是一份较为全面的ECharts使用指南,包含安装、基本使用步骤、常见图表示例以及配置项说明等内容。1.安装ECharts可以通过npm或yarn进行安装,在项目根目录下执行以下命令:#使用npm安装npminstallecharts--save#使用yarn安装yarnaddecharts2.基本使用步骤2.1引入ECharts在Vue组件中引入ECharts:import*asecharts
- 一个简单的学生信息管理系统的Python代码,使用Tkinter GUI库和MySQL数据库。
Usinian
python数据库mysql前端后端
以下是一个简单的学生信息管理系统的Python代码,使用TkinterGUI库和MySQL数据库。这个系统允许您添加,更新,删除和查看学生信息。在开始之前,请确保你已安装必要的库,包括pymysql和tkinter。如果你还没有安装它们,您可以在终端中运行以下命令进行安装:pipinstallpymysqlsudoapt-getinstallpython-tk接下来是代码:pythonfromtk
- Git解决本地与远程的代码冲突
HUGOkungggg
杂gitgithub
情况1:当本地的代码已经commit我遇到的是这个情况。方法肯定有很多。这里仅记录我处理成功的。首先我们应该把远端的代码分支拉取到本地的一个新的临时分支上。gitfetchoriginremote_brach:local_tmp然后可以通过下面命令查看与本地最新分支的差异。gitdifflocal_tmp在自己想提交的分支上执行合并命令。gitmergelocal_tmp如果有不能自动合并的冲突文
- 麒麟系统中删除权限不够的文件方法
乙龙
linuxkylin
在麒麟系统中删除权限不够的文件,可以尝试以下几种方法:通过修改文件权限删除打开终端:点击左下角的“终端”图标,或者通过搜索功能找到并打开终端。定位文件:使用cd命令切换到文件所在的目录。修改文件权限:使用chmod命令修改文件权限,使当前用户具有读写执行权限。例如:chmod777文件名这里的777表示赋予所有用户对该文件的读、写、执行权限。删除文件:使用rm命令删除文件,例如:rm文件名如果需要
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http