- Java实现SQLite数据库克隆
行云斡
Java实战演练数据库javasqlite
Java实现SQLite数据库克隆题目要求过程整理分步实现完整代码改进空间转载请注明出处题目要求Writeaprogram(inJavaandusingJDBC)thatclonesaSQLitedatabaseandproducesatextual“backup”ofthecontents.ThistextualbackupshouldconsistofSQLstatementsthatwill
- JAVA学习-类型信息.动态代理
守护者170
java学习java学习开发语言
在Java中,动态代理是一种通过在运行时生成代理对象来拦截对目标对象的访问的技术。Java中的动态代理基于反射机制,利用反射生成代理类来实现对目标对象的代理。一、Java中的动态代理主要有两种方式:基于接口的动态代理和基于类的动态代理。它们的特点如下:1.基于接口的动态代理(JDK动态代理):基于接口的动态代理要求目标对象实现一个或多个接口。JDK动态代理使用'java.lang.reflect.
- Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类
有只程序猿
Java黑皮书课后题java
Java黑皮书课后题第11章:11.2(PersonStudentEmployeeFacultyStaff类)题目缺陷UML图代码Test02_MyDate.java:用于参考的MyDateTest02_Person.java:Person类Test02_Student.java:Student类Test02_Employee.java:Employee类Test02_Faculty.java:F
- 2020-10-09
weixin_45660257
笔记
java学习集合的目标1.会使用集合存储数据2.会遍历集合,把数据取出来3.掌握每种集合的特性集合框架的学习方法方式1.学习顶层:学习顶层接口,抽象类中共性的方法,所有的子类创建对象使用Collection接口定义的是所有的单列集合中共性的方法所有的单列集合都可以使用共性的方法没有带索引的方法继承:子类共性抽取形成父类(接口)List接口1.有序的集合(存储和取出元素顺序相同)2.允许存储重复的元
- android 串口通信代码
weixin_44693887
移动开发androidjava开发语言androidstudio
以下是在Android平台上实现串口通信的代码示例。要实现串口通信,需要先创建一个类来处理串口通信。下面是一个名为SerialPortHelper的串口帮助类的示例:importandroid.content.Context;importandroid.os.Handler;importandroid.os.Message;importjava.io.FileDescriptor;importja
- Android RXjava实现子线程做耗时操作,比new Thread和handler更香
weixin_44693887
androidrxjava
1.首先是在build.gradle里面引用下面两个库implementation‘io.reactivex.rxjava2:rxandroid:2.0.1’implementation‘io.reactivex.rxjava2:rxjava:2.0.7’2.创建CompositeDisposable。CompositeDisposable是一个存放Disposable的集合,它是一个容器Comp
- android liveData更新UI数据
weixin_44693887
android
1.创建LiveData的javaBean对象publicclassModelBeanextendsLiveData{privateintflag;privateStringtime;privateStringbatteryStr;privateintbattery;//蓝牙连接状态privateintresourceId;privateBooleanisConnected;privateStri
- Java实现日志全链路追踪.精确到一次请求的全部流程
王会举
javalog4j
广大程序员在排除线上问题时,会经常遇见各种BUG.处理这些BUG的时候日志就格外的重要.只有完善的日志才能快速有效的定位问题.为了提高BUG处理效率.我决定在日志上面优化.实现每次请求有统一的id.通过id能获取当前接口的全链路流程走向.实现效果如下:一次查询即可找到所有关键信息.不再被多线程日志进行困扰了.1:日志打印框架log4j->logbacklogback是springboot默认自带的
- Java EE 8 API.chm下载
007MDT
java-ee
自己在官网下载的文档,然后用绿色版的easychm制作的chm文件,英文版支持索引查找下载链接自己在网上找了好久都是csdn积分下载的对我这种新人属实不友好,所以就自己动手了,如果有帮助到你记得评论支持一下噢
- JDK8 升级至 JDK17 打包问题分析
Resean0223
实际项目问题汇总日常问题解决javamavenjdk
一、概述近日为了满足客户需求将项目的jdk版本由原先的1.8升级至17,整个过程比较顺利,但是在maven打包时出现了报错。报错信息为:(程序包sun.security.util已在模块java.base中声明,但该模块未将它导出到未命名模块)二、问题分析引起该问的原因是因为从jdk9开始使用module模块化引用的结构,包时存在的,只是我们在打包时没有将该模块引入并声明。关于module模块化的
- 链接阿里云IoT Edge设备接入SDK Java版教程
郑微殉
链接阿里云IoTEdge设备接入SDKJava版教程linkedge-thing-access-sdk-javaLinkIoTEdge提供的设备接入驱动开发SDK(Java版本),帮助用户在LinkIoTEdge上快速开发自定义协议设备接入Java语言驱动。项目地址:https://gitcode.com/gh_mirrors/li/linkedge-thing-access-sdk-java1.
- 【课程设计】Java EE SSM 试卷管理系统
鱼弦
课程设计java-eejava
JavaEESSM试卷管理系统简介试卷管理系统是一个用于教育机构、培训中心等单位的在线考试和评估工具。该系统帮助教师管理考试题目、生成试卷,并将试卷导出为Word文档。应用使用场景学校与教育机构:用于日常测验、期中和期末考试。企业培训:用于员工技能测试和评估。在线教育平台:用于提供学生练习题和模拟考试。原理解释架构系统基于JavaEE开发,采用了Spring、SpringMVC和MyBatis(S
- AJAX 与 ASP:现代 Web 开发的关键技术
csbysj2020
开发语言
AJAX与ASP:现代Web开发的关键技术引言在当今的Web开发领域,AJAX(AsynchronousJavaScriptandXML)和ASP(ActiveServerPages)是两项至关重要的技术。AJAX允许网页在不重新加载整个页面的情况下,与服务器交换数据和更新部分网页内容。而ASP则是一种服务器端脚本环境,用于动态生成交互性网页。本文将深入探讨AJAX和ASP的技术细节、应用场景以及
- Java高级特性 - Java反射
Ssaty.
java开发语言java-ee
第1关:了解Class对象本关任务:实现获取Class对象的三种方式packagestep1;/***学员任务文件*/publicclassReflect_stu{publicstaticvoidmain(String[]args){System.out.println<
- Java 项目集成 DeepSeek,亮点项目(包成功)
代码星辰阁(公众号同名)
springboot编程springbootdeepseek人工智能java
获取DeepSeekAPI并搭建简易问答Java应用的完整步骤:“代码星辰阁”公众号有完整代码获取DeepSeekAPIKey访问DeepSeek官网:打开DeepSeek开放平台,点击右上角的“开放平台”。注册或登录账号:新注册账号通常会赠送一定数量的免费tokens。创建APIKey:在左侧菜单中点击APIKeys。点击“创建APIKey”,为APIKey命名(如“test”),然后创建。系统
- JAVA EE初阶 - 预备知识(一)
2025年一定要上岸
java-ee
一、管道在计算机编程和操作系统环境中,输入、输出和错误管道是用于在不同进程或程序之间传递数据和信息的重要机制,下面分别对它们进行详细介绍:输入管道(StandardInput,stdin)定义:输入管道是进程获取外部数据的通道。它允许一个进程从其他进程、用户输入设备(如键盘)或文件中接收数据。当一个进程启动时,操作系统通常会为其分配一个标准输入流,进程可以通过读取这个输入流来获取所需的数据。工作原
- 深入浅出:8种常见排序算法的效率对比与应用场景(JAVA)
技术小泽
排序算法算法数据结构java后端
5.归并排序归并排序是利用归并的思想实现的排序方法,该算法采用经典的分治策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之)。算法核心逻辑如下分割数组首先,把数组分成两半,然后分别对这两半继续进行分割,直到每一部分只有一个元素。每次分割都通过计算中间索引mid=(left+right)/2来进行。排序当数组
- jQuery.ajax
weixin_48357623
前端jqueryajax前端
下面是关于FetchAPI、umi-request、jQuery.ajax和axios的对比表格:FetchAPIumi-requestjQuery.ajaxaxios技术基础基于Promise的现代浏览器API基于fetch的封装,提供统一API和请求层治理原生JavaScript中的XMLHttpRequest封装基于Promise的HTTP客户端,封装XMLHttpRequest使用场景适用
- java数据结构 mobi_数据结构:Java语言描述(第2版) pdf epub mobi txt 下载
周佩茹
java数据结构mobi
数据结构:Java语言描述(第2版)pdfepubmobitxt下载图书介绍☆☆☆☆☆刘小晶,杜选,朱蓉,杜卫锋编下载链接在页面底部发表于2021-02-24类似图书点击查看全场最低价出版社:清华大学出版社ISBN:9787302389446版次:2商品编码:11678255品牌:清华大学包装:平装丛书名:21世纪高等学校规划教材·计算机科学与技术开本:16开出版时间:2015-04-01用纸:胶
- 数据结构java实验 刘小晶_清华大学出版社-图书详情-《数据结构实例解析与实验指导——Java语言描述》...
季退思
数据结构java实验刘小晶
本书是《数据结构——Java语言描述》(ISBN:9787302243236,清华大学出版社)的配套教学辅助用书,也是考研的复习用书。本书打破了传统的单一辅导书的编写形式,从整个课程能力培养和课程实践能力培养分析入手,以“重基础,求创新”为目标,针对基本数据结构和两种常用操作进行知识的归纳和提炼,对典型实例进行清晰的剖析,然后通过大量实例对知识进行巩固和应用。实验内容的安排由浅入深,层次分
- springboot+vue使用EasyCaptcha实现简单验证码
ueanaIU潇潇子
springbootvue.js图形验证码EasyCaptcha
一、实现效果springboot使用EasyCaptcha实现简单验证码,更多api和用法可以去github上查看EasyCaptcha:Java图形验证码,支持gif、中文、算术等类型,可用于JavaWeb、JavaSE等项目。二、实现步骤1、导入依赖com.github.whvcseeasy-captcha1.6.2org.openjdk.nashornnashorn-core15.4我使用的
- ✨JMH(Java Microbenchmark Harness)✨
魔镜前的帅比
java开发语言
JMH(JavaMicrobenchmarkHarness)是一个专门用于编写、运行和分析Java微基准测试的工具。它由OpenJDK团队开发,旨在提供精确的基准测试结果,避免常见的基准测试陷阱,如JVM的优化、即时编译(JIT)等影响。核心知识点基准测试的目的基准测试用于测量代码的性能,通常是在微秒或纳秒级别。它可以帮助开发者识别性能瓶颈,优化代码。JMH的特点精确性:JMH通过多次迭代和预热来
- java后端开发面试常问
躲在没风的地方
java面试题java面试spring
面试常问问题1spring相关(1)@Transactional失效的场景@Transactional注解默认只会回滚运行时异常(RuntimeException),如果方法中抛出了其他异常,则事务不会回滚(数据库数据仍然插入成功了)。@Transactional(rollbackFor=Exception.class)如果方法中有trycatch语句,并且抛出的异常的代码被try捕获,那么方法上
- Amaze UI web mobile 前端框架
iteye_20240
ui前端框架移动开发
目录结构index.html-空白HTML模板;blog.html-博客页面模板(预览);landing.html-LandingPage模板(预览);login.html-登录界面模板(预览);sidebar.html-带边栏的文章模板(预览);在app.css中编写CSS;在app.js中编写JavaScript;移动端首选Zepto,桌面端选jQuery,这应该是大多数开发者的共识。那对于跨
- Java中Long类型处理精度丢失问题
原冰洋
javabug
Long类型处理精度丢失问题描述后端给前端传一个long类型的数据,如果数据过大,前端js接收就会精度丢失,如果再传过来给后端,后端接收到的数据也是精度丢失的数据解决方案只需要将后端从传给前端的long类型的数据变成string类型就好了。1.提供对象转换器jacksonObjectMapper,基于jackson进行java对象到json数据的转换2.在webMvcConfig配置类中扩展Spr
- 后端Long类型19位返回前端丢失精度问题
19940719
JAVA
后端Long类型19位返回前端丢失精度问题问题原因:由于Long类型最大19位而JavaScript最大接收数字为16位,固存在精度丢失问题解决方案1.导入Maven依赖com.fasterxml.jackson.corejackson
- 【设计模式】【行为型模式】访问者模式(Visitor)
FLZJ_KL
设计模式设计模式访问者模式java
hi,我不是一名外包公司的员工,也不会偷吃茶水间的零食,我的梦想是能写高端CRUD2025本人正在沉淀中…博客更新速度++欢迎点赞、收藏、关注,跟上我的更新节奏当你的天空突然下了大雨,那是我在为你炸乌云文章目录一、入门什么是访问者模式?为什么需要访问者模式?怎么实现访问模式?二、访问者模式在源码中的运用ASM框架(Java字节码操作)三、总结访问者模式的优点访问者模式的缺点访问者模式的适用场景一、
- 【JavaScript】Day01
boy快快长大
前端javascript开发语言ecmascript
1.介绍1.1JS是什么一种运行在客户端(浏览器)的编程语言,实现人机交互效果。1.2作用网页特效(监听用户的一些行为让网页做出对应的反馈)表单验证(针对表单数据的合法性做出判断)数据交互(获取后台的数据,渲染到前端)服务端编程(node.js)1.3JS的组成ECMAScript:规定了JS基础的语法知识WebAPIs:DOM与BOMDOM:操作文档,比如对页面元素进行移动、大小、添加删除等操作
- DeepSeek接入Python,一般电脑也能飞速跑,确实可以封神了!
算法channel
python开发语言
你好,我是郭震今天这篇教程介绍:DeepSeep最新推理模型R1接入Python编程,在本地电脑从零搭建方法。1这样做有哪些好处?1)大模型在本地搭建,除了能够方便个人知识库管理,详见上一篇介绍,还能提效编程学习,比如Python,Java等,学编程就像学做事的思路和逻辑,挺重要也很有意思。2)DeepSeek最近开源了推理模型R1,开源免费,性能强劲,本文接入的正是DeepSeek的R1;Pyt
- 华为OD最新机试真题-最小的调整次数-C++-OD统一考试(E卷)
ai因思坦
华为odc++算法华为开发语言面试
最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客每一题都含有详细的解题思路和代码注释,精选c++、JAVA、Python三种语言解法。帮助每一位考生轻松、高效刷题。订阅后永久可看,发现新题及时跟新。题目描述:有一个特异性的双端队列,该队列可以从头部或尾部添加数据,但是只能从头部移出数据。小A依次执行2n个指令往队列中添加数据和移出数据。其
- 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