- 无铅压电陶瓷研究进展:技术突破与产业升级路径
莱歌数字
数字化转型#职场经验#结构热设计科技热设计CAE散热能源
作者简介:科技自媒体优质创作者个人主页:莱歌数字-CSDN博客公众号:莱歌数字个人微信:yanshanYH211、985硕士,职场15年+从事结构设计、热设计、售前、产品设计、项目管理等工作,涉足消费电子、新能源、医疗设备、制药信息化、核工业等领域涵盖新能源车载与非车载系统、医疗设备软硬件、智能工厂等业务,带领团队进行多个0-1的产品开发,并推广到多个企业客户现场落地实施。专题课程Flotherm
- Pthon httpx 使用代理下载文件(qbit)
前言技术栈Python3.11.8httpx0.28.1示例代码#encoding:utf-8#author:qbit#date:2025-06-30#summary:httpx使用代理下载文件importhttpxproxy='http://127.0.0.1:8081'defDownFile(url,file):withopen(file,'wb')asf:withhttpx.stream('
- 解决在Nuxt3+naiveUi中打包出现vueuc导入方式问题报错
张苹果博客
前端
在nuxt3+naiveui项目中打包出现vueuc导入方式问题报错,导致页面访问500。错误描述[nuxt][requesterror][unhandled][500]Namedexport'VBinder'notfound.Therequestedmodule'vueuc'isaCommonJSmodule,whichmaynotsupportallmodule.exportsasnamede
- DeepSeek:AI驱动的效率革命与实战案例解
weixin_45788582
人工智能aiDeepSeek
在人工智能技术的浪潮中,DeepSeek作为一款专注实现AGI(通用人工智能)的先锋工具,正通过其强大的自然语言处理(NLP)与分布式计算能力,重新定义高效办公的边界。以下通过技术解析与实战案例,展现DeepSeek如何赋能个人与企业,开启职场效率革命。一、技术革新:DeepSeek的核心竞争力深度学习赋能DeepSeek的技术架构基于BERT、Transformer等先进深度学习模型,通过构建复
- Redisson看门狗机制:分布式锁的可靠守护者
小韩学长yyds
Redisson分布式Redisson
个人主页:小韩学长yyds-CSDN博客⛺️欢迎关注:点赞留言收藏箴言:拥有耐心才是生活的关键目录一、引言二、Redisson简介三、看门狗机制原理剖析3.1自动续期核心逻辑3.2锁释放与取消续期3.3核心源码深度解读3.3.1scheduleExpirationRenewal方法3.3.2renewExpiration方法3.3.3cancelExpirationRenewal方法四、应用场景与
- 人名分类器(RNN案例)
Turbo_O.
rnn深度学习人工智能
案例介绍:人名分类案例是多分类问题,根据人名预测属于哪个国家人名->x,国家->y监督学习,历史数据中已知y案例步骤:1.数据预处理获取常用字符以及国家类别#导入torch工具fromcProfileimportlabelimporttorch#导入nn准备构建模型importtorch.nnasnnimporttorch.optimasoptimfromjax.experimental.rnni
- 使用datafusion和tpchgen-rs进行完整的TPCH 22个查询的基准测试
l1t
数据库编程语言软件工程rustgithubdatabase
1.从源码编译bench二进制文件。下载datafusion源码,解压到目录,比如/par/dafu,cd/par/dafu/benchmarksexportCARGO_INCREMENTAL=1exportPATH=/par:/par/mold240/bin:$PATH因为mold默认使用并行编译,而这些二进制文件很大,如果出现资源不足情况,就会编译失败:(signal:9,SIGKILL:ki
- 蓝队溯源反制一键利用工具
网络安全进阶
渗透测试工具web安全渗透测试网络安全渗透工具
蓝队利器、溯源反制、NPS漏洞利用、NPSexp、NPSpoc、Burp插件、一键利用最近做攻防演练发现了很多内网穿透的工具,其中最多的就是nps,红队老哥好像还挺喜欢这个的,真的是多,每天导出攻击IP,浅浅扫一下端口,基本都能发现这个nps。贼多NPS存在一个身份验证的缺陷,无需登录,直接进后台,后台功能点全都可以用。具体利用是伪造两个参数auth_key、timestamp。但是这俩参数的生命
- antd Table組件,实现三次表格嵌套;
烟雨-yaya
react.jsjavascript前端
文章目录概要示例代码技术细节小结概要本次学习到使用antd里table组件实现三级表格嵌套;父级点击+号出现子表;子级点击+号出现孙表;示例table表格录制代码importReact,{useEffect,useState,useMemo}from"react";import{Table,Divider}from"antd";constMultiLevelTable=()=>{const[exp
- CNN-LSTM神经网络多输入单输出回归预测【MATLAB】
沅_Yuan
炼丹师神经网络cnnlstm
1CNN(卷积神经网络)部分作用:特征提取:CNN主要用于从输入数据中提取空间特征。它能够处理图像、视频帧或其他形式的空间数据。组成部分:卷积层:使用卷积核对输入数据进行卷积操作,生成特征图。激活函数:通常使用ReLU(线性整流单元)激活函数,增加非线性。池化层:通过最大池化(MaxPooling)或平均池化(AveragePooling),减少特征图的尺寸,保留最重要的特征,减少计算复杂度。流程
- H265 Intro - General Concepts
fanbird2008
StreamMediaStreamMedia/HEVC/H265hevc
http://www.f265.org/f265/static/txt/h265_companion.htmlH.265CompanionPurposeandorganizationofthisdocumentThisdocumentcontainshuman-readableinformationaboutthemorecomplexpartsoftheH.265specification.It
- vue中导入导出Excel
前端小白一枚
笔记vue导入导出Excel
以下仅个人做笔记使用:简单版导出Excel1、安装依赖:cnpminstall--savexlsxfile-savercnpmiscript-loader-S2、下载两个js文件:Blob.js和Export2Excel.js(放在最后面)3、添加导出按钮:导出数据4、添加导出事件:derive(){this.$http.post('admin/service_list',{pre_page:th
- Parse error: syntax error, unexpected end of file in
jaray
PHP
Parseerror:syntaxerror,unexpectedendoffilein上面的这个错误提示是因为在写的代码中哪个大括号没有闭合!当死活也找不出问题所在的时候,就用那超级妙用的注释吧,一段一段的找,不行就一行一行的找。
- PHP错误:Parse error: syntax error
Wss0130
PHP学习
今天在写PHP程序的时候总是出现这样的错误:Parseerror:syntaxerror,unexpectedendoffilein*.phponline*,然后我就根据提示,找到那个文件,然后错误中总是提示最后一行出错,我找到最后一行发现是,晕的,这能有什么错误,找了好久才找到问题所在,拿来分享。出现这个错误的原因就是语法错误,肯定是PHP程序的书写不规范造成,我后来一条一条看才发现,原来是PH
- 错误处理
Bainily
问题一1.Parseerror:syntaxerror,unexpectedendoffileinE:\phpstudy\phpStudy\WWW\wish\view\index.htmlonline63**解析错误:语法错误,第63行的E:\phpstudy\phpStudy\WWW\wish\view\index.html中的文件意外结束问题原因:是因为在html文件中用PHP语法是php语法
- 战神授权后台报错:Parse error: syntax error, unexpected end of file in解决办法
qq_502428990
运维传奇手游架设
问题现象分析当您在战神授权后台遇到"Parseerror:syntaxerror,unexpectedendoffile"这个错误时,说明PHP解析器在解析脚本文件时遇到了意外结束的情况。这种错误通常发生在PHP代码结构不完整时,比如缺少闭合的大括号、分号或者PHP结束标记不完整等。错误原因深度解析这个特定错误的核心原因是PHP的short_open_tag配置问题。PHP支持两种形式的开始标记:
- 半导体FAB中的服务器硬件故障监控与预防全方案:从预警到零宕机实战
爱吃青菜的大力水手
服务器运维半导体FAB运维IT运维
服务器硬件故障监控与预防全方案:从预警到零宕机实战关键词:SMART监控RAID预警IPMI传感器性能基线PrometheusZabbix高可用架构一、硬件故障前的7大预警信号(附关联工具)故障类型关键指标监控工具预警阈值磁盘故障Reallocated_Sector_Countsmartctl+smartd>0立即告警Current_Pending_SectorPrometheus+NodeExp
- AI对话导出工具 (AI Chat Exporter)——支持 ChatGPT, Grok 和 Gemini 平台
ALGORITHM LOL
人工智能chatgpt
AI对话导出工具(AIChatExporter)轻松将AI对话导出为标准Markdown格式支持ChatGPT,Grok和Gemini平台相关代码已开源至Github欢迎Star✨功能特点多平台支持:同时支持ChatGPT,Grok和Gemini三大AI平台完整内容保留:精确导出所有对话内容,包括代码块、数学公式、链接和格式化文本标准Markdown格式:输出符合标准的Markdown格式,确保最
- CentOS网络配置与管理完全指南
Sally璐璐
运维运维centos
1.网络状态查看与诊断1.1ifconfig命令(传统方式)#安装net-tools(CentOS7/8默认可能未安装)sudoyuminstallnet-tools-y#基础查看命令ifconfig#显示所有接口的IP、MAC、收发包统计等完整信息ifconfigeth0#查看eth0网卡的详细状态,包括:#-RX/TXpackets:收发包数量#-errors/dropped:错误和丢包统计#
- ss928v100模型的导出、量化和转换
yunken28
python开发语言
1、yolov8导出为onnxfromultralyticsimportYOLOmodel=YOLO("./best.pt")model.export(format="onnx",imgsz=640,dynamic=False,simplify=True,opset=11,batch=1,half=False)以下是model.export()方法各参数的详细解释:format="onnx"指
- 浏览器存储机制解析:Cookie vs localStorage vs sessionStorage
neon1204
计算机|网络计算机网络缓存
全面对比:cookie、localStorage和sessionStorage1.Cookie核心作用:用于浏览器和服务器通信(如身份验证)存储大小:最多4KB生命周期:可设置过期时间(通过Expires或Max-Age)未设置则随浏览器会话结束失效访问方式:读/写:document.cookie(字符串形式)修改需手动字符串拼接通信特性:每次HTTP请求自动携带(通过请求头)增加网络负担安全相关
- Oracle 导入导出 dmp 数据文件实战
dazhong2012
数据库oracle数据库
一、DMP文件基础知识1.DMP文件定义DMP(DataPumpDumpFile)是Oracle数据库专用的二进制格式文件,由expdp/impdp或旧版exp/imp工具生成。它包含数据库对象的元数据(表结构、索引等)和实际数据,是数据备份、迁移和恢复的核心载体。2.DMP文件结构文件头:记录Oracle版本、字符集、导出时间等元信息。数据段:存储表数据,按数据块组织,支持并行读写。索引段:加速
- MySQL之全场景常用工具链
AA-代码批发V哥
MySQLmysql数据库运维
MySQL之全场景常用工具链一、基础连接与客户端工具1.1mysql命令行客户端1.2MySQLWorkbench:官方可视化1.3NavicatPremium二、管理与开发工具2.1phpMyAdmin:Web端管理首选2.2HeidiSQL:轻量Windows客户端三、性能优化工具3.1EXPLAIN:查询优化3.2SHOWPROFILE:细粒度性能分析3.3慢查询日志:捕获性能痛点四、备份与
- 【ifconfig 命令用于查看的网络接口信息说明】
qq2108462953
编程笔记vimubuntu
ifconfig命令用于查看的网络接口信息说明提示:本文是在Ubuntu系统上测试网络接口信息6:~$ifconfigen2s0f0:flags=4099mtu1500etherf8:e2:1e:63:19:61txqueuelen1000(以太网)RXpackets100bytes1000(0.0B)RXerrors1dropped1overruns1frame1TXpackets0bytes0
- 7个国产操作系统,你都熟悉吗?
wljslmz
网络技术国产系统
在全球科技竞争加剧的背景下,操作系统作为信息产业的核心“灵魂”,其重要性不言而喻。长期以来,Windows、macOS和Android等国外操作系统主导着全球市场,但它们在某些场景下的封闭性和潜在安全风险,让中国开始加速自主操作系统的研发。尤其是2014年WindowsXP停止支持和2020年Windows7停止服务后,国内对自主操作系统的需求进一步凸显。据统计,2025年中国操作系统市场规模预计
- 大数据智能风控核心:模型
johnny233
读书笔记大数据
概述模型线性判别分析方法,SirRonaldFisher最早提出模型评分的概念。个人FICO模型信用分。巴塞尔委员会发布巴塞尔Ⅱ协议,推出内部评级法(InternalRatingBasedApproach,IRB)。IRB综合考虑客户评级和债项评级,通过违约概率(ProbabilityofDefault,PD)、违约损失率(LossGivenDefault,LGD)、违约风险暴露(Exposure
- landsat卫星遥感影像下载、处理教程
一条破秋裤
个人笔记笔记
1.landsat数据下载USGS网址:EarthExplorer参考链接:USGS下载遥感影像——以Landsat影像下载为例_usgs怎么下载遥感影像-CSDN博客L1TP数据进行了几何校正和辐射校正,L2SP数据在此基础上,进一步处理后的数据,通常包括地表反射率和其他相关的地表特征信息。但是L1和L2的选择需要根据实际需求。这里我们选择下载landsat8-9L1数据目前是可以直接在浏览器下
- k8s中topologyKey 的作用
容器云
容器云kubernetes容器云原生
spec:affinity:nodeAffinity:requiredDuringSchedulingIgnoredDuringExecution:nodeSelectorTerms:-matchExpressions:-key:rcs-msg-notify-prodoperator:Invalues:-'true'podAffinity:requiredDuringSchedulingIgnor
- npm 安装自定义组件的时候报错 Unsupported URL Type "workspace:": workspace:^如何解决
Paula-柒月拾
npm前端vue.jsnode.jsjavascript
这个错误信息提示你在npm命令中使用了一个不支持的URL类型"workspace:".在npm中,"workspace:"前缀用于表示当前的工作空间中的某个软件包。通常,在使用npm命令安装软件包时,你需要提供软件包的名称或者软件包的发布地址(例如,npminstallexpress或者npminstallhttps://github.com/expressjs/express)。如果你在使用"w
- vue中css使用data中的变量
console.log( )
#vuevue.jscssjavascript
封装一个ui组件,组件的样式一般是多种多样的我们可以通过组件传值的方式将ui属性传递给组件,但是我们属性是在js中可以拿到,vue3之前css是无法直接获取的(vue3中已经可以直接获取,可以去学习一下)通过vars那么在vue2中,我们要借助setProperty函数写一个简单的例子helloworldexportdefault{data(){return{color:'red'}},mount
- 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