- REAPER:REAPER基础操作与界面介绍_2024-07-17_13-32-08.Tex
chenjj4003
游戏开发自动化运维chrome前端人工智能
REAPER:REAPER基础操作与界面介绍REAPER简介与安装1.1REAPER软件概述REAPER是一款功能强大且灵活的数字音频工作站(DAW),适用于Windows和MacOSX操作系统。它提供了多轨录音、音频和MIDI编辑、混音、母带处理、虚拟乐器和效果器插件支持等全面的音频制作功能。REAPER的设计理念是简洁高效,用户界面直观,同时允许高度的自定义和扩展,适合从初学者到专业音频工程师
- WinSW-x64(2.12.0)将nginx注册为服务可能有bug
星火91314
nginxbuggithub
使用的环境是:windowsserver2008R2,WinSW-x64(2.12.0),nginx1.24.0项目中碰到个需求,配置nginx代理,实现一个端口代理多个端口和地址。本来很轻松的事,结果耗费了一天的功夫,把人都整不自信了。我先修改nginx配置,然后在服务列表中重启nginx服务,这个服务是使用WinSW-64(2.12.0)版注册的,选了最新版的,想着bug会少一些。然后神奇的事
- windows python opencv imshow图片报错解决
热爱生活热爱你
python3opencv人工智能计算机视觉
importcv2#检查版本print(cv2.__version__)#加载一张图片(确保你有一个名为'test.jpg'的文件在当前目录)image=cv2.imread('C:\\test1.jpg')#显示图片cv2.imshow('image',image)cv2.waitKey(0)cv2.destroyAllWindows()cv2意思是opencvc++o(* ̄︶ ̄*)o建议使用A
- Umi-OCR 使用与安装教程
平依佩Ula
Umi-OCR使用与安装教程项目地址:https://gitcode.com/gh_mirrors/um/Umi-OCR1.项目目录结构及介绍Umi-OCR的项目结构精心组织,以支持其多方面功能。以下是主要组成部分的概览:Umi-OCR├──Umi-OCR.exe#主执行文件,Windows平台上直接运行的程序├──umi-ocr.sh#Linux上的启动脚本└──UmiOCR-data├──ma
- 【JVM】卸载JDK后问题could not open …jvm.cfg
=PNZ=BeijingL
Javajvm
问题现象MicrosoftWindows[版本10.0.18363.592](c)2019MicrosoftCorporation。保留所有权利。C:\Users\User>java-versionError:couldnotopen`C:\ProgramFiles\Java\jre6\lib\amd64\jvm.cfg'出现这种情况大多是因为电脑上之前安装过JDK,卸载后没有处理完成造成卸载重装
- linux jvm gc日志分析,JVM GC 日志详解
一只小小的IOS
linuxjvmgc日志分析
本文采用的JDK版本:javaversion"1.8.0_144"Java(TM)SERuntimeEnvironment(build1.8.0_144-b01)JavaHotSpot(TM)64-BitServerVM(build25.144-b01,mixedmode)一、GC日志参数设置JVMGC格式日志的主要参数包括如下8个:-XX:+PrintGC输出简要GC日志-XX:+PrintGC
- Java 8 + Tomcat 9.0.102 的稳定环境搭建方案,适用于生产环境
无极低码
javajavatomcat开发语言
一、安装Java8安装OpenJDK8bashsudoaptupdatesudoaptinstallopenjdk-8-jdk-y验证安装bashjava-version应输出类似:openjdkversion“1.8.0_412”OpenJDKRuntimeEnvironment(build1.8.0_412-8u412-ga-1~22.04-b08)OpenJDK64-BitServerVM(
- Windows C盘清理技巧分享
qzw1210
windows
清理C盘是保持计算机性能和存储空间的关键步骤。C盘通常是系统盘,存储着操作系统和许多重要的系统文件,因此在清理时需要格外小心,以免误删重要文件。以下是一些详细的C盘清理技巧,帮助你有效释放空间。1.使用磁盘清理工具Windows自带的磁盘清理工具是清理C盘的首选工具。它可以安全地删除不必要的系统文件。步骤:打开“此电脑”。右键点击C盘,选择“属性”。点击“磁盘清理”按钮。在弹出的窗口中,选择要删除
- 明基PD2700U显示器无法调节图像模式
橘子西瓜
显示器PD2700U明基BENQ
现象:明基PD2700U显示器无法调节图像模式,如下图:目前未找到根本原因,推测可能是下面的原因:1、安装了远程桌面软件:向日葵、虚拟显示器2、显卡插入了接口,但是没接显示器解决办法:电脑接入两个显示器,按Windows+P,切到其它模式,然后再切回来:然后就可以了:
- 描述K8S创建pod的全过程
小马不敲代码
云原生kubernetes容器云原生
1、用户提交请求用户通过kubectl命令行工具或API客户端提交创建Pod的请求。请求中包含了Pod的配置信息,例如容器镜像、资源需求、环境变量等。2、APIServer接收请求APIServer是Kubernetes集群的入口,负责接收和处理所有API请求。APIServer会验证请求的合法性,例如用户权限、资源配额等。验证通过后,APIServer会将Pod的配置信息存储到etcd中。3、S
- 大模型的webui
Zain Lau
人工智能python昇腾Ascend天数
exportXXX_LLM_C=~/xcore-llm/build/ReleaseexportCUDA_VISIBLE_DEVICES=2,3exportCUDACXX=/usr/local/cuda-12.3/bin/nvccnohup/usr/bin/python3/home/src/api_server/api_server.py--modelLLama2:7b-chat-hf_A800--
- PKI及SSL协议分析实验报告
只会复制粘贴的
sslhttps服务器
PKI及SSL协议分析实验报告一、实验目的通过该实验了解和掌握证书服务的安装,理解证书的发放过程,掌握在WEB服务器上配置SSL,使用HTTPS协议访问网站以验证结果,最后对HTTPS协议进行分析。二、实验环境WindowServer*2本实验中自己指定CA服务器与申请证书的网站。实验过程中建议使用IE浏览器,如果不使用IE,可能会导致后续实验过程中证书不能下载。三、实验内容与实验要求实验内容、原
- php openssl tls1.2,openssl建立tls1连接过程(s->state的变化过程)
开源故事
phpopenssltls1.2
以下是调用openssl建立tls1连接过程中,openssl内部对握手阶段的处理过程,可以对照抓包观察以下服务端和客户端是并行进行的,只是需要接收对端消息时才会进入等待状态.为方面理解,所以将客户端和服务端的处理按顺序排好.具体的状态转换代码请见:server端/ssl/s3_srvr.c的ssl3_accept方法client端/ssl/s3_clnt.c的ssl3_connect方法clie
- server和client通信双方双向认证,基于openssl,使用TLS加密TCP流量
spring*-*
tcp/ip服务器网络协议
设计一个基于OpenSSL的C语言程序来实现双向认证的TLS加密TCP通信,需要包含服务器和客户端两部分。以下是该程序的核心步骤及示例代码。生成证书和私钥首先,需要为服务器和客户端生成证书和私钥。可以使用OpenSSL命令行工具生成这些文件。bash复制代码生成CA私钥和自签名证书opensslgenrsa-outca.key2048opensslreq-x509-new-nodes-keyca.
- Liunx启动kafka并解决kafka时不时挂掉的问题
RyFit
linuxkafka
kafka启动步骤先启动zookeeper,启动命令如下nohup./zookeeper-server-start.sh/home/kafka/kafka/config/zookeeper.properties>/home/kafka/kafka/zookeeper.log2>&1&再启动kafka,启动命令如下nohup./kafka-server-start.sh/home/kafka/kaf
- 基于ASP.NET校园二手交易网站设计与实现
汐泽学园
asp.net后端
摘要校园二手交易市场伴随互联网技术的迅猛发展以及校园内资源共享需求的增长而逐渐兴起。基于ASP.NET开发的校园二手交易网站,目的在于为高校师生打造一个便捷、安全且高效的二手物品交易平台。此网站借助ASP.NET技术开展开发工作,并且结合SQLServer数据库来存储数...关键词ASP.NET;校园二手交易;网站设计AbstractWiththerapiddevelopmentofInterne
- oracle数据库监听日志满了(4G)处理步骤
cyhysr
oracle
现象:系统缓慢,新连接无法连接,执行查看监听状态命令时,响应缓慢且报错。遇到这些现象基本是监听日志已满,达到了4G。具体处理步骤如下:注意:本例为windows服务器,数据库oracle11g1、找到监听日志路径默认监听名为listener,直接在服务器中搜索listener.log文件。如果是windows服务器,且数据库安装在D盘,可参考如下路径:D:\app\Administrator\di
- ROS实践(五)机器人自动导航(robot_navigation)
简约少年
ROS机器人导航navigation
目录一、知识点1.定位2.路径规划(1)全局路径规划(2)局部路径规划3.避障二、常用工具和传感器三、相关功能包1.move_base(决策规划)2.amcl(定位)3.costmap_2d(代价地图)4.global_planner(全局规划器)5.local_planner(局部规划器)6.map_server(地图)四、导航流程框架五、navigation导航实验1.前提准备2.实验步骤六、
- 以下列举了一些典型的JavaScript网页设计实例,它们展示了多样化的功能和交互体验,非常适合初学者及中级开发者学习借鉴如下:
一一代码
javascript
1.动态导航栏-功能描述:创建响应导航栏,当用户滚动页面时,导航栏固定在页面顶部,并显示当前页面部分。-技术点:-`window.scroll`事件监控页面滚动。-`classList`动态添加/移除CSS类。-`IntersectionObserver`检测元素是否进入视口。-示例代码:```javascriptwindow.addEventListener('scroll',()=>{cons
- 透视B/S架构与C/S架构:构建未来网络应用的智慧选择
无限大.
杂谈架构
透视B/S架构与C/S架构:构建未来网络应用的智慧选择在信息技术迅猛发展的今天,网络架构的选择对企业和开发者来说至关重要。B/S架构(Browser/Server)与C/S架构(Client/Server)是两种主流的架构模式,各自具有独特的优势与适用场景。随着技术的不断发展,B/S架构逐渐取代C/S架构成为主流选择。接下来,我将深入探讨这两种架构,并分析B/S架构为何能够占据主导地位。一、什么是
- SQL 布尔值 取反(sql server)
zzginfo
DataBasesqlserversql
在sql中,可以用'~'符号对布尔值取反值如select~isdeletedfromdbo.BUS_Teachers参考:http://stackoverflow.com/questions/177762/boolean-not-in-t-sql-not-working-on-bit-datatype
- springBoot 项目GET请求包含[]报400错误解决方法。
lynn-66
tomcatGETY请求包特殊字符javahttpshttptomcatspring
网上好多方法试了都不行,最后解决了。tomcat下配置文件server.xml添加relaxedQueryChars="[,]"
- JavawebJavaServer Pages Standard Tag Library知识点
一朵忧伤的蔷薇
pythonjava开发语言
JavaWeb开发中,JSTL(JavaServerPagesStandardTagLibrary)、EL(ExpressionLanguage)、Cookie和Session是非常重要的组件。以下是这些知识点的总结:1.JSTL标签库JSTL是JavaServerPages的一种标准标签库,旨在简化JSP页面的开发。它通过提供预定义的标签,来实现常见任务,如条件判断、循环处理、国际化等。使用标签
- 鸿蒙初学者学习手册(HarmonyOSNext_API14)_UIContext(@ohos.arkui.UIContext (UIContext))
余多多_zZ
学习harmonyos华为笔记
前言Context是鸿蒙中及其重要的Api包括了非常多的接口和功能,而且在官方文档中也是优先推荐使用Context中的接口在Stage模型中基本介绍1.UI实例与窗口的一一关联在Stage模型中,WindowStage或Window是用于管理窗口的类,它们通过loadContent接口加载页面内容。当调用loadContent时,系统会创建一个UI实例,这个实例是页面内容的具体表现形式,包括布局、
- Burp Suite 的安装、证书安装导入及配置代理
He_Donglin
学习小结web安全
一、BP安装1、在bp官方网站下载bp专业版链接:https://pan.baidu.com/s/1QQPT7yT3D88FEBt7XmtcOA提取码:w7hq2、安装java环境进入“20230304_BurpSuite_pro_v2023.2.2\20230304_BurpSuite_pro_v2023.2.2\javajdk17“文件下,双击运行”jdk-17.0.4_windows-x64
- 路由器配置DHCP服务器
执笔忆长安
网络网络协议负载均衡
文章目录前言1.DHCP的优点2.DHCP的使用3.DHCP的工作原理4.dhcp服务器实验总结前言DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为WindowsServer的一个服务组件不会被系统自动安装,还需要管理员手动安装并进行必要的配置。1.DHCP的优点1.简化
- Blender布料模拟:衣物与织物_2024-07-15_10-44-29.Tex
chenjj4003
游戏开发blender材质3dsmaxvr贴图
Blender布料模拟:衣物与织物Blender基础设置安装与配置Blender安装Blender访问Blender官方网站下载适合您操作系统的版本。下载完成后,根据您的系统(Windows,macOS,Linux)进行安装。Windows:双击下载的.exe文件,按照提示完成安装。macOS:双击下载的.dmg文件,将Blender拖入您的应用程序文件夹。Linux:解压下载的.tar.xz文件
- 【漏洞复现】泛微OA E-Office /iweboffice/officeserver.php 多个参数存在任意文件读取漏洞
0x0000001
漏洞复现php开发语言网络安全web安全渗透测试网络安全
免责声明:本文旨在提供有关特定漏洞的信息,以帮助用户了解潜在风险。发布此信息旨在促进网络安全意识和技术进步,并非出于恶意。读者应理解,利用本文提到的漏洞或进行相关测试可能违反法律或服务协议。未经授权访问系统、网络或应用程序可能导致法律责任或严重后果。作者对读者基于本文内容的行为不承担责任。读者在使用信息时必须遵守适用法律法规和服务协议,独自承担所有风险和责任。如有侵权,请联系删除。漏洞描述泛微OA
- 宝塔面板建立新的网站无法访问解决办法
易天法地
linuxapache
1.进入apache配置修改,添加端口listen2.下滑添加ServerName如图设置,保存后重启apache即可
- WebSocket JAVA客户端和服务端 传送文件DEMO
易天法地
JAVAwebsocketjava网络
Server端WebSocketServer.java用于启动Server服务importcn.hutool.core.bean.BeanUtil;importcn.hutool.json.JSONUtil;importorg.slf4j.Logger;importorg.slf4j.LoggerFactory;importorg.springframework.stereotype.Compon
- 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