- java课程设计体会_Java课程设计(阶段一)
XY LIU
java课程设计体会
1选题选题一算术运算测试题目要求实现十道100以内加减法数学题,能根据题目计算出答案,与输入答案对比,判断做题是否正确,最后计算分数。添加排行榜功能存放到文件或数据库中。使用Java知识String类IO:Reader、Writer类集合:ArrayLiastsort()方法选题二猜数游戏题目要求计算机产生随机数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜到,给出所用时间和评语。保留用户
- Script to save all images from a docker-compose.yml file
唧唧歪歪的
dockerdockerdocker-compose
通过docker-compose.yml导出镜像到单个文件Scripttosaveallimagesfromadocker-compose.ymlfile1st#!/bin/bashmkdir-poutforimgin`grepimage$1|sed-e's/^.*image\://g'`;docleanname=${img/\//-}tag=`dockerimages|grep$img|awk'
- SVN迁移至git-避坑指南
cityLight-dd
git版本控制gitsvn
获取历史开发人员名单主要是为了同步SVN历史提交记录到git进入到项目的svn根目录下,执行以下命令,可以获取到项目所有的历史提交人svnlog--xml|grep"^''{print$2}'|awk-F'''{print$1}'>userinfo.txt使用git下载SVN项目gitsvnclonesvn://127.0.0.1:33333/app/trunk/qct/JAVA/shinyway
- ubuntu22.04系统kubeadm部署k8s高可用集群
l386913
kubernetes容器云原生
一、shell脚本一键部署#!/bin/bashset-e#节点配置MASTER1="192.168.177.125"MASTER2="192.168.177.126"MASTER3="192.168.177.127"WORKER1="192.168.177.128"KEEPALIVED_VIP="192.168.177.129"#当前主机IPCURRENT_IP=$(hostname-I|awk
- Android adb shell 命令
wh0am1·
androidadbpython
获取当前apk包名:dumpsyswindoww|grep\/|grepname=|awk-F'name=|/''{print$2}'查看当前apk版本号:dumpsyswindoww|grep\/|grepname=|awk-F'name=|/''{print$2}'|head-n1|xargs-n1sh-c'dumpsyspackage$1|grep"versionName="'sh|awk-
- linux,1.正则表达式, 2.sed工具, 3.awk
skyQAQLinux
正则表达式linux云计算服务器
一.正则表达式1.egrep过滤工具(输出匹配行):筛选出文本中指定条件的行(1)以行为单位,逐行进行处理,默认只"输出"与表达式相匹配的"文本行"egrep:扩展正则grep:基本正则(2)语法格式1,文件(单引号)egrep[选项]'正则'文件格式2,命令命令|egrep[选项]'正则'(3)[选项]:(1)-i:忽略大小写(2)-v:去反(3)-c:统计匹配的行数(4)-q:无任何输出,一般
- 【ARM 嵌入式 编译系列 7.5 -- GCC 打印链接脚本各段使用信息】
主公讲 ARM
#【ARMGCC编译专栏】arm开发链接脚本段信息打印
文章目录Overview1在linkerscript中定义符号2编译并生成ELF文件3使用nm+awk输出各段地址及大小(含单位)4实际输出示例5进阶建议Overview在GCC编译生成elf后打印出出数据段的开始地址及结束地址,bss段的开始地址和结束地址,stack段的开始地址及结束地址,以及它们的大小,注意大小要带上单位,比如K。要在GCC编译生成.elf文件后打印出各段的开始地址、结束地址
- 常见接口测试题
鱼鱼说测试
接口测试
1、按你的理解,软件接口是什么?答:就是指程序中具体负责在不同模块之间传输或接受数据的并做处理的类或者函数。2、HTTP和HTTPS协议区别?答:https协议需要到CA(CertificateAuthority,证书颁发机构)申请证书,一般免费证书较少,因而需要一定费用;http是超文本传输协议,信息是明文传输,Https协议是由SSL+Http协议构建的可进行加密传输、身份认证的网络协议,比h
- linux ps-l命令详解,ps命令实用方法.ps -l ps -L详解
一、统计sleep状态的进程.c233plugins#ps-elf|head-1FSUIDPIDPPIDCPRINIADDRSZWCHANSTIMETTYTIMECMD4Sroot2814942040800-16283poll_sJul05?00:00:00sshd:rootc233plugins#ps-efl|awk'$2~/S/{print$0}'|wc-l//-llongformat.73解
- Linux文本处理三剑客实战指南:grep、sed、awk
目录三剑客简介与对比grep:文本搜索利器✂️sed:流编辑与批量替换awk:文本分析与格式化输出⚔️易混辨析与命令对比实战案例集锦高频面试问答️进阶技巧与最佳实践三剑客组合实战常见错误与排查建议1.三剑客简介与对比grep:按模式搜索文本,输出匹配行,适合快速查找和过滤。sed:流编辑器,支持查找、替换、插入、删除等批量文本处理。awk:强大的文本分析与报告生成工具,支持条件判断、格式化输出、统
- linux 杀死所有 python进程的命令
在使用多进程执行python脚本时,会产生多个进程,使用killallpython和pkillpython都不能同时杀死所有python进程。有效命令:ps-ef|greppython|grep-vgrep|awk'{print$2}'|xargskill-9这段代码是一个在类Unix操作系统中使用的命令行脚本,用于查找并终止所有正在运行的Python进程。下面是对每一部分的解释:ps-ef:这是
- 通用jar包运行脚本模版,开始、停止、重启
publicman_
javalinuxjava运维
#!/bin/bashboot_NAME=stationBoot.jar#使用说明,用来提示输入参数usage(){echo"Usage:shstationboot.sh[start|stop|restart|status]"exit1}#检查程序是否在运行is_exist(){pid=`ps-ef|grep$boot_NAME|grep-vgrep|awk'{print$2}'`#如果不存在返回
- Awk脚本的精细过滤技巧
t0_54manong
编程问题解决手册mysql数据库个人开发
在数据处理领域,Awk因其简洁而强大的文本处理能力而备受推崇。本文将通过一个具体的实例,详细探讨如何使用Awk脚本来进行精细的文本过滤。背景假设我们有一个PDB(ProteinDataBank)文件,其中包含了各种化学结构的信息。我们的目标是过滤掉文件中特定条件的行,同时在文件末尾添加一个“END”标签。具体来说,我们需要:排除以“HETATM”开头且包含“lig”或“lih”的行。排除以“END
- 【飞控】PX4固件和APM固件
琛:D
飞控px4
背景记录:PIXHAWK2.4.8在刷固件时,PX4固件的官配是px4_fmu-v3_default.px4,在实际中很多资料中使用的是APM固件。疑问点:PIXHAWK兼容APM固件吗?APM固件与PX4固件的关系?一、硬件:APM与PIXHAWK1.APM硬件定位:早期开源飞控硬件标杆,基于ArduinoMega2560开发(8位AVR架构),代表型号包括APM2.5、APM2.6。特点:集成
- 软件测试测试题——软件测试概述-1
代码欢乐豆
软件测试软件测试
一.单选题(共7题,7.0分)1.(单选题,1.0分)由于热键冲突,在打开金山词霸时,Excel的区域选择功能失效,该软件缺陷与ISO/IEC9126质量模型中定义的哪个质量子特性相关()。A.易恢复性B.互操作性C.共存性D.容错性正确答案:C知识点:ISO/IEC91262.(单选题,1.0分)某网上购物软件,与京东、淘宝等现有主流系统操作流程一致,符合最终用户的使用习惯和操作模式,主要目的是
- ASCII Unicode UTF-8 字符集 字符编码
土豆Coder
字符及编码前端
ASCIIUnicodeUTF-8字符集字符编码基本概念字符字符集字符编码字符集和字符编码ASCII字符集Unicode字符集UTF-8测试题基本概念字符集为每个字符分配了一个唯一的编号,通过这个编号就能找到对应的字符。在编码过程中我们经常会使用字符,而使用字符的前提就是把字符放入内存中,而放入内存中的仅仅是字符的编号,而不是真正的字符实体。这就引出一个问题,如何将这些字符编号存入内存中,还能让计
- extract_alarm_8.sh
胖大和尚
shellxml
非常好,感谢你的进一步澄清!你要的效果是:提取setIntlkAlarm、createActionAlarm、acceptUnknown节点的内容,并获取距离它最近的上一级父节点(即它被包裹的直接父节点),而不是随意更上层的祖先节点。⸻✅正确脚本(仅Bash+awk+sed,不依赖第三方工具)这个版本专门修复了“上一级父节点不准确”的问题,用一个栈来追踪XML层级结构,始终记录当前的“直接父标签”
- linux中查询字符串在文件中出现的次数
bulucc
linux运维服务器
1、查询字符串在文件中出现的次数#在文件file.txt中搜索字符串"test",并输出匹配的次数。grep-o"test"file.txt|wc-l#grep命令(使用-c选项):grep-c"test"file.txt#awk命令:awk'{printgsub("test","")}'file.txt|awk'{sum+=$1}END{printsum}'#sed命令:sed's/test//
- GitLab 自动化备份方案:借助 Shell 脚本与 Cron 实现异地备份和备份清理
神志不清.
中间件运维脚本1024程序员节运维linuxgitlab
#!/bin/bash#使用gitlab自带命令创建备份gitlab-rakegitlab:backup:create#将最新的备份做异地策略scp$(find/var/opt/gitlab/backups-name"*.tar"-typef-execls-lt{}+|head-1|awk'{print$NF}')
[email protected]:/backup/gitlab/backup#删除
- Docker 删除所有无名称的镜像(悬空镜像)
greenery
dockerdocker运维
我们在build镜像的过程中,可能会产生一些临时的不具有名称也没有作用的镜像他们的名称一般都是,我们可以执行下面的命令将其清除掉:dockerrmi$(dockerimages-f"dangling=true"-q)#先查看停掉的dockerdockerps-a|grepExited#然后停了才可以删除dockerrm$(dockerps-a|grepExited|awk'{print$1}')#
- shell三剑客
相知-.
运维linux开发语言
了解三剑客三剑客指的是:grep、sed和awk这三个在linux系统中常用的命令行工具shell三剑客grep:主要用于查找和过滤特定文本sed:是一个流编辑器,可以对文本进行增删改查awk:是一个文本处理工具,适合对列进行处理和分析。它不仅可以进行查找和替换,还能执行数学计算和数据统计shell三剑客试用场景1.日志处理与搜索:使用grep搜索关键词,结合sed和awk进行进一步处理和分析2.
- Linux中shell的正则表达式
码农101号
一、正则表达式1.1通配符和正则1正则表达式用来在文件中匹配符合条件的字符串,主要是目的是包含匹配。-grep、awk、sed等命令可以支持正则表达式。2通配符用来匹配符合条件的文件名,通配符是完全匹配。-ls、find、cp之类命令不支持正则表达式,可以借助于shell通配符来进行匹配。.:匹配任意一个字符*:匹配任意内容?:匹配任意一个内容[]:匹配中括号中的一个字符通配符实践创建基本环境[r
- linux基于内存实现jar文件搜索
jar_file="指定的jar包路径";search_term="搜索内容";forfin$(unzip-l"$jar_file"|tail-n+4|head-n-2|awk'{print$4}');doif[["$f"!=*/]];thenunzip-p"$jar_file""$f"2>/dev/null|awk-vpattern="$search_term"-vjarfile="$f"'BE
- 多个多页PDF转base64图片并合为一张大图
Lukeyyyy
js基础vue前端jsjavascript
pdf转图片#pop{position:fixed;width:1404px;left:100%;}请不要关闭当前窗口,正在为您合并PDF并生成图片...请耐心等候15秒左右//!!!!!!把你的pdf地址们放到这个数组中就不用管了!!!!!!!!!!!!!!!letpdfUrlArr=['https://lawkehyt.oss-cn-beijing.aliyuncs.com/%E6%9C%B1
- Ubuntu搭建Mysql+Keepalived高可用(双主热备)
2401_89191942
ubuntumysqladb
sudoapt-getremovemysql-*dpkg-l|grep^rc|awk‘{print$2}’|sudoxargsdpkg-P配置权限vim/etc/mysql/my.cnf#bind-address=127.0.0.1mysql-uroot-pgrantallon.toroot@‘%’identifiedby‘root’withgrantoption;flushprivileges;
- shell脚本--查看应用的cpu 和 内存使用率 并把最新告警内容显示出来
bcxwz669
运维
#/bin/bash#awkNR==2'{print$4}':awk处理前一步结果,NR==2表示取第2行,print$4提取该行第4列内容(一般是进程PID),最终把PID赋值给变量ics_pid。ics_pid=ps-efl|grepapp|grep-vgrep|awkNR==2'{print$4}'#|awk'{print$9}':提取每行第9列(top中第9列默认是CPU使用率)。awkN
- oracle提供两个命令,两条命令彻底杀死oracle
Tanuo
oracle提供两个命令
今天编写的两条极具杀伤力的命令,它可以瞬间将Oracle杀死在无形之中。后面我将给出简单注释并展示一下它的威力。$ps-ef|grep$ORACLE_SID|grep-vgrep|awk'{print$2}'|xargskill-9$ipcs-m|greporacle|awk'{print$2}'|xargsipcrmshm这两条命令的来由:今天处理了三起Oracle数据库无故无法登录的问题,无论
- c语言第六章数组测试题,C语言练习题-第六章数组练习题.doc
itscszh
c语言第六章数组测试题
(21)若有定义语句:intm[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是A)m[--i]B)m[2*2]C)m[m[0]]D)m[m[i]](24)若有定义语句:chars[10]="1234567\0\0";,则strlen(s)的值是A)7B)8C)9D)10(34)有以下程序#includevoidfun(inta[],intn){inti,t;for(i=0
- WordZero:让Markdown与Word文档自由转换的Golang利器
一只特立独行的兔先森
wordgolangword自动化
在日常工作中,我们经常需要在Markdown和Word文档之间进行转换。Markdown方便编写和版本控制,而Word文档更适合正式的商务环境。作为一名Golang开发者,我开发了WordZero这个库,专门解决这个痛点。项目背景GitHub仓库:https://github.com/ZeroHawkeye/wordZeroWordZero是一个纯Golang实现的Word文档操作库,遵循最新的O
- awk处理xml文件&&封装集合变量和调用
itachi-uchiha
shell脚本xmlawkshell
对于Hadoop配置本地存储路径:dfs.datanode.data.dirfile:///dfs/datadfs.datanode.data.dirfile:///mnt/datadir1/data,/mnt/datadir2/data,/mnt/datadir3/data可以严格按照XML换行和缩进格式配置,也可以配置到一行中;可以带file://前缀也可以不带;注:在Hadoop的配置中,d
- 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