java
文章平均质量分 53
煎饼皮皮侠
这个作者很懒,什么都没留下…
展开
-
设置用户访问hdfs
如果hadoop没有启Kerberos或者从Kerberos获取的用户为null,那么获取HADOOP_USER_NAME环境变量,并将它的值作为Hadoop执行用户。如果我们没有设置HADOOP_USER_NAME环境变量,那么程序将调用whoami来获取当前用户,并用groups来获取用户所在组。但是,实验后,发现好像要以上2个都加上,才有效。原创 2024-06-30 22:55:35 · 278 阅读 · 0 评论 -
Java操作hdfs,总是报ClosedChannelException
会报 java.nio.channels.ClosedChannelException: null at org.apache.hadoop.hdfs.ExceptionLastSeen.throwException4Close。logger.info(“文件名称: {} 耗时: {}”, dst, end - start);logger.error("文件:{}, 上传错误!// 关闭FileSystem对象。// 创建Hadoop配置对象。// 上传文件到HDFS。原创 2024-04-03 16:56:54 · 377 阅读 · 0 评论 -
玩碎Java之new Thread与completableFuture竟然结果不一样
大家想想以上2段代码的输出都是什么呢?是一样的么?结果,ccccccddd科学吗?不应该一样吗?原创 2023-06-30 15:44:44 · 155 阅读 · 1 评论 -
好玩Java之自定义类加载器
可以通过以下方式,进行自定义类加载器的使用。这样会破坏双亲委派,优先自己加载。原创 2023-02-27 20:43:13 · 168 阅读 · 0 评论 -
玩碎Java之零拷贝
零拷贝的“零”是指用户态和内核态间copy数据的次数为零,即Zero CPU Copy。零拷贝可以提高数据传输效率,但对于需要在用户传输过程中对数据进行加工的场景(如加密)就不适合使用零拷贝。传统拷贝与零拷贝的区别,见下图。原创 2022-12-31 21:53:17 · 413 阅读 · 0 评论 -
Scalable IO in Java 学习笔记
" Scalable network services" Event-driven processing" Reactor patternBasic versionMultithreaded versionsOther variants" Walkthrough of java.nio nonblocking IO APIs原创 2022-08-31 22:27:28 · 214 阅读 · 0 评论 -
玩碎Java之ReentrantLock中的lock/lockInterruptibly方法
ReentrantLock中的lock与lockInterruptibly原创 2022-07-31 17:47:07 · 280 阅读 · 0 评论 -
玩碎Java之ThreadLocal的原理
ThreadLocal,我们依然从一个例子看起。debug模式下,我们看下thread里ThreadLocalMap里的情况,如下图。①因为存在强引用,所以对应的referent不为null。②没有强引用,垃圾回收后,referent为null。③ThreadLocal仅在test1()方法中有效,所以垃圾回收后,referent为null。set(T value)设置线程本地变量的内容。get()获取线程本地变量的value值initialValue()设置 ThreadLoca原创 2022-06-26 17:55:16 · 307 阅读 · 0 评论 -
Java静态分派与动态分派
Java静态分派与动态分派原创 2022-05-27 09:22:14 · 275 阅读 · 0 评论 -
玩碎Java之ThreadPoolExecutor的整体实现及线程回收
线程池中线程的销毁依赖JVM自动的回收,移除线程池对该线程的引用,使其可以被JVM正常地回收。原创 2022-04-29 09:00:00 · 1423 阅读 · 0 评论 -
玩碎JAVA之volatile与Memory Barriers
大师们的原文,确实比其他文章讲的透彻的很多!JSR-133原文JSR-133 FAQThe JSR-133 Cookbook for Compiler Writersvolatile修饰的字段,适用于一个线程写,多个线程读的情况,不适用于多个线程写的情况,不然也会有安全性的问题。volatile有2层语义:可见性;禁止指令重排;What does volatile do?Volatile fields are special fields which are used for co原创 2022-02-08 20:00:00 · 623 阅读 · 0 评论 -
玩碎Java之JAVA SPI
JDK SPI最近了解到Dubbo / SpringBoot / Nacos / JDBC都使用到了SPI机制,各位大咖都用了,必须好好看一看。SPI(Service Provider Interface)是JDK内置的一种提供服务发现的机制。在java中根据一个子类获取其父类或接口信息非常方便,但是根据一个接口获取该接口的所有实现类却没那么容易。SPI便是解决接口获取实现类的很好的解决方案,我们定义一个接口,第三方服务提供者可以实现我们的接口,并根据SPI约定在 META-INF/service原创 2021-11-03 21:00:38 · 137 阅读 · 0 评论 -
Scalable IO in Java
原文地址:http://gee.cs.oswego.edu/dl/cpjslides/nio.pdf大神之作原文,值得好好拜读。原创 2021-11-24 11:00:26 · 510 阅读 · 0 评论 -
玩碎Java之CountDownLatch / Semaphore / CyclicBarrier
CountDownLatch(倒计数器) - 人去楼空:人都走没了,才能锁门作用:一个线程(或者多个), 等待另外N个线程完成某个事情之后才能执行。实例:学生放学了,老师等所有学生都离开后,最后离开并锁门(走一个减1,直到走完为0)(图片来自互联网,如有侵权,请联系删除)Semaphore(信号量,限流) - 食堂打饭:只有3个窗口可以同时打饭作用:Semaphore用于限制可以访问某些资源(物理或逻辑的)的线程数目,他维护了一个许可证集合,有多少资源需要限制就维护多少许可证集合,假原创 2020-05-21 17:34:29 · 210 阅读 · 0 评论 -
玩碎Java之synchronized同步锁作用范围的对比
假设ClassA类中有非静态方法methodA/methodB,现有ClassA的实例cla,线程t1/t2对象锁 对象锁 加在非静态方法,或对象实例上 结论 2个线程同时访问, cla的synchronized methodA方法 或 cla的methodA方法中的synchronized 代码块 2个线程顺序访问,一个线程执行完,另一个线程才能执行 当线程 t1 调用某对象的synchroniz...原创 2020-05-20 14:01:40 · 290 阅读 · 0 评论 -
java 拼接字符串时,去掉最后一个多余的逗号
for (int t = 0; t memTemp = stafferMap.get(strMember[t]); if(memTemp != null){ memberNames += memTemp + ","; } }以上的代码,拼接的字符串会多一个“,”,比如:"str1,str2,str3,",要去除str3后原创 2012-04-10 15:35:00 · 99326 阅读 · 6 评论 -
Eclipse中的SVN无法比较差异
Eclipse中SVN无法比较差异,在“小组同步”中,只要一打开本机与服务器端代码的比较,svn便自动将服务器端的代码更新到本机,提示未保存。原因:Eclipse中的SVN版本与Eclipse版本不一致造成的。svn - http://subclipse.tigris.org/update_1.8.x/原创 2012-06-14 15:24:49 · 4999 阅读 · 0 评论 -
值得收藏的学习网址
收集多年的开发资料和开发工具(http://zz563143188.iteye.com/blog/1846708) servlet 判断用户是否登陆,如果没登陆则跳到页面 http://blog.csdn.net/loverd1/article/details/7378210 http://lpcjrflsa.iteye.com/blog/299488原创 2013-05-31 23:38:18 · 776 阅读 · 0 评论 -
java中怎么取两个数组中不相同的数据
public static List compare(T[] t1, T[] t2) { List list1 = Arrays.asList(t1); List list2 = new ArrayList(); for (T t : t2) { if (!list1.contains(t)) { list2.add(t); } } return list转载 2013-10-23 09:59:51 · 10195 阅读 · 0 评论 -
eclipse打jar包,jar包运行
eclipse打jar包:项目右键 >> Export原创 2014-05-14 18:04:52 · 764 阅读 · 0 评论 -
Java删除/清除/过滤标点(所有中英文标点)的正则表达式
转自:http://blog.csdn.net/harryhuang1990/article/details/11888293在进行文本分析的时候我们经常需要过滤掉停用词,标点等,本文给大家介绍一下如何识别并删除文本中的所有标点符号。下面是三个可行的正则表达式方案,童鞋们来试试吧^_^[java] view plain copy(1) s.repla转载 2016-08-22 14:00:22 · 28152 阅读 · 2 评论 -
java读取文件中的每一行
转自:http://blog.chinaunix.NET/uid-20804770-id-3048513.htmlimport java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.FileInputStream;import java.io.FileNotFoundException;import转载 2017-06-21 11:08:06 · 22115 阅读 · 0 评论 -
Java性能调优工具(Linux)
转自:http://www.cnblogs.com/quanenmin/p/5050435.html转载 2017-09-09 10:36:05 · 1076 阅读 · 0 评论 -
玩碎JAVA之Java 多线程顺序打印ABC
之前看了个题目,利用多线程顺序打印10次ABC,方法有多种,以下也是一种思路。不过,这样写,循环多少次,就需要创建多少个线程,性能不是很好package com.thread.chapter1;public class PrintABC { Object lock = new Object(); boolean isA = true, // 第一次要先打印A,所以默认...原创 2019-07-28 21:27:59 · 798 阅读 · 0 评论 -
好玩Spring之AutowireCapableBeanFactory
AutowireCapableBeanFactory作为BeanFactory的四大孩子之一,主要职责是负责自动装配相关的事宜。通常来说,如果一个类不在spring容器中(即没有在spring的xml中配置该bean),那么我们就无法通过ApplicationContext来获取。那怎么才能让该类也集成到spring中去呢?AutowireCapableBeanFactory为我们提...原创 2019-08-10 16:13:00 · 424 阅读 · 0 评论 -
好玩Spring之Bean的生命周期(基于5.1.0ba)
下图为Spring 3.x的bean生命周期图(图来自《Spring 3.x企业应用开发实战》)结合上图,研究了下基于5.1.0版本的bean的生命周期。其中生命周期的绝大部分阶段(step3 - step12(bean的终结))都集中在了AbstractAutowireCapableBeanFactory类doCreateBean方法中,具体如下:/** * Actually...原创 2019-08-11 21:55:20 · 137 阅读 · 0 评论 -
好玩Spring之BeanPostProcessor及InstantiationAwareBeanPostProcessor接口
在之前我们看bean的生命周期时,有如下过程。在实例化前后,有InstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation和InstantiationAwareBeanPostProcessor.postProcessAfterInstantiation两个动作。InstantiationAwareBeanPos...原创 2019-08-17 18:03:26 · 449 阅读 · 0 评论 -
java oracle 插入当前时间
<br />我在做一个inser操作的时候 <br />要获取当前时间 存入数据库 <br />就直接 ps.setDate(new java.util.Date()); <br />但是会报转换错误 <br /><br />此时应该Java代码 java.util.Date utilDate = new java.util.Date(); <br /> 3. java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime()); <b转载 2011-02-11 16:40:00 · 1438 阅读 · 0 评论