- 突破网络壁垒:实现 Mac SSH 访问 Windows WSL Ubuntu 的最佳实践20250301
Narutolxy
技术干货分享网络macosssh
突破网络壁垒:实现MacSSH访问WindowsWSLUbuntu的最佳实践背景与痛点在现代开发环境中,开发者通常会面临不同操作系统之间的协同工作。例如:主要开发环境位于Windows的WSLUbuntu子系统需要从局域网内的Mac设备进行远程访问和管理由于WSL默认采用NAT网络隔离(172.x.x.x网段),导致:无法直接从局域网设备(如192.168.x.x)访问WSL环境每次WSL重启时可
- python docx document 输出word 设置字体
南阳范宏云
pythonword开发语言
python相关学习资料:一张图生成指定动作的动态视频,MagicAnimate本地部署搭建私人助理大模型需要什么环境?GitLabCI/CD-pending的原因使用Python-docx库设置Word文档字体Python-docx是一个用于创建和更新MicrosoftWord文档的Python库。它允许我们以编程方式操作Word文档,包括设置字体样式。本文将介绍如何使用Python-docx库
- 2025前端技能
家里有只小肥猫
前端
前端开发是现代Web开发中非常重要的一部分,涉及众多技术和工具。以下是一些在前端开发工作中常见的需求和技术:1.技术基础HTML/CSS:构建页面结构和样式。JavaScript:实现交互逻辑和动态功能。ES6+:使用现代JavaScript语法和特性。DOM操作:操作网页元素和事件处理。浏览器兼容性:确保代码在不同浏览器中正常运行。跨设备适配:确保页面在不同设备(PC、手机、平板)上正常显示。2
- 安装pycrypto报错
名难取aaa
bugWindows我的一生之敌pip
报错信息解决方法网上有两种解决方案:pycrypto安装出错的问题我选择第二种(更为简单):在安装MicrosoftVisualStudio的目录下(或者目录附近),找到..\VC\Tools\MSVC\14.10.25017\include\stdint.h并且拷贝到..\WindowsKits\10\Include\10.0.15063.0\ucrtPS:建议用everything(一个软件)
- 大白话解释认证JWT是什么 有什么用 怎么用
心心祥蓉
JWT
JWT是什么?JWT(JSONWebToken)就像一张“加密的电子通行证”,用来证明你是谁、能干什么。它由三段字符串拼接而成(比如xxx.yyy.zzz),每段对应不同的信息:头(Header):说明加密算法类型,比如“用HS256算法签名”。身体(Payload):存用户身份信息(如用户ID、角色)、有效期等,类似快递单上的收件人和地址。签名(Signature):用密钥对前两段内容加密生成的
- SQLServer第一章 - 初识SQLServer 头哥 EDUCODER
海无极
sqlserver数据库
整活版:不想整活的看下面的极速版在第一题创建实验环境后,下面的一次复制一行进去后回车,然后所有题直接点提交就行了sqlcmd-Slocalhost-Usa-P''createdatabaseTestDbcreatedatabaseMyDbgouseTestDbCREATETABLEt_emp(idINT,nameVARCHAR(32),deptIdINT,salaryFLOAT)gouseMyDb
- MFC: DeviceIoControl 通过API访问设备驱动程序
kkkmmmjjjj
MFC串口通信MFC串口通信
转载:http://m.blog.csdn.net/article/details?id=21602051DeviceIoControl的其实和ReadFile和WriteFile是一样的,不过这个功能更强,一次交互能够输入数据,也可以输出数据.DeviceIoControl内部创建的IRP是IRP_MJ_DEVICE_CONTROL类型的IRP,然后操作系统会将这个IRP转发给驱动程序的分发函数
- XSL是指可扩展样式表语言 (EXtensible Stylesheet Language)
万事俱备,就差一个程序员了
XSLXSL是指可扩展样式表语言(EXtensibleStylesheetLanguage),是一种用于以可读格式呈现XML数据的语言。目录简介语法XSL是否与XML相同用途应用简介XSL之于XML,就像CSS之于HTML。它是指可扩展样式表语言(EXtensibleStylesheetLanguage)。这是一种用于以可读格式呈现XML数据的语言。xsl是一种标记语言,表示如何将xml文档的内容
- Sophos Firewall (SFOS) v21 MR1 - 下一代防火墙
防火墙
SophosFirewall(SFOS)v21MR1-下一代防火墙SophosFirewall|Next-genfirewall请访问原文链接:https://sysin.org/blog/sfos-21/查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgSophosFirewall远不止是防火墙通过我们的集成和可扩展平台巩固您的网络保护,来保护您的混合网络世界。您能得到的:自动响
- ValueError: Tensor conversion requested dtype int64 for Tensor with dtype float64: ‘Tensor(“loss/a
初识-CV
机器学习kerasKL散度相对熵intTensorFlowkeras
用keras以TensorFlow作为后端重写相对熵函数,报错。。。defKL(y_true,y_pred):weights=K.sum(K.cast(K.argmax(y_true,axis=1)*K.log(K.argmax(y_true,axis=1)/K.argmax(y_pred,axis=1)),dtype='float32'))returnweights*losses.categor
- MySQL数据库【从入门到精通】:第十二篇——MySQL数据类型详解【含代码示例】
DTcode7
sql数据库相关数据库mysqlSQL数据库开发sql
MySQL数据库【从入门到精通】:第十二篇——MySQL数据类型详解【含代码示例】一、数值类型1.1整型(IntegerTypes)示例一:创建一个使用整型的数据表二、浮点数和定点数2.1浮点数(Floating-PointTypes)2.2定点数(Fixed-PointTypes)示例二:创建使用浮点数和定点数的数据表三、字符串类型3.1VARCHAR3.2CHAR3.3TEXT示例三:创建使用
- QT——c++界面编程库
孩之
qtc++开发语言
非界面编程QT编译的时候,依赖于.pro配置文件:SOURCES:所有需要参与编译的.cpp源文件HEADERS:所有需要参与编译的.h头文件QT:所有需要参与编译的QT函数库.pro文件一旦修改,注意需要键盘按ctrl+s才能加载最新的配置文件标准输出:QDebug类#includeqDebug()#include#include#include#include#includeintmain(i
- 【C++】深入理解C++虚函数与纯虚函数
TsuanS
c++开发语言
本文由简悦SimpRead转码,原文地址blog.csdn.net文章目录一、虚函数(VirtualFunction)1.1定义和作用1.2实现原理1.3示例代码1.4虚函数的重写定义规则注意事项示例1.5基类和派生类的虚函数表**示例理解**二、纯虚函数(PureVirtualFunction)2.1定义和作用2.2示例代码三、总结在C++面向对象编程中,多态性是其三大特性之一(封装、继承和多态
- 嵌入式Qt的动平衡仪完整设计方案
m0_55576290
Balanceqt网络开发语言
一、系统架构总览硬件层硬件接口层数据采集模块动平衡算法模块数据存储模块UI模块通信模块系统服务层所有模块二、硬件接口层实现1.传感器驱动抽象//drivers/sensor_driver.hclassSensorDriver{public:virtualboolinit()=0;virtualQVectorreadData()=0;virtualboolcalibrate(floatbaseVal
- 聪明办法学python第4次笔记
weixin_44811994
笔记
目录变量Variables新值的数据类型不必与旧值相同变量是一个标签变量命名规则:元组的解包函数Functions`header`用于定义函数的**名称**和**参数**`body`包含函数执行的语句(`statement`)我们使用**函数名**来调用函数函数可以有任意多个参数,也可以一个都没有参数的数量要匹配语句与表达式StatementsandExpressions表达式定义:Anexpre
- Microsoft JDBC 驱动 vs jTDS 驱动对比指南
一杯小周
sqlserver
MicrosoftJDBC驱动vsjTDS驱动对比指南一、支持与维护方1.MSSQLJDBCDriver维护方:Microsoft官方维护更新频率:持续更新,支持最新SQLServer功能(如AzureSQL、AlwaysEncrypted)兼容性:专为SQLServer2012+设计,支持JDBC4.2+2.jTDS驱动维护方:开源社区(最后重大更新于2014年)适用场景:兼容旧版SQLServ
- 前端面试100问!!
一只松
javascriptes6
面试造火箭,工作拧螺丝!在技术圈毕竟只有百分之一的人能进入BAT,百分之九九的小伙伴只能在普通公司做这普通的事情,厌烦哪些标题党,我们抛开那些高大上的台词,回归到面试的本质。本课程帮助小伙伴们快速梳理知识,不会涉及到具体的很细节的知识点,关注面试本身。公司一般会从以下5个方面考察一个人的能力,本课程的100问是总结了最近2-3年常问的面试题,适合初中级前端工程师。1、HTML(5)和CSS3方面1
- java.lang.NoSuchMethodError: org.elasticsearch.client.RestClient.performRequest(Ljava/lang/String;Lj
频繁输入,积极输出
eses
es创建索引时,报:java.lang.NoSuchMethodError:org.elasticsearch.client.RestClient.performRequest(Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Lorg/apache/http/HttpEntity;[Lorg/apache/http/Header;)Lorg/e
- Python-playwright:一款强大的UI自动化工具、新兴爬虫利器
m0_74824054
面试学习路线阿里巴巴pythonui自动化
点击名片关注阿尘blog,一起学习,一起成长本文主要分享由微软开发的实现WebUI自动化测试工具Playwright库,相比于之前学习过selenium库,playwright对于编写自动化代码绝对是更轻松了,因为它支持脚本录制,如果只求简单点可以不用写一行代码就能够实现自动化,而且playwright有许多强大的api,很多功能比起selenium都轻松简单,好了话不多说,开启正文~playwr
- PHP 5 Math 函数
宇哥资料
phpphp开发语言
PHPMath简介Math函数能处理integer和float范围内的值。安装PHPMath函数是PHP核心的组成部分。无需安装即可使用这些函数。PHP5Math函数函数描述abs()返回一个数的绝对值。acos()返回一个数的反余弦。acosh()返回一个数的反双曲余弦。asin()返回一个数的反正弦。asinh()返回一个数的反双曲正弦。atan()返回一个数的反正切。atan2()返回两个变
- STM32之按键检测
最爱是生活
stm32嵌入式硬件单片机
KEY是按键,接PE2口,LED灯,接PC0口,使用STMF103ZET6,则用按键控制小灯亮灭的标准库程序如下:#include"led.h"//Deviceheader#include"key.h"#include"SysTick.h"intmain(){SysTick_Init(72);Led_Init();Key_Init();while(1){if(GPIO_ReadInputDataB
- 深入探索CSS:从基础到高级,解锁网页设计的无限可能
斯~内克
csscss前端
CSS(层叠样式表)是现代网页设计中不可或缺的一部分,它不仅决定了网页的外观和风格,还极大地影响了用户体验和交互效果。从简单的文本样式到复杂的布局设计,CSS的灵活性和强大功能使其成为前端开发的核心技术之一。本文将从CSS的基础概念出发,逐步深入到高级应用,带你全面了解CSS的魅力和实用性。一、CSS简介:网页设计的基石CSS是一种用于描述HTML或XML文档外观和格式的样式表语言。它的主要作用是
- 终极指南:styled-components 深度解析与实战对比
ox0080
#北漂+滴滴出行WebVIP激励styled-comCSS
一、CSS-in-JS革命:现代Web样式新范式1.1传统CSS的三大痛点全局污染:class命名冲突导致"样式战争"状态隔离:动态样式需要操作DOM类名架构割裂:样式文件与组件逻辑分离//传统CSS的典型问题实例//Button.css.btn{background:blue;}//全局作用域//App.css.btn{padding:10px;}//意外覆盖1.2CSS-in-JS的核心优势真
- win7安装pycharm并永久激活
上官-王野
Python应用pycharm
一、安装pycharmhttp://www.jetbrains.com/pycharm/安装到目录D:\tools\PyCharm2019.2.1二、激活pycharmhttps://blog.csdn.net/qq_39429714/article/details/89401292
- 前端必知必会-Vue动画Animations-Transition ‘name‘ 属性
编程岁月
前端vue.jsjavascript
文章目录Transition'name'属性Transition‘name’属性如果您有多个组件,但您希望至少一个组件具有不同的动画,则需要为组件指定不同的名称以区分它们。我们可以使用name属性选择组件的名称,这也会更改过渡类的名称,以便我们可以为该组件设置不同的CSS动画规则。如果过渡名称属性值设置为‘swirl’,则自动可用的类现在将以‘swirl-’而不是‘v-’开头:swirl-ente
- Microsoft.Office.Interop.Excel 的简单操作
中游鱼
OfficeC#数据处理excelInterop.ExcelExcel读写
Microsoft.Office.Interop.Excel的简单操作1、安装Microsoft.Office.Interop.Excel2、声明引用Microsoft.Office.Interop.Excel3、简单的新建EXCEL操作代码4、将DataGridView表数据写到EXCEL操作代码5、将EXCEL表数据读取到C#数据表DataTable操作代码1、安装Microsoft.Offi
- java计算机毕业设计企业销售管理系统源代码+数据库+系统+lw文档
今晚的月亮真好看
java开发语言
java计算机毕业设计企业销售管理系统源代码+数据库+系统+lw文档java计算机毕业设计企业销售管理系统源代码+数据库+系统+lw文档本源码技术栈:项目架构:B/S架构开发语言:Java语言开发软件:ideaeclipse前端技术:Layui、HTML、CSS、JS、JQuery等技术后端技术:JAVA运行环境:Win10、JDK1.8数据库:MySQL5.7/8.0源码地址:https://p
- 用idea创建低版本springboot2.X的项目
詹皇wm
问题总结intellij-ideajava
文章目录我的环境:创建项目:进入创建项目页面:进入Springboot版本选择和添加依赖页面进入项目打开pom.xml*补充*_本文章主要是对于现在idea配置大部分都是自带SpringBoot3.X,怎么创建低版本springboo
- HTML---css选择器
lh_freak
htmlcss前端
CSS指层叠样式表,是一种用来为结构化文档(如HTML文档或XML应用)添加样式(字体、间距和颜色等)的计算机语言,CSS文件扩展名为.css。使用CSS我们可以大大提升网页开发的工作效率!插入样式表的方法有三种:外部样式(Externalstylesheet)内部样式(Internalstylesheet)内联样式(Inlinestyle)内联样式(行内样式)hello样式直接写入到本元素标签中
- 【go语言】复杂数据类型——切片Slice
2302_79952574
golanggolang学习开发语言
1.理解切片Slice(1)切片是什么?切片是数组的一个引用,因此是引用类型。slice通过内部指针和相关属性引用数组片段,以实现变长方案。切片Slice包含三个部分:指向底层数组的指针。切片的长度(len):表示切片当前可见的元素个数。切片的容量(cap):表示从切片起始位置到底层数组末尾的最大可用元素数量。(2)内存布局Go的切片在内存中的结构可以用以下类型表示:typeSliceHeader
- 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