Java
wjsay
白色的蜻蜓,在空中忘记了飞行。
我的 github ID: zzuwenjie
展开
-
Mapreduce运行异常分析
hadoop jar…运行异常,终端日志如下 Job job_1609054990280_0001 failed with state FAILED due to: Application application_1609054990280_0001 failed 2 times due to AM Container for appattempt_1609054990280_0001_000002 exited with exitCode: 1Failing this attempt.Diagnos原创 2020-12-27 16:40:02 · 1051 阅读 · 0 评论 -
找不到或无法加载主类
版本JDK14操作系统 Windows10错误提示:找不到或无法加载主类解决方法:删除配置的CLASSPATH环境变量CSDN用户只写一篇博文,往往这篇文章很实用转载 2020-07-23 10:48:29 · 223 阅读 · 0 评论 -
异步I/O模型与Java
异步IO模型原理图:Java1.7中在NIO包中增加了Asynchronous I/O操作。异步I/O类使用教程中讲解得很好。如何使用Asychronous I/O类JUC包中FatureFature#isDone polling模式。轮训检查Fature#get wait模式。等待I/O操作完毕,也就是阻塞NIO包中CompletionHandle...原创 2020-04-05 17:38:01 · 278 阅读 · 0 评论 -
信号驱动I/O模型——Java实现
I/O模型有阻塞I/O模型、非阻塞I/O模型、多路复用I/O模型、信号驱动I/O模型、异步I/O模型。这次我将使用Java实现信号驱动I/O模型。下图是原理图写之前我在网上搜了很久,才发现一篇C/C++语言实现的信号驱动I/O模型。后来发现Java提供的信号机制在sun.misc包下,属于非标准包。其中Signal类可以创建哪些信号和操作系统有关。Signal.handle()方法用户注册...原创 2020-04-05 12:55:18 · 1062 阅读 · 0 评论 -
基于Java NIO Selector的多路复用IO模型(同步非阻塞)及IO不可中断等待状态线程的改写
上篇基于Java Socket实现同步非阻塞通信中展示了非阻塞的聊天示例,ServerSocket#accept接收连接后,会创建一个不断轮训是否有读写数据的线程。不断轮训是很消耗CPU资源的,本篇基于Java NIO Selector的多路复用IO模型,将解决这一问题。方法:Selector可监听Channel的OP_ACCEPT、OP_CONNECT、OP_READ、OP_WRITE状态,...原创 2020-04-04 12:13:45 · 371 阅读 · 0 评论 -
基于Java Socket实现同步非阻塞通信
来自初学者的分享示例内容:基于JavaSocket实现的客户端与服务器非阻塞发送接收消息。代码包含三个类,Client, Server都比较简单,ChatThread implements Runnable类实现了接收与发送消息。思路:从Socket中获取的InputStream是阻塞的,可以用DataInputStream对inputStream进行封装,然后用非阻塞的DataInpu...原创 2020-04-02 10:22:32 · 1785 阅读 · 0 评论 -
Java版本特性 + NIO
笔记:大致记录一下Java8-14版本特性,以及NIO中的类和方法。帮助梳理回忆串知识点Java新特性总结 Java7 - 2011.7.28 switch中使用String。 try-with-resources。try(InputStream stream = ...) 捕获多个异常。catch(IOException | NullPoin...原创 2020-03-18 19:51:47 · 249 阅读 · 0 评论 -
java分割PDF文件——itextpdf
动机:使用Java将PDF论文分割成一个个4页大小的PDF,便于使用有道翻译免费翻译PDF文档(因为每次只免费翻译4页,使用了不少翻译软件,还是有道翻译好用,翻译质量好,就是收费);顺便练习下写代码。使用的idea平台,导出了可执行的jar包。import com.itextpdf.text.Document;import com.itextpdf.text.DocumentExcepti...原创 2019-11-21 11:26:30 · 1058 阅读 · 0 评论 -
Eclipse连接mysql数据库
1、需要一个额外的包mysql-connector-java-5.1.42-bin.jar(这是目前最新的包,当然也可以去官网下)。2、右键工程导入引用的库文件 mysql-connetcor-java-**.jar;3、写代码import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Result原创 2017-06-25 13:26:52 · 738 阅读 · 1 评论 -
Java8接口变化-静态方法&默认方法
Java8 接口改变-静态方法&&默认方法java8接口改变包括接口中的静态方法和默认方法。早于jdk1.8的java版本,在接口中我们只能声明方法。 但是,在java第8个版本,在接口中,我们可以有默认方法和静态方法。java8接口设计接口一直是一个艰难的工作,因为如果我们想要改变接口中的一个方法,这将改变所有实现了该方法的类。随着接口存在的时间越来越长,实现了这个接翻译 2017-08-25 10:49:40 · 729 阅读 · 0 评论 -
钻石问题 diamond problem 多继承问题
在C++中,什么叫做钻石问题(也可以叫菱形继承问题),怎么避免它?下面的图表可以用来解释钻石问题。假设我们有类B和类C,它们都继承了相同的类A。另外我们还有类D,类D通过多重继承机制继承了类B和类C。因为上述图表的形状类似于钻石(或者菱形),因此这个问题被形象地称为钻石问题(菱形继承问题)转载 2017-08-24 22:32:04 · 2084 阅读 · 0 评论 -
String类
前言:字符串 (String) 是 java 编程语言中的核心类之一,在我们平常时候使用也比较很普遍,应用广泛。但你是否知道什么是字符串直接量,知不知道有个字符串驻留池,字符串的驻留池可以用来缓存字符串直接量。什么是直接量?直接量是指:在程序中,通过源代码直接指定的值。eg:int personId = 8080 ;String name = "fancy" ;转载 2017-03-22 21:56:23 · 237 阅读 · 0 评论 -
Java多线程
从单条指令级上分析Java多线程对数据操作为何出错(源代码源自雍俊海的Java教程。////////////////////////////////////////////////////////// // J_ThreadSum.java// // 开发者: 雍俊海// ////////////////////////////////////////////////////////原创 2017-05-11 12:58:47 · 291 阅读 · 0 评论 -
java与C/C++的不同之处之一(小发现)
java与C/C++的不同之处之一写java程序是出现了错误,调了一会发现了C与java在计算上的一点不同之处在执行 a ^= b ^= a ^= b;语句时,C的结果是交换这两个int变量的值,java则不是。在执行 a ^= b; b ^= a; a ^= b; 时,二者结果又一样了,待到考完试,再细看一下。(这两种语言的等号运算序都是从右至左呀)以下是提炼出来的测原创 2017-06-16 16:55:03 · 588 阅读 · 0 评论 -
java单体程序设计
概念: Java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例、饿汉式单例、登记式单例。 单例模式有以下特点: 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、转载 2017-06-17 09:48:27 · 1568 阅读 · 0 评论 -
jar 打包详解
题外话:windows下新建一.bat文件,里面输入 cmd.exe %CD% 双击即可在当前目录current direction打开命令行。本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作用。具体如下:JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。当然也是有区别的,JAR包中有一个META-INF\MANIFEST.转载 2017-06-17 23:07:10 · 449 阅读 · 0 评论 -
String 和 封装类 的传值方法
其实吧,String 和 封装类 还是引用传值,只是没有修改value的setter方法。直接输出他们的对象,输出的是其值。有点迷惑人。原创 2017-06-30 23:25:54 · 405 阅读 · 0 评论 -
try-catch-finally语句块之揭开finally的神秘面纱
3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,管finally中的代码怎么样,返回的值都不会改变,任然是之前保存的值),所以函数返回值是在finally执行前确定的;原创 2017-07-03 07:20:10 · 524 阅读 · 0 评论 -
玲珑杯-base64加密
玲珑杯-base64加密import java.util.Base64;import java.io.BufferedInputStream;import java.nio.charset.StandardCharsets;import java.util.Scanner;public class Main { public static void main(String[]原创 2017-04-17 18:01:44 · 461 阅读 · 0 评论 -
Class.forName()用法解释
主要功能Class.forName(xxx.xx.xx)返回的是一个类Class.forName(xxx.xx.xx)的作用是要求JVM查找并加载指定的类,也就是说JVM会执行该类的静态代码段下面,通过解答以下三个问题的来详细讲解下Class.forName()的用法。一.什么时候用Class.forName()?先来个热身,给你一个字符串变量,它代表一个类的包名和类名,你怎么实转载 2017-04-24 17:55:02 · 290 阅读 · 1 评论 -
java考前一天
根据我们的复习资料写的单体程序设计匿名内部类多线程图形操作数据可TCP原创 2017-07-04 21:15:35 · 283 阅读 · 0 评论 -
java格式化字符串String
当要求输入一个合法字符串或者说一定格式的字符串时,就可以用java的解析方法。比如想要一个[1, 1000]的正整数: public static Integer mygetInt(String s) { try { Integer num = Integer.parseInt(s); return (num 1000) ? -1 : num; } catch (Nu原创 2017-03-28 14:32:38 · 306 阅读 · 0 评论