Java高级
文章平均质量分 83
Java高级
hundan_520520
这个作者很懒,什么都没留下…
展开
-
【转】Java8 新特性之--CompletableFuture
ForkJoinPool是ExecutorSerice的一个补充,而不是替代品。JAVA8中CompeleteFuture、并发流等都是基于ForkJoinPool实现,默认并发数是CPU核数。转载 2023-02-03 17:24:51 · 591 阅读 · 0 评论 -
【转】JAVA读取、写入、更新CLOB字段
示例代码/* --建表语句如下: create table t_clob( id varchar2(32) primary key, clobfield CLOB ); */ /** * 读取CLOB字段的代码示例 */ public void readClob() { //自定义的数据库连接管理类 ...转载 2020-01-09 16:56:08 · 820 阅读 · 0 评论 -
【转】Java 如何重写对象的 equals 方法和 hashCode 方法
一、需求对比两个对象是否相等。对于下面的 User 对象,只需姓名和年龄相等则认为是同一个对象。二、解决方案需要重写对象的 equals 方法和 hashCode 方法public class User { private String id; private String name; private String age; public User(){}...转载 2020-04-16 19:26:05 · 350 阅读 · 1 评论 -
【转】正则表达式续
正则表达升阶转载 2022-09-14 16:49:27 · 112 阅读 · 0 评论 -
【转】正则表达式
本文旨在用最通俗的语言讲述最枯燥的基本知识。转载 2022-09-14 15:26:09 · 125 阅读 · 0 评论 -
【转】Java8 函数式编程详解
1.Java函数式编程的语法:使用Consumer作为示例,它是一个函数式接口,包含一个抽象方法accept,这个方法只有输入而无输出也就是说这个方法无返回值。现在我们要定义一个Consumer接口的实例化对象,传统的方式是这样定义的:public static void main(String[] args) { //JDK1.8版本之前的做法 Consumer<Integer> con = new Consumer<Integer>() { @Override转载 2021-05-08 18:36:57 · 2440 阅读 · 0 评论 -
【转】Java中对集合进行排序的两种方法
Collections 是集合的工具类,它提供了很多便于我们操作集合的方法, 其中就有用于集合排序的 sort 方法。实际上,在使用Collection的sort排序的集合元素都必须是Comparable 接口的实现类,该接口表示子类是可以比较的。因为实现接口必须重写抽象方法 - int compareTo(T t)。一、对于基础数据类型集合的比较import java.util.Arra...转载 2020-04-16 19:53:07 · 1107 阅读 · 1 评论 -
【转】java 通过反射,动态修改注解的某个属性值
昨晚看到一条问题,大意是楼主希望可以动态得建立多个Spring 的定时任务。这个题目我并不是很熟悉,不过根据题目描述和查阅相关 Spring 创建定时任务 的资料,发现这也许涉及到通过Java代码动态修改注解的属性值。今天对此尝试了一番,发现通过反射来动态修改注解的属性值是可以做到的:众所周知,java/lang/reflect 这个包下面都是Java的反射类和工具。Annotation ...转载 2020-01-07 17:16:10 · 985 阅读 · 0 评论 -
【转】java static代码块执行时机
之前一直认为static块是在class load的时候执行,今天在验证Spring初始化Context loader的时候,发现bean的static块并没有执行。Java代码: Class A{ static{ System.out.println("static block invoked!") } }那么static块到底在什么时候运行的呢?如...转载 2020-01-07 16:08:49 · 157 阅读 · 0 评论 -
【转】Java类加载机制
我们知道,我们写的java文件是不能直接运行的,我们可以在IDEA中右键文件名点击运行,这中间其实掺杂了一系列的复杂处理过程。这篇文章,我们只讨论我们的代码在运行之前的一个环节,叫做类的加载。按照我写文章的常规惯例,先给出这篇文章的大致结构首先,认识类加载机制然后,详细介绍类加载的过程最后,介绍了类加载器,还有双亲委派原则。废话不多说,直接来看吧。一、什么是类的加载在介绍类的加载机...转载 2019-10-09 15:37:09 · 114 阅读 · 0 评论 -
【转】JDK8函数式编程之Stream API
你可能没意识到Java对函数式编程的重视程度,看看Java 8加入函数式编程扩充多少功能就清楚了。Java 8之所以费这么大功夫引入函数式编程,原因有二:代码简洁,函数式编程写出的代码简洁且意图明确,使用stream接口让你从此告别for循环。多核友好,Java函数式编程使得编写并行程序从未如此简单,你需要的全部就是调用一下parallel()方法。这一节我们学习stream,也就是Ja...转载 2019-09-26 11:10:37 · 165 阅读 · 0 评论 -
【转】什么是 JWT -- JSON WEB TOKEN
Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。转载 2017-12-04 11:15:03 · 342 阅读 · 1 评论 -
【转】Java队列-Queue详细分析
转载出处:https://www.cnblogs.com/lemon-flm/p/7877898.htmlQueue:基本上,一个队列就是一个先入先出(FIFO)的数据结构。Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Deque接口。Queue的实现1.没有实现的阻塞的 LinkedList : 实现了java.util.Q...转载 2018-08-27 16:05:03 · 276 阅读 · 0 评论 -
【转】java常用的几种线程池比较
转载出处:http://www.cnblogs.com/aaron911/p/6213808.html1. 为什么使用线程池诸如 Web 服务器、数据库服务器、文件服务器或邮件服务器之类的许多服务器应用程序都面向处理来自某些远程来源的大量短小的任务。请求以某种方式到达服务器,这种方式可能是通过网络协议(例如 HTTP、FTP 或 POP)、通过 JMS 队列或者可能通过轮询数据库。...转载 2017-11-06 14:49:18 · 254 阅读 · 0 评论 -
【转】Java并发编程:线程池的使用
转载出处:http://www.cnblogs.com/dolphin0520/p/3932921.html 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程...转载 2017-11-06 10:28:10 · 210 阅读 · 0 评论 -
【转】轻松学,Java 中的代理模式及动态代理
原文链接:轻松学,Java 中的代理模式及动态代理 作者:frank909 前几天我写了《秒懂,Java 注解 (Annotation)你可以这样学》,因为注解其实算反射技术中的一部分,然后我想了一下,反射技术中还有个常见的概念就是动态代理,于是索性再写一篇关于动态代理的博文好了。 我们先来分析代理这个...转载 2017-07-27 17:23:03 · 883 阅读 · 0 评论 -
【转】秒懂,Java 注解 (Annotation)你可以这样学
原文链接:秒懂,Java 注解 (Annotation)你可以这样学 作者:frank909转载出处:https://zhuanlan.zhihu.com/p/27643133?utm_source=itdadao&utm_medium=referral 文章开头先引入一处图片。 这处图片引...转载 2017-07-27 16:41:44 · 514 阅读 · 0 评论 -
【转】Java 网络IO编程总结(BIO、NIO、AIO均含完整实例代码)
版权声明:http://blog.csdn.net/anxpp 转载出处:http://blog.csdn.net/anxpp/article/details/51512200 本文会从传统的BIO到NIO再到AIO自浅至深介绍,并附上完整的代码讲解。 下面代码中会使用这样一个例子:客...转载 2017-07-27 15:32:51 · 358 阅读 · 0 评论 -
【转】Java多线程-同步集合和并发集合
转载出处:https://blog.csdn.net/yuruixin_china/article/details/82082195,http://youyu4.iteye.com/blog/2352846同步集合可以简单地理解为通过synchronized来实现同步的集合。如果有多个线程调用同步集合的方法,它们将会串行执行。arrayList和vector、stackVecto...转载 2018-08-27 17:35:04 · 1136 阅读 · 0 评论 -
【转】Java多线程-ThreadLoad
转载出处:https://blog.csdn.net/chenjianandiyi/article/details/50518295**ThreadLocal是什么**早在JDK 1.2的版本中就提供 java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。当使用ThreadLo...转载 2018-08-24 15:16:14 · 1208 阅读 · 0 评论 -
【转】Java多线程-Callable,Future,FutureTask
转载出处:https://www.cnblogs.com/ITtangtang/p/3966484.htmlFuture和Callable基本是成对出现的,Callable负责产生结果,Future负责获取结果Callable接口类似于Runnable,只是Runnable没有返回值。Callable任务除了返回正常结果之外,如果发生异常,该异常也会被返回,即Future可以拿到异步执...转载 2018-08-24 15:53:32 · 140 阅读 · 0 评论 -
【转】Java多线程-Lock
转载出处:https://www.cnblogs.com/cielosun/p/6662201.htmlsynchronized的缺陷 synchronized修饰的代码只有获取锁的线程才能够执行,其他线程只能等待该线程释放锁。一个线程释放锁的情况有以下方式:获取锁的线程完成了synchronized修饰的代码块的执行。线程执行时发生异常,JVM自动释放锁。锁会因为等待I/O,...转载 2018-08-24 17:08:23 · 114 阅读 · 0 评论 -
Java多线程-模拟一个缓存代理
示例package com.zhihua.subject;import java.util.HashMap;import java.util.Map;import java.util.concurrent.locks.ReadWriteLock;import java.util.concurrent.locks.ReentrantReadWriteLock;/** * 缓存...原创 2018-08-27 14:11:57 · 297 阅读 · 0 评论 -
Java多线程-Condition
Condition介绍Condition是在java 1.5中才出现的,它用来替代传统的Object的wait()、notify()实现线程间的协作,相比使用Object的wait()、notify(),使用Condition的await()、signal()这种方式实现线程间协作更加安全和高效。因此通常来说比较推荐使用Condition,阻塞队列实际上是使用了Condition来模拟线程间协...原创 2018-08-27 09:30:04 · 312 阅读 · 0 评论 -
Java多线程-生产者消费者案例
同步代码块实现 synchronizedpackage com.zhihua;/** * 生产者消费者案例: * @author caizh * */public class TestProductorAndConsumer { public static void main(String[] args) { Clerk clerk = new Cl...原创 2018-08-27 09:55:21 · 246 阅读 · 0 评论 -
Java多线程-Exchanger
Exchanger 介绍Exchanger可以在两个线程之间交换数据,只能是2个线程,他不支持更多的线程之间互换数据。当线程A调用Exchange对象的exchange()方法后,他会陷入阻塞状态,直到线程B也调用了exchange()方法,然后以线程安全的方式交换数据,之后线程A和B继续运行。示例package com.zhihua.subject;import java...原创 2018-08-27 11:52:44 · 159 阅读 · 0 评论 -
【转】Java多线程-Semaphore 信号量
转载出处:https://www.cnblogs.com/XHJT/p/3910406.html信号量SemaphoreSemaphore 类是一个计数信号量,必须由获取它的线程释放,通常用于限制可以访问某些资源(物理或逻辑的)线程数目。一个信号量有且仅有3种操作,且它们全部是原子的:初始化,增加和减少增加可以为一个线程解除阻塞减少可以为一个线程进入阻塞信号量维护一个许可...转载 2018-08-27 10:33:03 · 163 阅读 · 0 评论 -
【转】Java多线程-CyclicBarrier 栅栏
转载出处:https://blog.csdn.net/yin380697242/article/details/53313622CyclicBarrier 类介绍CyclicBarrier是一个同步工具类,它允许一组线程在到达某个栅栏点(common barrier point)互相等待,发生阻塞,直到最后一个线程到达栅栏点,栅栏才会打开,处于阻塞状态的线程恢复继续执行.它非常适用于一组线...转载 2018-08-27 11:24:25 · 123 阅读 · 0 评论 -
【转】Java多线程-CountDownLatch
转载出处:https://blog.csdn.net/agony_sun/article/details/77504291CountDownLatch 介绍CountDownLatch是一个同步辅助类,犹如倒计时计数器,创建对象时通过构造方法设置初始值。CountDownLatch begin = new CountDownLatch(1);调用CountDownLatch对象的a...转载 2018-08-27 11:42:31 · 144 阅读 · 0 评论 -
【转】Java多线程学习(吐血超详细总结)
本文主要讲了java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的一些线程函数用法、概述等。转载 2017-04-13 16:12:30 · 518 阅读 · 0 评论