自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tianyaleixiaowu的专栏

世界上有10种人,一种懂2进制,一种不懂2进制

  • 博客(294)
  • 资源 (23)
  • 问答 (7)
  • 收藏
  • 关注

转载 4次优化,我把 Redis 性能 “压榨” 到极致!

本文转载自公众号https://mp.weixin.qq.com/s/y4q4Hb9A6xay3pAC_LBm5g我们有个这样的需求:每天每一个抢购商品只能买一次,并且全场抢购商品总购买次数不允许超过5次。那么,整个商品限购的流程大概如下图所示:那么,在每次购买成功商品成功后,发送的MQ大概是这样的(假设当前这笔订单有两件抢购商品):这条消息表示86000000000...

2020-03-19 12:04:17 3745 2

原创 手写中间件之——并行框架(4 相互依赖模型的建立)

建议学习时,打开代码https://gitee.com/tianyalei/asyncTool 对着代码看。上一篇主要讲了如何实现异步回调,简单回忆一下是如何实现的。java的future的get方法是同步阻塞的,无法达到任务完成后主动回调的目的。netty的future是可以做到回调的,通过addListener的方式,但是为什么addListener后就能回调了,也是通过封装执行单元和回...

2020-01-22 13:46:00 6047 23

原创 开源异步并行框架,完成任意的多线程编排、阻塞、等待、串并行结合、强弱依赖

本文首发于京东零售公众号,https://mp.weixin.qq.com/s/17OAAbCKQND-AjTdf43TGwnetty是一个经典的网络框架,提供了基于NIO、AIO的方式来完成少量线程支持海量用户请求连接的模型。netty里面充斥了大量的非阻塞回调模式,主要是靠Future/Promise异步模型来实现的。Future是java.util.concurrent.Future...

2020-01-14 19:34:56 3198

原创 手写中间件之——并行框架(3 异步回调如何实现)

上一篇主要讲了任务的编排该如何实现,包括串、并、串并结合。建议一定要手写个小demo去尝试各种基本组合。这一篇主要是讲该如何实现异步回调。如果之前有用过netty的应该知道,netty里大量充斥着“回调”,各种addListener,将各种耗时任务变成了异步带回调的模式。回调是个很有用的模式,譬如我的主线程执行过程中,要执行一个非常耗时的逻辑,自然我们会想到用异步的形式去完成这个耗时逻...

2020-01-07 10:04:23 4787 21

转载 Netty实现自定义协议

关于协议,使用最为广泛的是HTTP协议,但是在一些服务交互领域,其使用则相对较少,主要原因有三方面:HTTP协议会携带诸如header和cookie等信息,其本身对字节的利用率也较低,这使得HTTP协议比较臃肿,在承载相同信息的情况下,HTTP协议将需要发送更多的数据包; HTTP协议是基于TCP的短连接,其在每次请求和响应的时候都需要进行三次握手和四次挥手,由于服务的交互设计一般都要求能够...

2020-01-06 17:36:00 2735

原创 手写中间件之——并行框架(2 任务编排顺序如何选型和实现)

这一篇我们就要开始手写这个并行框架了。做任何一个项目,都要做的事情都是先定大框架,后拆解任务。那么这个并发框架,要完成上一篇讲的那些所有任务,该如何定大框架呢,如何选型呢?如果大家仔细看了上一篇文章,可以看到该框架的难点和重点,主要有两点,分别是任务的顺序编排和任务结果的回调。如何做任务顺序编排依次来看一下各个基本场景1 全串行这种是最简单的,依次串行即可。假如...

2020-01-03 17:39:03 5975 3

原创 手写中间件之——并行框架(1 并行框架的应用场景和需求)

我们为什么会需要一个带任务顺序编排的并行框架1 复杂的微服务系统间调用经常会有这样的调用场景:app(或web前端)调用后台的一个接口,该接口接到该请求后,需要调用其他多个微服务来获取数据,最终汇总一个最终结果返回给用户。譬如用户请求“我的订单”,后台在收到请求后,就需要去调用用户详情rpc、商品详情rpc、库存rpc、优惠券rpc等等很多个服务。有些服务是可以并行去请求的,但有些服务...

2020-01-02 11:28:58 13181 17

转载 使用 Reactor 进行反应式编程

反应式编程(Reactive Programming)这种新的编程范式越来越受到开发人员的欢迎。在 Java 社区中比较流行的是 RxJava 和 RxJava 2。本文要介绍的是另外一个新的反应式编程库 Reactor。反应式编程介绍反应式编程来源于数据流和变化的传播,意味着由底层的执行模型负责通过数据流来自动传播变化。比如求值一个简单的表达式 c=a+b,当 a 或者 b 的值发生变化...

2019-12-31 13:36:50 1258

原创 Java中使用etcd,包括基本的set、get、超时设置,watch监听等

etcd的使用文章。etcd来zookeeper类似,常用的主要有set,get,getPrefix:获取指定前缀的所有数据,grant:key的超时设置,watch:监听回调事件,watchPrefix:监听某个前缀的事件,keepAlive:为某个key设置自动续约、自动刷新过期时间。zk的大部分功能,etcd都有。但有一个,譬如虚拟节点,zk可以做到当客户端断开时,立马监听到,etc...

2019-12-12 16:32:15 9136 2

原创 redis探秘:选择合适的数据结构,减少80%的内存占用,这些点你get到了吗?

本文首发于京东零售平台公众号,https://mp.weixin.qq.com/s/uzuz7rqctQ-bjdRcf1tO9gredis作为目前最流行的nosql缓存数据库,凭借其优异的性能、丰富的数据结构已成为大部分场景下首选的缓存工具。由于redis是一个纯内存的数据库,在存放大量数据时,内存的占用将会非常可观。那么在一些场景下,通过选用合适的数据结构来存储,可以大幅减少内存的占用,...

2019-12-10 09:29:31 2050 2

转载 使用Retryer优雅地实现对Callable各种各样的重试调用

Runnable和Callable都是多线程编程中常用的接口,通常是通过实现该接口编写业务逻辑后,再由new Thread去发起线程调用。主要区别在于Runnable没有返回值,而Callable有返回值。下面就来看一个重试框架Retryer,针对Callable做的各种重试策略方法。 API 接口调用异常, 网络异常在我们日常开发中经常会遇到,这种情况下我们需要先重试几次调用才能将其标识...

2019-11-28 10:24:45 1873

转载 10G mysql binlog重放并传输到另一台服务器执行,阿里中间件大赛

转载自:https://tianchi.aliyun.com/forum/new_articleDetail.html?spm=5176.11165310.0.0.90a57f61Sy5xTQ&raceId=231600&postsId=2035这个冠军的方案确实赞,10G的mysql binlog重放并传输只用了2秒!总决赛冠军队伍 作死小分队 比赛攻略决赛答...

2019-11-26 17:02:13 2430

原创 分布式环境下对部分热数据(如redis热key,热请求)进行探测,并对探测结果及时同步到各个client实例的JVM内存的方案简述

可先阅读之前的这篇,有赞的热key探测及缓存方案。常见场景突发性的无法预先感知的热点数据请求,或者有阵发性明显热点数据的。譬如突然大量请求都命中了redis的某个分片,造成该redis卡顿,影响其他请求。热key特性如 goodsId=100,突发1万请求该key。譬如突然大量同一个用户的请求某一个或多个接口,呈现出攻击性访问的。热key特性如userId-99= /cart,/c...

2019-11-15 10:06:53 1170 1

原创 Java简单实现滑动窗口

由于最近有一个统计单位时间内某key的访问次数的需求,譬如每5秒访问了redis的某key超过100次,就取出该key单独处理。这样的单位时间统计,很明显我们都知道有个边界问题,譬如5秒内100次的限制。刚好前4.99秒访问都是0,最后0.01秒来了100次,5.01秒又来了100次。也就是访问有明显的毛刺情况出现,为了弱化这个毛刺情况,我们可以采用滑动窗口。滑动窗口滑动窗口的主要原理...

2019-11-01 17:28:52 15803 5

转载 有赞的redis热key探测及缓存到jvm内存框架方案

下面这篇文章来自于有赞的知识共享,总体设计还是不错的,但我对其中的一点比较存疑。就是将计算热点key的工作放在客户端这里。因为一个java实例,可能面临巨多的get请求,譬如请求的key数量较多,那么由客户端来记录这些key,并计算key的热度,是一个比较费力且吃内存的事。即便他限制了最大内存量,那可能会漏掉很多key。还有一种,譬如某个key非常热,但是请求分散到了N个实例里,显得单个实...

2019-10-29 10:50:10 2978 5

转载 高级开发必须理解的Java中SPI机制

本文通过探析JDK提供的,在开源项目中比较常用的Java SPI机制,希望给大家在实际开发实践、学习开源项目提供参考。1 SPI是什么SPI全称Service Provider Interface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。整体机制图如下:Java SPI 实际上是“基于接口的编程+策略模式+配置文件”组合实现的动态...

2019-10-25 15:25:13 591

原创 7 mysql事务(包括redo log,undo log,MVCC)及事务实现原理

之前写了几篇mysql存储原理的文章。6Innodb_buffer_pool5b+ tree和每个page存储结构4innodb文件系统基本结构(段、簇、页面)3innodb文件系统初步入门2表对象缓存1 连接层这一篇终于到事务了,事务大家都知道ACID概念,那么mysql是如何完成事务的呢?先来看结论——原子性:一次事务中的所有操作,要么全部完成...

2019-10-22 17:23:32 3057 8

原创 使用redis分布式锁高并发下QPS测试,单机一秒下1千个订单

前面一篇讲过并发下单时进行优化的一些策略,后来我写了代码进行了实测。关于redisson做分布式锁的代码在这篇文章。这里我来测试一下分布式锁的性能。简单的controllerpackage com.tianyalei.redislock.controller;import org.springframework.web.bind.annotation.RequestMapping...

2019-10-15 19:40:23 3670 2

原创 关于电商秒杀系统中防超卖、以及高性能下单的处理方案简述

秒杀抢购系统的成功平稳运行,有一些需要注意的知识点。1 高并发,以及刷接口等黑客请求对服务端的负载冲击2 高并发时带来的超卖,即商品数量的控制3 高负载下,下单的速度和成功率的保证4 其他以秒杀单品为例,如抢小米手机。解决方案探讨:第一步 限制前端发来的请求量譬如定在了周二10点开启抢购,那么在之前的一周时间内,都会有预约通知,或者普通的用户浏览。通过预约量、浏览量...

2019-10-12 19:42:14 7556

转载 分布式事务之Seata中间件原理及流程详细分析

转载自:https://blog.csdn.net/f4761/article/details/89077400背景在分布式系统中,分布式事务是一个必须要解决的问题,目前使用较多的是最终一致性方案。自年初阿里开源了Fescar(目前更名为Seata)后,该项目受到了极大的关注度。Seata以高性能和零侵入的方式为目标解决微服务领域的分布式事务难题,目前正处于快速迭代中,近期小目标是生产可用...

2019-10-08 20:19:23 3185

转载 深入浅出AQS之共享锁模式

搞清楚AQS独占锁的实现原理之后,再看共享锁的实现原理就会轻松很多。两种锁模式之间很多通用的地方本文只会简单说明一下,就不在赘述了,具体细节可以参考我的上篇文章深入浅出AQS之独占锁模式一、执行过程概述获取锁的过程:当线程调用acquireShared()申请获取锁资源时,如果成功,则进入临界区。 当获取锁失败时,则创建一个共享类型的节点并进入一个FIFO等待队列,然后被挂起等待唤醒...

2019-09-25 19:23:23 860

转载 深入浅出AQS之独占锁模式

AbstractQueuedSynchronizer(以下简称AQS)作为java.util.concurrent包的基础,它提供了一套完整的同步编程框架,开发人员只需要实现其中几个简单的方法就能自由的使用诸如独占,共享,条件队列等多种同步模式。我们常用的比如ReentrantLock,CountDownLatch等等基础类库都是基于AQS实现的,足以说明这套框架的强大之处。鉴于此,我们开发人员更...

2019-09-25 19:20:50 331 1

转载 SpringCloud从入门到进阶 ——单点部署Zuul的压力测试与调优(二)

内容  作为微服务架构系统的入口,毫无疑问,Zuul的并发性能直接决定了整个系统的并发性能。本文结合前几篇文章的内容,在云服务器中部署了包含Eureka Server,Zuul等组件的1.0版本的微服务架构,并进行单点部署Zuul的压力测试,对其并发性能一探究竟。环境说明  转载请说明出处:SpringCloud从入门到进阶(九)——单点部署Zuul的压力测试与调优(二)问...

2019-09-12 16:01:40 1208

转载 SpringCloud从入门到进阶——单点部署Zuul的压力测试与调优(一)

前言说明:通过zuul访问后端服务时,这个流程是如何的?当你用500线程并发访问zuul和用100线程并发访问zuul,zuul分别会用多少个线程去并发访问后端的服务?后端最多能承受多少个并发线程?zuul默认是Hystrix的信号量隔离,这个值对zuul并发访问后端时有什么影响?可以通过这一篇来了解一下。内容  作为微服务架构系统的入口,毫无疑问,Zuul的并发性能直接决定了整个系统...

2019-09-12 15:56:31 1239

原创 6 mysql底层解析——缓存,Innodb_buffer_pool,包括连接、解析、缓存、引擎、存储等

前面几篇主要学习存储,在磁盘上的存储结构,内部格式等。这一篇就来看内存,对于Innodb来说,也就是最关键的Innodb_buffer_pool。我们都知道,内存读写和磁盘读写的速度不在一个数量级,在数据库中,数据都是最终落到磁盘上的,想要达成快速的读写,必然要依靠缓存技术。Innodb的这个缓存区就是Innodb_buffer_pool,当读取数据时,就会先从缓存中查看是否数据的页(...

2019-09-06 16:36:20 5320 7

原创 5 mysql底层解析——b+ tree和每个page存储结构,包括连接、解析、缓存、引擎、存储等

上一篇,我们学习了innodb文件系统内部大的存储结构,包括段(segment),簇(extent),页(page)各自的含义。简单回顾一下,段是组成表空间的最大结构,当创建一个表时,会同时创建两个段(内节点段,叶子段),分别管理非叶子节点数据和叶子节点数据。其实还有一个段(回滚段),是存放回滚数据的,只不过回滚段不是放在每个表的表空间,而是放在共享表空间的,希望还能记得共享表空间是什么。...

2019-09-04 14:19:18 2307 3

原创 4 mysql底层解析——innodb文件系统基本结构(段、簇、页面),包括连接、解析、缓存、引擎、存储等

上一篇,我们学习了innodb文件系统的大的框架,知道了innodb文件系统是由一些log和每个表的ibd(16K的整数倍)等文件组成的。那么这些文件,里面是怎么样的呢?表数据文件IBD上一篇我们看到了,当你新建一个库时,首先文件系统上会多一个以库名命名的文件夹。里面有ibd、frm文件,每个表对应一个ibd文件。那么当我们新建库时,innodb做了什么呢?会初始化一个名叫ibda...

2019-08-26 17:03:22 2348

原创 3 mysql底层解析——innodb文件系统初步入门,包括连接、解析、缓存、引擎、存储等

上一篇我们学习了server层对于表对象缓存的处理,表对象获取到之后,通过handler才具备了与存储引擎交互的能力。那么存储引擎层又是怎么个流程呢?mysql文件结构这些文件都可以在文件目录中找到,我们来看看都是做什么的。my.cnf,大家都懂。slow.log,记录慢查询日志,当语句执行时间超过参数long_query_time的值时,会被记录到该log,需要开启配置后才有...

2019-08-22 17:11:41 1552 1

原创 2 mysql底层解析——表对象缓存,包括连接、解析、缓存、引擎、存储等

学习了mysql的连接层之后,要来看一下mysql的server层了。这一层聚集了mysql的最多的逻辑,包括了请求解析、查询缓存、语义分析、查询优化、各种计算函数、扫描记录、binlog、缓存、锁、内存管理等等。当一个连接建立起了,用户发过来一个sql语句,从接到这个语句到返回给用户结果,这个过程中,经历了很多事,如果每一步都非常清楚,那么你就能解决大部分的问题。这一篇主要是讲表对象缓存...

2019-08-21 17:23:30 1631 2

原创 1 mysql底层解析——连接层,包括连接、解析、缓存、引擎、存储等

打算写一个系列的文章,主要是mysql底层解析。很多时候,程序员对mysql处于频繁使用,但都一知半解的程度,除了会加个索引,貌似也没啥优化的技能了。事实上,mysql能有今日的成就,必然不是靠个索引就吃饭的。更何况很多情况下,索引什么的应用层面也解决不了实际问题。那么,我们就需要深入到mysql内部去一探究竟。分层架构大多数数据库都是这样的结构,mysql作为一个插件式的数据库,...

2019-08-21 15:52:51 3506 4

原创 基于各服务注解方式,在网关zuul中对所有下游服务权限做控制,覆盖到所有接口,权限控制到角色、菜单、按钮、方法

开源地址:https://gitee.com/tianyalei/zuulauth在单体应用架构下,常见的用户-角色-菜单权限控制模式,譬如shiro,就是在每个接口方法上加RequireRole,RequirePermission,当调用到该方法时,可以从配置的数据库、缓存中来进行匹配,通过这种方式来进行的权限控制。而在微服务架构下,我们会使用网关来作为所有服务的入口,由网关来完成鉴权、...

2019-08-15 12:29:24 5035

原创 2分钟快速发布自己的项目供别人在pom里依赖

大家经常会在maven、gradle里依赖别人的项目或模块。大家知道,别人的项目都是发布在maven中央仓库的,要经历一系列的步骤方能上传成功,才能供别人依赖。这里要说一种简单方式,2分钟就让你的项目可以供大家使用。就是这个网站:https://jitpack.io你用GitHub或者gitee登录它,授权后,你的GitHub里的所有项目,就可以供别人依赖了。譬如我有一个项目叫zu...

2019-08-14 17:41:31 912 1

原创 SpringBoot 使用sharding jdbc进行分库分表,基于4.0版本,Springboot2.1

之前写过一篇使用sharding-jdbc进行分库分表的文章,https://blog.csdn.net/tianyaleixiaowu/article/details/70242971,当时的版本还比较早,现在已经不能用了。这一篇是基于最新版来写的。新版已经变成了shardingsphere了,https://shardingsphere.apache.org/。有点不同的是,这一篇,我们是...

2019-08-01 14:57:07 17896 31

转载 看图了解RocksDB

转载自:https://yq.aliyun.com/articles/669316它是一个高性能的Key-Value数据库。设计了完善的持久化机制,同时保证性能和安全性。能够良好的支持范围查询,因为K-V记录就是按照Key来排序的。下图为写入的流程:可以看到主要的三个组成部分,内存结构memtable,类似事务日志角色的WAL文件,持久化的SST文件。数据会放到内存结构memt...

2019-07-29 13:04:40 1324

转载 看完这篇还不会Elasticsearch,我跪搓衣板!

本文转载自:https://www.cnblogs.com/jajian/p/11223992.html关于elasticsearch的深度好文。生活中的数据搜索引擎是对数据的检索,所以我们先从生活中的数据说起。我们生活中的数据总体分为两种: 结构化数据 非结构化数据 结构化数据:也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要...

2019-07-26 10:52:40 1850

转载 Kafka深度解析

本文转发自技术世界,原文链接 http://www.jasongj.com/2015/01/02/Kafka深度解析背景介绍Kafka简介  Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下:以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传...

2019-07-24 16:56:07 669

原创 jpa多数据源时Hibernate配置自动生成表不生效

jpa配置多数据源教程很多,在Springboot2之后有一些变化,来看一下。application.yml如下:spring: application: name: t3cc datasource: primary: jdbc-url: jdbc:mysql://${MYSQL_HOST:localhost}:${MYSQL_PORT:3306}...

2019-07-23 11:30:16 4998 9

原创 redisson分布式锁源码和原理浅析

之前写过一篇使用redisson完成简单的分布式锁的文章,https://blog.csdn.net/tianyaleixiaowu/article/details/90036180在redisson之前,很多人可能已经自己实现过基于redis的分布式锁,本身原理也比较简单,redis自身就是一个单线程处理器,具备互斥的特性,通过setNx,exist等命令就可以完成简单的分布式锁,处理好超时...

2019-07-16 16:07:07 17139 3

转载 聊聊BIO,NIO和AIO (2)

本文转载自:https://www.jianshu.com/p/444646e02ef7 感谢原作者“大宽宽”的精心总结。本文从操作系统的角度来解释BIO,NIO,AIO的概念,含义和背后的那些事。本文主要分为3篇。第一篇讲解BIO和NIO以及IO多路复用 第二篇讲解磁盘IO和AIO 第三篇 讲解在这些机制上的一些应用的实现方式,比如nginx,nodejs,Java NIO等...

2019-07-10 20:37:50 3493

转载 聊聊BIO,NIO和AIO (1)

本文转载自:https://www.jianshu.com/p/ef418ccf2f7d 感谢原作者“大宽宽”的精心总结。本文从操作系统的角度来解释BIO,NIO,AIO的概念,含义和背后的那些事。本文主要分为3篇。第一篇讲解BIO和NIO以及IO多路复用 第二篇讲解磁盘IO和AIO 第三篇 讲解在这些机制上的一些应用的实现方式,比如nginx,nodejs,Java NIO等...

2019-07-10 20:13:06 1226

seata-server-0.8.1.zip

seata-server-0.8.1.zip压缩包,GitHub的太慢了,下载下来方便大家用

2019-10-16

nacos-server-1.1.0.zip压缩包,下载快

nacos-server-1.1.0.zip,GitHub下载比较慢,这个快一些。大家注意。

2019-08-02

Disruptor demo

Disruptor简单使用。完成多线程间并行、等待、先后执行等功能。

2018-04-02

手写简易版SpringMVC,探索SpringMVC原理

手写SpringMVC,教程请查看个人博客

2017-06-30

仿今日头条文章上拉看评论功能(仿淘宝详情页上拉)

仿今日头条文章上拉看评论功能,今日头条的文章拉到下面时有个阻尼效果,再拉就进入了评论页面。就是这个功能

2016-01-20

教学评教系统

jsp mysql开发的教学评教系统,学生老师管理员三种身份,内容齐全,稍微配下数据库就能跑起来,内有说明,功能比较齐全

2012-12-18

网络求职招聘系统的设计与实现

网络求职招聘系统的设计与实现,别人的毕业设计,带论文和答辩稿,jsp,mysql数据库,内容齐全

2012-12-18

求职招聘系统

别人写的求职招聘系统,功能挺全的,jsp,mysql数据库,带论文,看着还不错,发出来学习一下

2012-12-18

j2ee邮件收发系统

基于j2ee的邮件收发系统,jsp,mysql数据库,带系统详细配置和毕业论文,可供学习之用

2012-12-18

java编的人机对战5子棋

java编的人机对战5子棋,AI很高,源码提供,多看看就看懂了,用SWING编的

2012-11-23

java编程基础教程

详细的java编程教程,讲解的详细易懂,知识面全面覆盖,学习java入门的优秀教程

2012-11-10

Windows驱动编程基础教程

Windows驱动编程基础教程,编写windows下的驱动的入门教程,入门的文档

2012-11-10

java反编译工具jad

java的反编译工具,jad能反编译所有的.class文件,反编译为java文件,可阅读的,连注释都能编译出来。也能完整的按照.class文件的目录结构来反编译。具体用法去百度搜下就知道了。实乃反编译别人代码的利器

2012-11-10

超级玛丽源码加文档讲解

超级玛丽制作完整源代码加技术讲解,各个动画的讲解,C++制作,代码完整细致,学习C++动画的好素材

2012-11-07

中国象棋源代码

中国象棋源代码完整版,解压后点exe直接就能下象棋,源码都在里面,AI很高,一般人还下不过电脑,C++学习的好素材,算法经典

2012-11-07

外文翻译,文献综述

计算机毕业论文的外文翻译,中文英文都有,翻译的水平一般般,应付一下论文还是可以的

2012-11-07

音乐播放器java制作

java制作的音乐播放器,已编译好,直接运行jar包即可。界面美观,带lrc歌词显示,网络资源链接等,功能强大。如果要源代码可以下载我的另一个源代码资源,或者直接用jad反编译即可

2012-11-07

java音乐播放器

完整的音乐播放器的源代码,java制作,功能完整,带lrc歌词显示,网络资源等,界面美观,适用于windows和linux系统。编译成jar包后运行即可

2012-11-07

JAVA经典算法40题

JAVA经典算法40题,基础的java算法,内有讲解,很实用的入门算法

2012-11-07

Java反编译工具

Java反编译工具,实现了eclipse的高亮着色功能,多文件标签浏览

2012-11-07

C语言经典算法100例

C语言经典算法100例,很不错的C语言入门算法,很简单又很实用,下载看看吧

2012-11-07

java课件学习java的必备资料

java课件学java的课件啊啊啊java课件学习java的必备资料java课件学习java的必备资料

2010-12-23

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除