自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

敲代码的乔帮主

临渊羡鱼,不如退而结网

  • 博客(572)
  • 资源 (9)
  • 论坛 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 2.3.10 hadoop体系之离线计算-Hive数据仓库-MaxCompute SQL调优

1.写在前面今天跟大家分享的内容是maxcompute的优化内容,希望能够起到抛砖引玉的作用。我将从三个方面开展这次的主题分享,第一个部分是max和hive的对比;第二部分是调优方法论,主要是想总结一下我们从代码提交到执行结束,都有哪些位置可能会出现问题,一般情况下又是怎么解决的;最后是结合具体案例,对长尾问题的一些思考。2. MaxCompute对比Hive首先,先对其简单做个介绍,MaxCompute主要是应用在批量结构化数据的存储和计算,主要是数据仓库的...

2021-07-13 17:51:46 91 2

原创 【论文阅读ACL2020】Leveraging Graph to Improve Abstractive Multi-Document Summarization
原力计划

题目:Leveraging Graph to Improve Abstractive Multi-Document Summarization (基于图表示的生成式多文档摘要方法 )会议:ACL2020论文地址:https://arxiv.org/abs/2005.10043其他:出自百度NLP小组工作 这个是百度 NLP 小组在 ACL2020 上面的一篇工作,当前多文档摘要应用场景和需求也越来越多,接下来我将就论文主要内容做介绍。 目录1.多文档摘要2...

2020-06-16 23:45:34 1687 5

原创 大数据学习之路

这个系列是大数据相关知识,大致包含五个方面,第一个阶段是linux和高并发基本知识;第二个是hadoop体系的离线计算;第三个阶段是spark体系的分布式计算;第四个阶段是机器学习和数据挖掘相关部分;最后第五阶段是大数据项目实战。1.linux和高并发基本知识1.1 linux操作系统1.1.1 linux和高并发-linux操作系统-linux虚拟机的安装1.1....

2020-02-22 17:42:14 1729 3

原创 阿里云DataWorks数据集成(DataX)架构&实践分享

阿里云DataWorks数据集成(DataX)架构&实践分享分享嘉宾:罗海伟阿里云编辑整理:约理中国科学院大学目录阿里云DataWorks数据集成(DataX)架构&实践分享▌为什么需要数据集成数据集成的应用场景数据集成的角色和地位▌阿里云数据集成大事记▌阿里云数据集成产品定位和业务支撑情况阿里云数据集成产品定位阿里云数据集成业务支撑情况▌阿里云数据集成DataX设计核心思路离线数据同步原理实时数据同步原理▌阿里云数据集成Dat..

2021-09-29 16:18:30 72

原创 2.3.11 hadoop体系之离线计算-Hive数据仓库-MaxCompute SQL多维聚合求PV和UV

1.写在前面 最近遇到一个问题,需要对多个维度的多个组合聚合查询。比如我们的日志流量中有用户id,商铺id,用户和商铺又可以属于不同的类别,当需要统计,不同类别人群在不同类别商铺中的消费情况的时候,就需要用到这个知识。2.数据构造 我们模拟构造一个cube_demo表,表中有三个字段,id,国家,性别,我们想要统计不同国家,不同性别的PV和UV。CREATE TABLE IF NOT EXISTS cube_demo LIFECYCLE 3 ASSELECT ...

2021-07-29 09:43:03 56

原创 2.3.9 hadoop体系之离线计算-Hive数据仓库-hql实现wordcount操作

1.写在前面类比hql理解,hive出现的目的就是因为MapReduce编程太不方便了,想写一个wordcount,需要写一个Mapper的子类+Reducer的子类,最后还要写一个主类用来描述job、提交job(mapreduce实现WordCount)。hql的出现大大简化了这一流程,直接分割文本,切出每个单词,利用行转列将每个单词作为一行统计次数即可。2.sql实现先直接上SQL语句,可以看出SQL实现确实比MapReduce实现要清爽得多。大概实现流程分为三步:分割本...

2021-06-30 20:45:09 38

原创 4.2.11 Flink-流处理框架-Table API 与 SQL-函数(Functions)之用户自定义函数 UDF

1.写在前面 用户定义函数(User-defined Functions,UDF)是一个重要的特性,因为它们显著地扩展了查询(Query)的表达能力。一些系统内置函数无法解决的需求,我们可以用 UDF 来自定义实现。 在大多数情况下,用户定义的函数必须先注册,然后才能在查询中使用。不需要专门为 Scala 的 Table API 注册函数。 函数通过调用 registerFunction()方法在 TableEnvironment 中注册。当用户定义的函数被注册时,...

2021-03-15 23:27:20 84

原创 4.2.10 Flink-流处理框架-Table API 与 SQL-函数(Functions)之内置函数

Flink Table API 和 SQL 为用户提供了一组用于数据转换的内置函数。SQL 中支持的很多函数,Table API 和 SQL 都已经做了实现,其它还在快速开发扩展中。 以下是一些典型函数的举例,全部的内置函数,可以参考官网介绍。...

2021-03-15 14:25:36 81 1

原创 4.2.9 Flink-流处理框架-Table API 与 SQL-流处理中的特殊概念之窗口(Windows)

目录1.写在前面2.窗口(Windows)2.1分组窗口(Group Windows)2.1.1滚动窗口2.1.2滑动窗口2.1.3 会话窗口2.2Over Windows2.2.1无界 Over Windows2.2.2有界的 over window2.3SQL 中窗口的定义2.3.1Group Windows2.3.2Over Windows3.代码总结4.代码练习(以分组滚动窗口为例)1.写在前面 时间语...

2021-03-15 00:43:56 66

原创 4.2.8 Flink-流处理框架-Table API 与 SQL-流处理中的特殊概念之时间特性

目录1.写在前面2.时间特性2.1 定义处理时间(Processing Time)2.1.1DataStream 转化成 Table 时指定2.1.2定义 Table Schema 时指定2.1.3创建表的 DDL 中指定2.2定义事件时间(Event Time)2.2.1DataStream 转化成 Table 时指定2.2.2定义 Table Schema 时指定2.2.3在创建表的 DDL 中定义1.写在前面 基于时间的操作(...

2021-03-14 12:43:28 46

原创 4.2.7 Flink-流处理框架-Table API 与 SQL-流处理中的特殊概念之动态表+持续查询

目录1.写在前面2.流处理和关系代数(表,及 SQL)的区别3.动态表(Dynamic Tables)4.流式持续查询的过程4.1将流转换成动态表(Dynamic Tables)4.2 持续查询(Continuous Query)4.3将动态表转换成流1.写在前面 Table API 和 SQL,本质上还是基于关系型表的操作方式;而关系型表、关系代数,以及 SQL 本身,一般是有界的,更适合批处理的场景。这就导致在进行流处理的过程中,理解会稍微复杂一些...

2021-03-14 10:54:20 62

原创 4.2.6 Flink-流处理框架-Table API 与 SQL-查看表的执行计划

Table API 提供了一种机制来解释(Explain)计算表的逻辑和优化查询计划。这是通过 TableEnvironment.explain(table)方法或 TableEnvironment.explain()方法完成的。 explain 方法会返回一个字符串,描述三个计划: 我们可以在代码中查看执行计划:String explaination = tableEnv.explain(resultTable);System.out.pri...

2021-03-12 19:49:12 119 1

原创 4.2.5 Flink-流处理框架-Table API 与 SQL-表的输出

1.写在前面 表的输出,是通过将数据写入 TableSink 来实现的。TableSink 是一个通用接口,可以 支持不同的文件格式、存储数据库和消息队列。具体实现,输出表最直接的方法,就是通过 Table.insertInto() 方法将一个 Table 写入注册过的 TableSink 中。2.输出到文件 注册输出表 insertInto(只实现了追加模式 append mode)不支持,数据聚合有更新操作的数据输出到文件。flin...

2021-03-12 18:45:50 109

原创 4.2.3 Flink-流处理框架-Table API 与 SQL-流转表+表转流+创建临时视图(Temporary View)

目录1.写在前面2.代码表达3.数据类型与Table schema 的对应4.创建临时视图(Temporary View)1.写在前面 Flink 允许我们把 Table 和 DataStream 做转换:我们可以基于一个 DataStream,先流式 地读取数据源,然后 map 成 POJO,再把它转成 Table。Table 的列字段(column fields),就是 POJO 里的字段,这样就不用再麻烦地定义 schema 了。2.代码表达 ...

2021-03-12 10:36:55 355

原创 4.2.4 Flink-流处理框架-Table API 与 SQL-表的查询

目录1.写在前面2.Table API 的调用3.SQL 查询4.代码总结1.写在前面 利用外部系统的连接器 connector,我们可以读写数据,并在环境的 Catalog 中注册表。 接下来就可以对表做查询转换了。Flink 给我们提供了两种查询方式:Table API 和 SQL。2.Table API 的调用 Table API 是集成在 Scala 和 Java 语言内的查询 API。与 SQL 不同,Table API 的查询不会 用字...

2021-03-12 09:15:14 70

原创 4.2.2 Flink-流处理框架-Table API 与 SQL-基本程序结构(创建表环境+在 Catalog 中注册表)

目录1.基本程序结构2.创建表环境2.1配置老版本 planner2.2配置 blink planner3.在 Catalog 中注册表3.1 表的概念3.2连接到文件系统(Csv 格式)3.3连接到 Kafka4.代码示例1.基本程序结构 Table API 和 SQL 的程序结构,与流式处理的程序结构类似;也可以近似地认为有这么 几步:首先创建执行环境,然后定义 source、transform 和 sink。具体操作流程如下:St...

2021-03-11 21:16:03 166 1

原创 4.2.1 Flink-流处理框架-Table API 与 SQL-基本概念和简单实例程序

目录1.Table API 与 SQL的基本概念2.Table API 与 SQL的实例程序2.1 需要引入pom的依赖2.2 实例程序1.Table API 与 SQL的基本概念 Table API 是流处理和批处理通用的关系型 API,Table API 可以基于流输入或者批输入来运行而不需要进行任何修改。Table API 是 SQL 语言的超集并专门为 Apache Flink 设计的,Table API 是 Scala 和 Java 语言集成式的 API。与...

2021-03-11 19:39:18 87

原创 4.1.27 Flink-流处理框架-检查点恢复+flink检查点算法+保存点

目录1.从检查点恢复状态2.Flink的检查点的实现算法2.1 检查点分界线2.2Flink的检查点的实现算法举例3.保存点(Savepoints)1.从检查点恢复状态 在执行流应用程序期间,Flink 会定期保存状态的一致检查点,如果发生故障, Flink 将会使用最近的检查点来一致恢复应用程序的状态,并重新启动处理流程。 遇到故障之后,第一步就是重启应用 第二步是从 checkpoint 中读取状态,将状态重置。从检...

2021-03-11 17:21:55 133 2

原创 4.1.25 Flink-流处理框架-Flink中的容错机制之Flink+Kafka 端到端状态一致性的保证

目录1.写在前面2.保证端到端状态一致性3.Exactly-once 两阶段提交过程Exactly-once 两阶段提交步骤总结:1.写在前面 kafka是消息队列,跟flink天生是一对,他们的组合方式就是处理流式数据最佳的一个方案。 假设我们的方案架构师flink从kafka中读取数据,经过flink算子处理之后,sink输出到kafka中。flink的两端都是kafka消息队列的数据管道,这样的一个数据处理系统我们怎么保证数据的一致性呢?2....

2021-03-11 14:37:54 75 1

原创 4.1.26 Flink-流处理框架-Flink中的容错机制之一致性检查点(checkpoint)

Flink 具体如何保证 exactly-once 呢? 它使用一种被称为"检查点"(checkpoint) 的特性,在出现故障时将系统重置回正确状态。下面通过简单的类比来解释检查点的作用。 假设你和两位朋友正在数项链上有多少颗珠子,如下图所示。你捏住珠子,边 数边拨,每拨过一颗珠子就给总数加一。你的朋友也这样数他们手中的珠子。当你 分神忘记数到哪里时,怎么办呢? 如果项链上有很多珠子,你显然不想从头再数一 遍,尤其是当三人的速度不一样却又试图合作的时候,更是如此(比如想记...

2021-03-11 00:11:36 80

原创 4.1.24 Flink-流处理框架-Flink中的容错机制之状态一致性级别和端到端的状态一致性

目录1.写在前面2.一致性级别3.端到端(end-to-end)状态一致性1.写在前面 当在分布式系统中引入状态时,自然也引入了一致性问题。一致性实际上是" 正确性级别"的另一种说法,也就是说在成功处理故障并恢复之后得到的结果,与没 有发生任何故障时得到的结果相比,前者到底有多正确?举例来说,假设要对最近 一小时登录的用户计数。在系统经历故障之后,计数结果是多少?如果有偏差,是 有漏掉的计数还是重复计数?2.一致性级别 在流处理中,一致性可以分为 3 ...

2021-03-11 00:04:10 103 1

原创 4.1.20 Flink-流处理框架-ProcessFunction API(底层 API)

1.写在前面 我们之前了解过,flink有分层API,最底层级的抽象仅仅提供了有状态流,它将通过过程函数(Process Function) 被嵌入到 DataStream API 中。底层过程函数(Process Function) 与 DataStream API 相集成,使其可以对某些特定的操作进行底层的抽象,它允许用户可以自由地处理来自一个或多个数据流的事件,并使用一致的容错的状态。除此之外,用户可以注册事件时间并处理时间回调,从而使程序可以处理复杂的计算。 ...

2021-03-10 23:29:46 57

原创 4.1.23 Flink-流处理框架-Flink中的状态管理之状态后端

目录1.状态后端是什么?2.状态后端的类型3.配置状态后端3.1 配置文件3.2 代码中针对单独job,设置状态后端1.状态后端是什么? 每传入一条数据,有状态的算子任务都会读取和更新状态,由于有效的状态访问对于处理数据的低延迟至关重要,因此每个并行任务都会在本地维护其状态,以确保快速的状态访问。状态的存储、访问以及维护,由一个可插入的组件决定,这个组件就叫做状态后端(state backend)。 状态后端主要负责两件事:1)本地的状态管理;2)...

2021-03-10 11:58:43 82

原创 4.1.22 Flink-流处理框架-Flink中的状态管理之状态编程-温度跳变报警

1.需求利用 Keyed State,实现这样一个需求:检测传感器的温度值,如果连续的两个温度差值超过 10 度,就输出报警。

2021-03-07 16:52:26 117 1

原创 4.1.21 Flink-流处理框架-Flink中的状态管理之算子状态+键控状态

目录1.写在前面2.有状态的算子和应用程序2.1算子状态(operator state)2.2键控状态(keyed state)1.写在前面 流式计算分为无状态和有状态两种情况。无状态的计算观察每个独立事件,并根据最后一个事件输出结果。例如,流处理应用程序从传感器接收温度读数,并在温度超过 90 度时发出警告。有状态的计算则会基于多个事件输出结果。以下是有状态计算的一些例子。所有类型的窗口。例如,计算过去一小时的平均温度,就是有状态的计算。 所有用于复杂事件处...

2021-03-04 16:48:40 176 1

原创 4.1.19 Flink-流处理框架-Flink中的时间语义和watermark水位线

1.Flink中的时间语义 在 Flink 的流式处理中,会涉及到时间的不同概念,如下图所示:Event Time事件创建时间:是事件创建的时间。它通常由事件中的时间戳描述,例如采集的日志数据中,每一条日志都会记录自己的生成时间,Flink 通过时间戳分配器访问事件时间戳。绝大部分的业务都会使用 eventTime Ingestion Time进入时间:是数据进入 Flink 的时间。 Processing Time处理时间:是每一个执行基于时间操作的算子的本地系统时间...

2021-03-04 15:24:10 133 1

原创 4.1.18 Flink-流处理框架-Window API之窗口函数window function

目录1.window function-窗口函数2.其他可选API3.代码演示3.1TimeWindow3.2CountWindow3.3EventTimeWindow1.window function-窗口函数 window function 定义了要对窗口中收集的数据做的计算操作,主要可以分为两类:增量聚合函数(incremental aggregation functions) 每条数据到来就进行计算,保持一个简单的状态。典型的增量聚合函数有 ...

2021-03-03 17:08:41 114 1

原创 4.1.17 Flink-流处理框架-Window API之窗口分配器

目录0.写在前面1.TimeWindow-时间窗口1.1滚动时间窗口(Tumbling Windows)1.2滑动时间窗口(SlidingEventTimeWindows)1.3 三个时间窗口总结2.CountWindow-计数窗口2.1滚动窗口2.2滑动窗口2.3 两个计数窗口总结0.写在前面 我们可以用 .window() 来定义一个窗口,然后基于这个 window 去做一些聚 合或者其它处理操作。注意 window () 方法必须在 k...

2021-03-03 15:22:57 53

原创 4.1.16 Flink-流处理框架-Window API之Windows概述

目录1.写在前面2.Window的类型​3.时间窗口(TimeWindow)3.1滚动窗口(Tumbling Windows)3.2滑动窗口(Sliding Windows)3.3会话窗口(Session Windows)1.写在前面 streaming 流式计算是一种被设计用于处理无限数据集的数据处理引擎,而无限 数据集是指一种不断增长的本质上无限的数据集,而 window 是一种切割无限数据 为有限块进行处理的手段。 Window 是无限数据流处理的核...

2021-03-03 14:06:24 58

原创 4.1.15 Flink-流处理框架-Flink流处理API之sink输出操作

目录1.写在前面2.输出到Kafka(source/sink)3.输出到Redis(sink)4.输出到Elasticsearch(sink)5.JDBC 自定义 sink1.写在前面Flink 没有类似于 spark 中 foreach 方法,让用户进行迭代的操作。所有对外的输出操作都要利用 Sink 完成。最后通过类似如下方式完成整个任务最终输出操作。stream.addSink(new MySink(xxxx))官方提供了一部分的框架的 sink。除此以外,需要用

2021-03-02 16:35:11 117

原创 4.1.14 Flink-流处理框架-Flink流处理API之数据重分区操作

1.写在前面

2021-03-02 14:29:18 126

原创 4.1.13 Flink-流处理框架-Flink流处理API之实现 UDF 函数(更细粒度的控制流)

目录1.函数类(Function Classes) 补充小知识:静态内部类2.匿名函数(Lambda Functions)3.富函数(Rich Functions)1.函数类(Function Classes) Flink 暴露了所有 udf 函数的接口(实现方式为接口或者抽象类)。例如 MapFunction, FilterFunction, ProcessFunction 等等。 下面例子实现了 FilterFunction 接口:...

2021-03-02 10:46:04 84

原创 4.1.12 Flink-流处理框架-Flink流处理API之支持的数据类型总结

目录1.写在前面2.Flink支持的数据类型2.1 基础数据类型2.2Java 和 Scala 元组(Tuples)2.3Scala 样例类(case classes)2.4Java 简单对象(POJOs)2.5其它(Arrays, Lists, Maps, Enums, 等等)1.写在前面 Flink 流应用程序处理的是以数据对象表示的事件流。所以在 Flink 内部,我们 需要能够处理这些对象。它们需要被序列化和反序列化,以便通过网络传送它们; ...

2021-02-22 17:42:33 70

原创 4.1.11 Flink-流处理框架-Flink流处理API之Transform转换算子

1.基本转换算子1.1 mapmap算子属于基本转换算子,来一个数据处理一个。DataStream<Integer> mapStram = dataStream.map(new MapFunction<String, Integer>() { public Integer map(String value) throws Exception { return value.length(); }});1.2 flatMap扁平化算子DataS...

2021-02-21 22:59:56 65

原创 4.1.10 Flink-流处理框架-Flink流处理API之Source数据源

目录1.写在前面2.Source数据源2.1 从集合中读取数据2.2 从文件中读取数据2.3 以kafka消息队列的数据作为数据来源2.4 自定义Source1.写在前面 我们在创建完成环境之后,我们需要读取数据,我们可以从哪些地方读取数据呢?我们区分为集合、文件、kafka消息队列、自定义数据源。2.Source数据源2.1 从集合中读取数据 首先创建一个javaBean,传感器温度读数的数据类型SensorReadingpac...

2021-02-20 23:48:47 100

原创 4.1.9 Flink-流处理框架-Flink流处理API之Environment

目录1.写在前面2.Environment:环境2.1getExecutionEnvironment:得到执行环境2.2createLocalEnvironment:创建本地环境2.3createRemoteEnvironment:创建远程环境1.写在前面 我们主要研究dataStream的api,dataSet与之类似。source用来读取数据源,transform做转换计算,sink阶段主要用来输出计算数据。在这三个步骤之前,我们需要创建flink的执行环...

2021-02-20 22:40:01 52

原创 4.1.8 Flink-流处理框架-Flink运行架构

1.Flink运行时的组件2.任务提交流程3.任务调度原理

2021-02-20 22:14:07 142 2

原创 5.1.13 NoSQL数据库-Redis(键值key-value)-Redis缓存穿透、缓存击穿、缓存雪崩

目录1.写在前面2.缓存穿透(查不到数据)2.1 问题说明2.2 解决方案2.2.1布隆过滤器2.2.2缓存空对象3.缓存击穿(量太大,缓存过期)3.1 问题说明3.2 解决方案3.2.1设置热点数据永不过期3.2.2加互斥锁4.缓存雪崩(缓存集中过期失效+redis宕机)4.1 问题说明4.2 解决方案4.2.1redis高可用4.2.2限流降级(在SpringCloud讲解过!)4.2.3数据预热1.写在前面Red...

2021-01-19 20:38:56 79

原创 5.1.12 NoSQL数据库-Redis(键值key-value)-Redis哨兵模式

目录1.概念2.测试2.1、配置哨兵配置文件 sentinel.conf2.2、启动哨兵3.哨兵模式优缺点分析4.哨兵模式的全部配置1.概念 主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工 干预,费事费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更多时候,我们优先考虑 哨兵模式。Redis从2.8开始正式提供了Sentinel(哨兵) 架构来解决这个问题。 谋朝篡位的自动版,能够后台监控主...

2021-01-19 10:52:00 67

原创 5.1.11 NoSQL数据库-Redis(键值key-value)-Redis主从复制

1.概念主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点 (master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。 Master以写为主,Slave 以读为主。 默认情况下,每台Redis服务器都是主节点; 且一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点。2.作用数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余的方式。 故障恢复:当主节点故...

2021-01-18 18:02:42 67

LaTex参考书籍(刘海洋入门+short快速)

开始编写我的第一个LaTeX文件 编辑tex文件 %文件名a.tex \documentclass{article} \usepackage[space]{ctex} \begin{document} hello world 你好世界 \end{document} 编译xelatex a.tex即可在当前目录生成同名的a.pdf文件和一些中间文件。 pdf文档如下:

2019-03-05

catVSdog_data深度学习猫狗分类任务数据集

这个数据集中一共有1W张图片,没有重复的5000个dog+5000个cat图像(已经经过处理) 其中90%的数据当做训练集(9000张,4500张cat ,4500张dog),10%的数据当做测试集,均有对应文件夹,可以直接进行训练使用 数据命名 cat+数字,dog+数字 VGG16训练结果: train Loss:0.8838, Correct:93.0000 val Loss:0.2155, Correct:96.0000 Training time is:23m 58s

2020-04-15

html5实现腾讯QQ登录界面背景动画特效(QQ背景动态)

html5实现腾讯QQ登录界面背景动画特效(QQ背景动态)+js,可以有效的学习html标签,制作出所见即所得的东西。高大上的背景!

2017-08-02

2012李航.统计学习方法(NLP必备)

详细介绍支持向量机、Boosting、最大熵、条件随机场等十个统计学习方法。

2018-08-13

取色小工具

取色器,用于网页等颜色的选取,将颜色转化为十六进制

2017-08-02

jdk api 1.8_google 文档

jdk api 1.8_google 中文文档

2017-08-02

java反编译工具(实用)

用于java的反编译,将class文件解析成java文件

2017-08-02

Tomcat 6.0

Tomcat 6.0,绿色直接可以进行使用

2017-08-03

Tomcat 7.0

Tomcat7.0 绿色版本,可以直接进行使用

2017-08-03

敲代码的乔帮主的留言板

发表于 2020-01-02 最后回复 2020-06-17

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

TA关注的人 TA的粉丝

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