SF
风继续吹
风继续吹
注册登录
关注博客
注册登录
主页
关于
RSS
Java™ 教程(Queue实现)
博弈
2019-10-24
阅读 1 分钟
1.6k
PriorityQueue类是基于堆数据结构的优先级队列,此队列根据构造时指定的顺序对元素进行排序,这些顺序可以是元素的自然顺序,也可以是显式Comparator施加的顺序。
Java™ 教程(Map实现)
博弈
2019-10-24
阅读 2 分钟
1.6k
三种通用Map实现是HashMap、TreeMap和LinkedHashMap。如果需要SortedMap操作或键顺序的集合视图迭代,请使用TreeMap;如果你想要最大速度并且不关心迭代顺序,请使用HashMap;如果要获得近乎HashMap的性能和插入顺序迭代,请使用LinkedHashMap。在这方面,Map的情况类似于Set。
Java™ 教程(List实现)
博弈
2019-10-22
阅读 1 分钟
1.7k
有两种通用的List实现 — ArrayList和LinkedList,在大多数情况下,你可能会使用ArrayList,它提供了恒定时间的位置访问,而且速度很快。它不必为List中的每个元素分配节点对象,并且当必须同时移动多个元素时,可以利用System.arraycopy的优势,将ArrayList视为Vector,而没有同步开销。
Java™ 教程(Set实现)
博弈
2019-10-21
阅读 2 分钟
1.7k
有三种通用的Set实现 — HashSet、TreeSet和LinkedHashSet,使用这三种中的其中一种通常比较简单。HashSet比TreeSet快得多(大多数操作的恒定时间与对数时间),但不提供排序保证,如果需要使用SortedSet接口中的操作,或者需要按值排序的迭代,请使用TreeSet,否则,请使用HashSet。可以肯定的是,大多数情况下你最终都...
Java™ 教程(集合实现)
博弈
2019-10-14
阅读 2 分钟
1.9k
集合实现 实现是用于存储集合的数据对象,它实现了接口部分中描述的接口,本节描述了以下几种实现: 通用实现是最常用的实现,专为日常使用而设计。 专用实现旨在用于特殊情况,并显示非标准性能特征、使用限制或行为。 并发实现旨在支持高并发性,通常以单线程性能为代价,这些实现是java.util.concurrent包的一部分。 ...
Activiti 快速入门指南(运行流程实例)
博弈
2019-09-05
阅读 8 分钟
4.1k
运行流程实例 部署的流程可以使用Activiti API来启动、运行、查看历史记录以及以其他方式管理流程实例,本快速入门使用Java代码运行流程实例。 将Activiti的日志记录级别从DEBUG设置为WARN,如下面的第1行所示。 文件:$mvnProject/src/main/resources/log4j.properties {代码...} 添加到OnboardingRequest.java,如下图...
Activiti 快速入门指南(部署流程定义)
博弈
2019-09-05
阅读 11 分钟
6.5k
为此,正如我们的OnboardingRequest Java类的名称所示,我们将使用简单的入职流程。在这个例子中,我们将输入数据,然后,如果经验年数超过3,则将发布个性化入职欢迎消息的任务。在该任务中,用户将手动将数据输入一个伪后端系统。如果工作经验在3年或以下,那么只需简单地、一般地、自动地将数据集成到一个伪后端系统中。
Activiti 快速入门指南(创建流程引擎)
博弈
2019-08-19
阅读 7 分钟
3.9k
正如之前在maven依赖关系摘要中所建议的,Activiti利用Simple Logging Facade for Java(slf4j)进行日志记录,在此示例应用程序中,我们将使用log4j日志记录实现,将log4j.properties文件添加到项目中。
Activiti 快速入门指南(创建和设置Maven项目)
博弈
2019-08-15
阅读 3 分钟
4k
创建一个名为“ActivitiDeveloperQuickStart”的Java项目(以下称为$quickStartJavaProjectName),其中包含以下Maven依赖项:
Activiti 快速入门指南(介绍)
博弈
2019-08-15
阅读 1 分钟
2.4k
介绍 这个快速入门假定: 熟悉Maven和Java 使用Java的开发环境 本教程将引用以下变量: 变量 描述 $mvnProject maven项目的根位置. $actUnzipedPack 从[链接]下载的解压缩文件的根位置。 $quickStartJavaProjectName Quick Start Java Project的名称;建议将其作为“ActivitiDeveloperQuickStart”。 ... 为简洁起见,请参...
Spring Framework 参考文档(JCache(JSR-107)注解)
博弈
2019-08-15
阅读 2 分钟
2.8k
从4.1版开始,Spring的缓存抽象完全支持JCache标准注解:@CacheResult、@CachePut、@CacheRemove和@CacheRemoveAll以及@CacheDefaults、@CacheKey和@CacheValue。即使不将缓存存储库迁移到JSR-107,也可以使用这些注解,内部实现使用Spring的缓存抽象,并提供符合规范的默认CacheResolver和KeyGenerator实现。换句话说,...
Spring Framework 参考文档(声明式基于注解的缓存)
博弈
2019-08-14
阅读 9 分钟
2.7k
声明式基于注解的缓存 对于缓存声明,Spring的缓存抽象提供了一组Java注解: @Cacheable:触发缓存人口。 @CacheEvict:触发缓存驱逐。 @CachePut:在不影响方法执行的情况下更新缓存。 @Caching:重新组合要应用于方法的多个缓存操作。 @CacheConfig:在类级别上共享一些常见的缓存相关设置。 @Cacheable注解 顾名思义...
Spring Framework 参考文档(理解缓存抽象)
博弈
2019-08-12
阅读 2 分钟
1.5k
缓存与缓冲区 术语“缓冲区”和“缓存”往往可以互换使用,但是请注意,它们代表不同的东西。传统上,缓冲区用作数据在快实体和慢实体之间的中间临时存储,由于一方必须等待另一方(这会影响性能),缓冲区允许整个数据块(而不是小块)同时移动,从而缓解了这种情况。数据只从缓冲区写入和读取一次,此外,至少有一方知道缓...
Spring Framework 参考文档(Bean概述)
博弈
2019-08-01
阅读 6 分钟
1.8k
Spring IoC容器管理一个或多个bean,这些bean是使用你提供给容器的配置元数据创建的(例如,以XML <bean/>定义的形式)。
Spring Framework 参考文档(容器概述)
博弈
2019-08-01
阅读 7 分钟
1.6k
org.springframework.context.ApplicationContext接口表示Spring IoC容器,负责实例化、配置和组装bean。容器通过读取配置元数据获取关于要实例化、配置和组装哪些对象的指令,配置元数据用XML、Java注解或Java代码表示,它允许你表达组成应用程序的对象以及这些对象之间丰富的相互依赖关系。
Spring Framework 参考文档(Spring IoC容器和bean介绍)
博弈
2019-08-01
阅读 1 分钟
1.7k
本章介绍了控制反转(IoC)原理的Spring Framework实现,IoC也称为依赖注入(DI)。它是一个过程,对象仅通过构造函数参数、工厂方法的参数,或从工厂方法构造后或返回后的对象实例上设置的属性来定义其依赖项(即与之一起工作的其他对象),然后容器在创建bean时注入这些依赖项。这个过程本质上与bean本身相反(因此称...
Spring Framework 参考文档(概述)
博弈
2019-07-31
阅读 3 分钟
1.7k
Spring使创建Java企业应用程序变得很容易,它提供了在企业环境中使用Java语言所需要的一切,支持Groovy和Kotlin作为JVM上的替代语言,并根据应用程序的需求灵活地创建多种体系结构,从Spring Framework 5.1开始,Spring需要JDK 8+(Java SE 8+),并为JDK 11 LTS提供开箱即用的支持。
Spring 指南(spring-retry)
博弈
2019-07-31
阅读 10 分钟
13.6k
该项目为Spring应用程序提供声明式重试支持,它用于Spring Batch、Spring Integration、Apache Hadoop的Spring(以及其他),命令式重试也支持显式使用。
Java™ 教程(聚合并行性)
博弈
2019-07-25
阅读 6 分钟
2.1k
并行计算涉及将问题划分为子问题,同时解决这些问题(并行地,每个子问题运行在一个单独的线程中),然后将子问题的解决结果组合起来。Java SE提供了fork/join框架,它使你能够更容易地在应用程序中实现并行计算,但是,使用这个框架,你必须指定问题如何被细分(分区),使用聚合操作,Java运行时将为你执行这种分区和组...
Java™ 教程(聚合归纳操作)
博弈
2019-07-24
阅读 5 分钟
2.2k
JDK包含许多终端操作(比如average、sum、min、max和count),它们通过组合流的内容返回一个值,这些操作称为归纳操作。JDK还包含返回一个集合而不是单个值的归纳操作,许多归纳操作执行特定的任务,例如查找值的平均值或将元素分组到类别中。但是,JDK为你提供了通用的reduce和collect操作,本节将详细介绍这些操作。
Java™ 教程(聚合操作)
博弈
2019-07-23
阅读 3 分钟
2k
再次考虑Lambda表达式小节中描述的场景,假设你正在创建一个社交网络应用程序,你希望创建一个功能,使管理员能够对满足某些条件的社交网络应用程序的成员执行任何类型的操作,例如发送消息。
Java™ 教程(SortedMap接口)
博弈
2019-07-22
阅读 2 分钟
2.1k
SortedMap是一个按升序维护其条目的Map,根据键的自然顺序或在创建SortedMap时提供的Comparator进行排序,SortedMap接口提供常规Map操作和以下操作的操作:
Elasticsearch Java High Level REST Client(Bulk API)
博弈
2019-07-17
阅读 7 分钟
15.9k
Bulk API Java High Level REST Client提供了Bulk处理器来帮助处理批量请求。 Bulk请求 BulkRequest可以使用一个请求执行多个索引、更新和/或删除操作。 它需要在批量请求中添加至少一个操作: {代码...} 创建BulkRequest。 将IndexRequest添加到Bulk请求。 Bulk API只支持JSON或SMILE编码的文档,提供任何其他格式的文...
Java虚拟机规范(Java虚拟机的结构)
博弈
2019-06-25
阅读 3 分钟
2.2k
要正确实现Java虚拟机,你只需要能够读取类文件格式并正确执行其中指定的操作,不属于Java虚拟机规范的实现细节会不必要地限制实现者的创造力。例如,运行时数据区的内存布局、使用的垃圾收集算法、Java虚拟机指令的任何内部优化(例如,将它们转换为机器代码)由实现者自行决定。
Spring Cloud 参考文档(Spring Cloud Sleuth抽样)
博弈
2019-04-30
阅读 2 分钟
5.3k
Spring Cloud Sleuth抽样 采样可用于减少收集和报告的进程外数据,如果未对span进行抽样,则不会增加任何开销(noop)。 抽样是一个前期决策,这意味着报告数据的决定是在trace中的第一个操作中做出的,并且该决策是向下游传播的。 默认情况下,全局抽样器将单个速率应用于所有跟踪的操作,Tracer.Builder.sampler控制此...
Spring Cloud 参考文档(Spring Cloud Sleuth特性)
博弈
2019-04-28
阅读 6 分钟
5k
将trace和span ID添加到Slf4J MDC,因此你可以在日志聚合器中从给定的trace或span提取所有日志,如以下示例日志中所示: {代码...} 请注意MDC中的[appname,traceId,spanId,exportable]条目: spanId:发生的特定操作的ID。
Spring Cloud 参考文档(Spring Cloud Sleuth介绍)
博弈
2019-04-25
阅读 14 分钟
8.2k
Span:基本工作单元,例如,发送RPC是一个新的span,就像向RPC发送响应一样,Span由span的唯一64位ID标识,另一个64位ID标识其所属的Trace。Span还有其他数据,例如描述、带时间戳的事件、键值annotations(标签),导致它们的span的ID以及进程ID(通常是IP地址)。
Spring Cloud 参考文档(HTTP客户端)
博弈
2019-04-24
阅读 1 分钟
1.8k
Spring Cloud Netflix会自动为你创建Ribbon、Feign和Zuul使用的HTTP客户端,但是,你也可以根据需要自定义自己的HTTP客户端,为此,如果使用Apache Http Cient,可以创建ClosableHttpClient类型的bean;如果使用OK Http,可以创建OkHttpClient类型的bean。
Spring Cloud 参考文档(重试失败的请求)
博弈
2019-04-24
阅读 2 分钟
4.4k
Spring Cloud Netflix提供了多种方式来发出HTTP请求,你可以使用负载均衡的RestTemplate、Ribbon或Feign。无论你如何选择创建HTTP请求,总是有可能请求失败,请求失败时,你可能希望自动重试请求,要在使用Sping Cloud Netflix时这样做,你需要在应用程序的类路径中包含Spring Retry。当存在Spring Retry时,负载均衡的R...
Spring Cloud 参考文档(使用Sidecar支持多语言)
博弈
2019-04-23
阅读 2 分钟
9k
你是否有希望利用Eureka、Ribbon和Config Server的非JVM语言?Spring Cloud Netflix Sidecar的灵感来自Netflix Prana,它包含一个HTTP API,用于获取给定服务的所有实例(按主机和端口)。你还可以通过嵌入式Zuul代理代理服务调用,该代理从Eureka获取其路由条目,可以通过主机查找或Zuul代理直接访问Spring Cloud Confi...
1
(current)
2
3
4
5
…
More
下一页
1
(current)
下一页